Module:SpecializationsData: Difference between revisions

From Against the Storm Official Wiki
(Created to store a lua table that can be loaded with mw.loadData and be retrieved with a call like `p.specializations[p.buildingSpecializations["Furnace"][1]][p.NAME]`)
 
m (let's try to switch foxes to singular real quick)
Line 22: Line 22:
SpecializationsData.specializations = {
SpecializationsData.specializations = {
     [1] = { "Alchemy", false, true, "Icon_Spec_Alchemy_64x64.png", "Harpy", },
     [1] = { "Alchemy", false, true, "Icon_Spec_Alchemy_64x64.png", "Harpy", },
     [2] = { "Blightrot", true, false, "Icon_Spec_Cysts_64x64.png", "Foxes", },
     [2] = { "Blightrot", true, false, "Icon_Spec_Cysts_64x64.png", "Fox", },
     [3] = { "Brewing", true, false, "Icon_Spec_Brewing_64x64.png", "Human", },
     [3] = { "Brewing", true, false, "Icon_Spec_Brewing_64x64.png", "Human", },
     [4] = { "Engineering", true, false, "Icon_Spec_Gear_64x64.png", "Beaver", },
     [4] = { "Engineering", true, false, "Icon_Spec_Gear_64x64.png", "Beaver", },
     [5] = { "Farming", false, true, "Icon_Spec_Farm_64x64.png", "Human", },
     [5] = { "Farming", false, true, "Icon_Spec_Farm_64x64.png", "Human", },
     [6] = { "Forest", false, true, "Icon_Spec_Forest_64x64.png", "Foxes", },
     [6] = { "Forest", false, true, "Icon_Spec_Forest_64x64.png", "Fox", },
     [7] = { "Meat production", false, true, "Icon_Spec_Meat_64x64.png", "Lizard", },
     [7] = { "Meat production", false, true, "Icon_Spec_Meat_64x64.png", "Lizard", },
     [8] = { "Masonry", false, true, "Icon_Spec_Masonry.png", "Frog", },
     [8] = { "Masonry", false, true, "Icon_Spec_Masonry.png", "Frog", },

Revision as of 16:24, 12 October 2024

Documentation for this module may be created at Module:SpecializationsData/doc

local SpecializationsData = {}

local ALCHEMY = 1
local BLIGHTROT = 2
local BREWING = 3
local ENGINEERING = 4
local FARMING = 5
local FOREST = 6
local MEAT_PRODUCTION = 7
local MASONRY = 8
local RAINWATER = 9
local TAILORING = 10
local WARMTH = 11
local WOODWORKING = 12

SpecializationsData.NAME = 1
SpecializationsData.IS_COMFORTABLE = 2
SpecializationsData.IS_PROFICIENCY = 3
SpecializationsData.ICON_FILENAME = 4
SpecializationsData.SPECIES = 5

SpecializationsData.specializations = {
    [1] = { "Alchemy", false, true, "Icon_Spec_Alchemy_64x64.png", "Harpy", },
    [2] = { "Blightrot", true, false, "Icon_Spec_Cysts_64x64.png", "Fox", },
    [3] = { "Brewing", true, false, "Icon_Spec_Brewing_64x64.png", "Human", },
    [4] = { "Engineering", true, false, "Icon_Spec_Gear_64x64.png", "Beaver", },
    [5] = { "Farming", false, true, "Icon_Spec_Farm_64x64.png", "Human", },
    [6] = { "Forest", false, true, "Icon_Spec_Forest_64x64.png", "Fox", },
    [7] = { "Meat production", false, true, "Icon_Spec_Meat_64x64.png", "Lizard", },
    [8] = { "Masonry", false, true, "Icon_Spec_Masonry.png", "Frog", },
    [9] = { "Rainwater", true, false, "Icon_Spec_RainWater_64x64.png", "Frog", },
    [10] = { "Tailoring", true, false, "Icon_Spec_Cloth_64x64.png", "Harpy", },
    [11] = { "Warmth", true, false, "Icon_Spec_Fire_64x64.png", "Lizard", },
    [12] = { "Woodworking", false, true, "Icon_Spec_Wood_64x64.png", "Beaver", },
}

SpecializationsData.buildingSpecializations = {
    -- Workshops.csv
    ["Crude Workstation"]     = { BLIGHTROT, },
    ["Workshop"]              = { BLIGHTROT, },
    ["Supplier"]              = { TAILORING, BLIGHTROT, },
    ["Manufactory"]           = { TAILORING, BLIGHTROT, },
    ["Artisan"]               = { TAILORING, BLIGHTROT, },
    ["Flawless Cellar"]       = { BREWING, BLIGHTROT, },
    ["Clothier"]              = { TAILORING, BLIGHTROT, },
    ["Brewery"]               = { BREWING, BLIGHTROT, },
    ["Weaver"]                = { TAILORING, BLIGHTROT, },
    ["Flawless Brewery"]      = { BREWING, BLIGHTROT, },
    ["Lumbermill"]            = { WOODWORKING, BLIGHTROT, },
    ["Smithy"]                = { ENGINEERING, WARMTH, BLIGHTROT, },
    ["Tinctury"]              = { BREWING, TAILORING, BLIGHTROT, },
    ["Cookhouse"]             = { WARMTH, BLIGHTROT, },
    ["Grill"]                 = { MEAT_PRODUCTION, WARMTH, BLIGHTROT, },
    ["Field Kitchen"]         = { BLIGHTROT, },
    ["Alchemist Hut"]         = { ALCHEMY, BREWING, BLIGHTROT, },
    ["Rain Mill"]             = { ENGINEERING, FARMING, BLIGHTROT, },
    ["Flawless Smelter"]      = { WARMTH, BLIGHTROT, },
    ["Kiln"]                  = { WARMTH, MASONRY, BLIGHTROT, },
    ["Apothecary"]            = { ALCHEMY, RAINWATER, BLIGHTROT, },
    ["Provisioner"]           = { BLIGHTROT, },
    ["Stamping Mill"]         = { ENGINEERING, MASONRY, BLIGHTROT, },
    ["Flawless Druid"]        = { ALCHEMY, BLIGHTROT, },
    ["Smokehouse"]            = { WARMTH, MEAT_PRODUCTION, BLIGHTROT, },
    ["Tinkerer"]              = { ENGINEERING, BLIGHTROT, },
    ["Smelter"]               = { WARMTH, BLIGHTROT, },
    ["Beanery"]               = { WARMTH, RAINWATER, BLIGHTROT, },
    ["Distillery"]            = { BREWING, RAINWATER, BLIGHTROT, },
    ["Scribe"]                = { BREWING, BLIGHTROT, },
    ["Ranch"]                 = { MEAT_PRODUCTION, BLIGHTROT, },
    ["Toolshop"]              = { ENGINEERING, BLIGHTROT, },
    ["Granary"]               = { FARMING, BLIGHTROT, },
    ["Leatherworks"]          = { TAILORING, MEAT_PRODUCTION, BLIGHTROT, },
    ["Pantry"]                = { FARMING, BLIGHTROT, },
    ["Press"]                 = { ENGINEERING, BLIGHTROT, },
    ["Cobbler"]               = { TAILORING, BLIGHTROT, },
    ["Makeshift Post"]        = { BLIGHTROT, },
    ["Tea House"]             = { ALCHEMY, RAINWATER, BLIGHTROT, },
    ["Cooperage"]             = { WOODWORKING, BLIGHTROT, },
    ["Furnace"]               = { WARMTH, BLIGHTROT, },
    ["Greenhouse Workshop"]   = { FARMING, BLIGHTROT, },
    ["Carpenter"]             = { WOODWORKING, BLIGHTROT, },
    ["Brick Oven"]            = { WARMTH, BLIGHTROT, },
    ["Butcher"]               = { MEAT_PRODUCTION, BLIGHTROT, },
    ["Rainpunk Foundry"]      = { ENGINEERING, RAINWATER, BLIGHTROT, },
    ["Finesmith"]             = { ENGINEERING, BLIGHTROT, },
    ["Flawless Rain Mill"]    = { ENGINEERING, FARMING, BLIGHTROT, },
    ["Flawless Cooperage"]    = { WOODWORKING, BLIGHTROT, },
    ["Cannery"]               = { BLIGHTROT, },
    ["Brickyard"]             = { MASONRY, BLIGHTROT, },
    ["Bakery"]                = { WARMTH, BLIGHTROT, },
    ["Cellar"]                = { BREWING, BLIGHTROT, },
    ["Flawless Leatherworks"] = { TAILORING, MEAT_PRODUCTION, BLIGHTROT, },
    ["Clay Pit Workshop"]     = { MASONRY, BLIGHTROT, },
    ["Druid"]                 = { ALCHEMY, BLIGHTROT, },
    -- Storages.csv
    ["Main Storage (not-buildable)"] = { BLIGHTROT, },
    ["Storage (buildable)"]          = { BLIGHTROT, },
    -- Camps.csv
    ["Woodcutters Camp"]           = { WOODWORKING, },
    -- Gathering Huts.csv
    ["Forager's Camp"]             = { FARMING, },
    ["Harvester Camp"]             = { },
    ["Herbalist's Camp"]           = { ALCHEMY, },
    ["Primitive Forager's Camp"]   = { FARMING, },
    ["Primitive Herbalist's Camp"] = { ALCHEMY, },
    ["Primitive Trapper's Camp"]   = { MEAT_PRODUCTION, },
    ["Stonecutter's Camp"]         = { MASONRY, },
    ["Trapper's Camp"]             = { MEAT_PRODUCTION, },
    -- Farms.csv
    ["Grove"]                = { WOODWORKING, },
    ["Hallowed Herb Garden"] = { FARMING, },
    ["Hallowed SmallFarm"]   = { FARMING, },
    ["Herb Garden"]          = { FARMING, },
    ["Homestead"]            = { FARMING, },
    ["Plantation"]           = { FARMING, },
    ["SmallFarm"]            = { FARMING, },
    ["Fishing Hut"]           = { },
    ["Primitive Fishing Hut"] = { },
    -- Hearths.csv
    ["Small Hearth"]                 = { WARMTH, },
    ["Temporary Hearth (buildable)"] = { WARMTH, },
    -- Institutions.csv
    ["Bath House"]       = { RAINWATER, BLIGHTROT, },
    ["Clan Hall"]        = { WARMTH, BLIGHTROT, },
    ["Explorers Lodge"]  = { BLIGHTROT, },
    ["Forum"]            = { BLIGHTROT, },
    ["Guild House"]      = { BLIGHTROT, },
    ["Holy Guild House"] = { BLIGHTROT, },
    ["Holy Market"]      = { BLIGHTROT, },
    ["Holy Temple"]      = { WARMTH, BLIGHTROT, },
    ["Market"]           = { BLIGHTROT, },
    ["Monastery"]        = { WARMTH, BREWING, BLIGHTROT, },
    ["Tavern"]           = { BREWING, BLIGHTROT, },
    ["Tea Doctor"]       = { BLIGHTROT, },
    ["Temple"]           = { WARMTH, BLIGHTROT, },
}

return SpecializationsData