62 | function SplitTypeManager:addSplitType(name, l10nKey, splitTypeIndex, pricePerLiter, woodChipsPerLiter, allowsWoodHarvester, customEnvironment) |
63 | if self.typesByIndex[splitTypeIndex] ~= nil then |
64 | Logging.error("SplitTypeManager:addSplitType(): SplitTypeIndex '%d' is already in use for '%s'", splitTypeIndex, name) |
65 | return |
66 | end |
67 | |
68 | name = name:upper() |
69 | if self.typesByName[name] ~= nil then |
70 | Logging.error("SplitTypeManager:addSplitType(): SplitType name '%s' is already in use", name) |
71 | return |
72 | end |
73 | |
74 | local desc = {} |
75 | desc.name = name |
76 | desc.title = g_i18n:getText(l10nKey, customEnvironment) |
77 | desc.splitTypeIndex = splitTypeIndex |
78 | desc.pricePerLiter = pricePerLiter |
79 | desc.woodChipsPerLiter = woodChipsPerLiter |
80 | desc.allowsWoodHarvester = allowsWoodHarvester |
81 | |
82 | self.typesByIndex[splitTypeIndex] = desc |
83 | self.typesByName[name] = desc |
84 | end |
34 | function SplitTypeManager:loadMapData() |
35 | SplitTypeManager:superClass().loadMapData(self) |
36 | |
37 | self:addSplitType("SPRUCE", "treeType_spruce", 1, 0.7, 3.0, true, nil) -- density 0.47 |
38 | self:addSplitType("PINE", "treeType_pine", 2, 0.7, 3.0, true, nil) -- density 0.52 |
39 | self:addSplitType("LARCH", "treeType_larch", 3, 0.7, 3.0, true, nil) -- density 0.59 |
40 | self:addSplitType("BIRCH", "treeType_birch", 4, 0.85, 3.2, false, nil) -- density 0.65 |
41 | self:addSplitType("BEECH", "treeType_beech", 5, 0.9, 3.4, false, nil) -- density 0.69 |
42 | self:addSplitType("MAPLE", "treeType_maple", 6, 0.9, 3.4, false, nil) -- density 0.65 |
43 | self:addSplitType("OAK", "treeType_oak", 7, 0.9, 3.4, false, nil) -- density 0.67 |
44 | self:addSplitType("ASH", "treeType_ash", 8, 0.9, 3.4, false, nil) -- density 0.69 |
45 | self:addSplitType("LOCUST", "treeType_locust", 9, 1.0, 3.8, false, nil) -- density 0.73 |
46 | self:addSplitType("MAHOGANY", "treeType_mahogany", 10, 1.1, 3.0, false, nil) -- density 0.80 |
47 | self:addSplitType("POPLAR", "treeType_poplar", 11, 0.7, 7.5, false, nil) -- density 0.48 |
48 | self:addSplitType("AMERICANELM", "treeType_americanElm", 12, 0.7, 3.5, false, nil) -- density 0.57 -- TODO: tweak price + woodchips |
49 | self:addSplitType("CYPRESS", "treeType_cypress", 13, 0.7, 3.5, false, nil) -- density 0.51 -- TODO: tweak price + woodchips |
50 | self:addSplitType("DOWNYSERVICEBERRY", "treeType_downyServiceberry", 14, 0.7, 3.5, false, nil) -- density 0.63 -- TODO: tweak price + woodchips |
51 | self:addSplitType("PAGODADOGWOOD", "treeType_pagodaDogwood", 15, 0.7, 3.5, false, nil) -- density 0.76 -- TODO: tweak price + woodchips |
52 | self:addSplitType("SHAGBARKHICKORY", "treeType_shagbarkHickory", 16, 0.7, 3.5, false, nil) -- density 0.75 -- TODO: tweak price + woodchips |
53 | self:addSplitType("STONEPINE", "treeType_stonePine", 17, 0.7, 3.5, false, nil) -- density 0.51 -- TODO: tweak price + woodchips |
54 | self:addSplitType("WILLOW", "treeType_willow", 18, 0.7, 3.5, false, nil) -- density 0.50 -- TODO: tweak price + woodchips |
55 | self:addSplitType("OLIVETREE", "treeType_oliveTree", 19, 0.6, 3.5, false, nil) -- density 0.45 -- TODO: tweak price + woodchips |
56 | |
57 | return true |
58 | end |