forestry/forestry_bees/mutations.lua

54 lines
2.2 KiB
Lua
Raw Normal View History

2024-10-07 19:52:09 +02:00
forestry_bees.bee_mutations = {}
local function register_mutation(bee_type_in1,bee_type_in2,bee_type_out,chance)
--bee_type_in are string of the gene ex. "forest" or "meadows"
--bee_type_out is a string of the gene
--chance is the base probability of the mutation
--the function appends in the table at position "bee_type_in1","bee_type_in2"
--of the matrix forestry_bees.mutations "bee_type_out"=chance
--and does so simmetrically
--populate table if nil
if forestry_bees.bee_mutations[bee_type_in1] == nil or not next(forestry_bees.bee_mutations[bee_type_in1]) then
forestry_bees.bee_mutations[bee_type_in1] = {}
end
if forestry_bees.bee_mutations[bee_type_in2] == nil or not next(forestry_bees.bee_mutations[bee_type_in2]) then
forestry_bees.bee_mutations[bee_type_in2] = {}
end
if forestry_bees.bee_mutations[bee_type_in1][bee_type_in2] == nil or not next(forestry_bees.bee_mutations[bee_type_in1][bee_type_in2]) then
forestry_bees.bee_mutations[bee_type_in1][bee_type_in2] = {}
end
if forestry_bees.bee_mutations[bee_type_in2][bee_type_in1] == nil or not next(forestry_bees.bee_mutations[bee_type_in2][bee_type_in1]) then
forestry_bees.bee_mutations[bee_type_in2][bee_type_in1] = {}
end
forestry_bees.bee_mutations[bee_type_in1][bee_type_in2][bee_type_out] = chance
forestry_bees.bee_mutations[bee_type_in2][bee_type_in1][bee_type_out] = chance
end
2024-10-10 16:18:11 +02:00
--common branch
register_mutation("forest","meadows","common",0.15)
2024-10-07 19:52:09 +02:00
register_mutation("forest","common","cultivated",0.12)
2024-10-10 16:18:11 +02:00
register_mutation("meadows","common","cultivated",0.12)
--noble branch
2024-10-07 19:52:09 +02:00
register_mutation("common","cultivated","noble",0.10)
2024-10-10 16:18:11 +02:00
register_mutation("noble","cultivated","majestic",0.08)
register_mutation("noble","majestic","imperial",0.08)
--industrious branch
2024-10-07 19:52:09 +02:00
register_mutation("common","cultivated","diligent",0.10)
2024-10-10 16:18:11 +02:00
register_mutation("diligent","cultivated","unweary",0.08)
register_mutation("diligent","unweary","industrious",0.08)
---heroic branch
---infernal branch
--- austere branch
---end branch
---tropical branch
---frozen branch
---festive branch
--agrarian branch
register_mutation("diligent","meadows","rural",0.12) --ATTENTION WE SHOULD RESTRICT THIS TO THE PLAINS BIOME
2024-10-07 19:52:09 +02:00
--print(forestry_bees.mutations["meadows"]["forest"]["common"])