depend to basic_function

master
ademant 2018-11-29 15:06:38 +01:00
parent 4a4b4e6c53
commit e3302d3f5e
9 changed files with 64 additions and 42 deletions

View File

@ -249,7 +249,7 @@ farming.timer_step = function(pos, elapsed)
local lightamount=meta:get_int("farming:lightamount")
if lightamount ~= nil then
local ls = farming.light_stat[def.light_min]
local ls = farming.light_stat[tostring(def.light_min)]
if ls.amount ~= nil and lightamount > 0 then
-- time till next step is stretched. Less light means longer growing time
wait_factor = ls.amount / lightamount
@ -439,7 +439,7 @@ farming.timer_wilt = function(pos, elapsed)
-- get soil nodes with air above
for j=1,#neighb do
local jpos=neighb[j]
if farming.has_value({"air","default:grass_1","default:grass_2","default:grass_3","default:grass_4","default:grass_5"},minetest.get_node({x=jpos.x,y=jpos.y+1,z=jpos.z}).name) then
if basic_functions.has_value({"air","default:grass_1","default:grass_2","default:grass_3","default:grass_4","default:grass_5"},minetest.get_node({x=jpos.x,y=jpos.y+1,z=jpos.z}).name) then
table.insert(freen,1,jpos)
end
end

View File

@ -52,6 +52,11 @@ farming.spreading_crops = {}
-- register for crops
farming.registered_plants = {}
-- temp list for grass drop
farming.grass_drop={max_items=1,items = {items={"default:grass_1"}}}
farming.junglegrass_drop={max_items=1,items = {items={"default:junglegrass"}}}
-- reading light statistics. needed for calculation of grow time
farming.light_stat = farming.import_csv(farming.path.."/light_stat.txt",{
farming.light_stat = basic_functions.import_csv(farming.path.."/light_stat.txt",{
col_num={"day_start","amount","name"}})
print(dump2(farming.light_stat))

View File

@ -65,7 +65,7 @@ local drink_or_eat = function(hp_change,replace_with_item,itemstack,user,pointed
end
end
if farming.has_value(modlist,"vessels") and farming.has_value(modlist,"bucket") then
if basic_functions.has_value(modlist,"vessels") and basic_functions.has_value(modlist,"bucket") then
minetest.register_craftitem(modname..":nettle_water",{
description = "Nettle Water",
inventory_image = "farming_tool_glass_nettle.png",
@ -138,7 +138,7 @@ else
print("Mod vessels/bucket not available. Seriously? -> no COFFEE!")
end
if farming.has_value(modlist,"wool") then
if basic_functions.has_value(modlist,"wool") then
minetest.register_craft({
output="wool:white",
type="shapeless",

View File

@ -10,6 +10,8 @@ Actual columns:
next_plant text For wild crop the name of the cultured crop. By change you get the seed or harvest of the cultured one
Should be a name of another crop in this list
Rarety How often the crop spawn in the wild
Rarety_grass_drop Change to get crop as drop item when digging grass
Rarety_junglegrass_drop Change to get crop as drop item when digging jungle grass
Steps Amount of steps the growing needs till full grown plant. Must be set
harvest_max Max. amount of harvest or seed you can dig out of full grown plant
eat_hp eat health point: How many HP you get by eating the seed.
@ -84,16 +86,16 @@ Actual columns:
local S = farming.intllib
farming.path = minetest.get_modpath("farming")
local has_value = farming.has_value
local has_value = basic_functions.has_value
local crop_cols={
col_num={"rarety","steps","harvest_max","eat_hp",
"temperature_min","temperature_max","humidity_min","humidity_max",
"elevation_min","elevation_max","light_min","light_max",
"infect_rate_base","infect_rate_monoculture","spread_rate","grow_time_mean","roast_time","wilt_time"},
"infect_rate_base","infect_rate_monoculture","spread_rate","grow_time_mean","roast_time","wilt_time","rarety_grass_drop"},
groups_num={"to_culture","to_dig","has_harvest","on_soil","punchable","infectable","is_bush",
"seed_extractable","use_flail","use_trellis","snappy","infection_defence","seed_roastable",
"seed_grindable","for_flour","for_coffee","damage_per_second","liquid_viscosity","wiltable"}}
local crop_definition = farming.import_csv(farming.path.."/crops.txt",crop_cols)
local crop_definition = basic_functions.import_csv(farming.path.."/crops.txt",crop_cols)
-- for the default entry is checked, which numeric values are filled
-- this values are copied into void fields of the crops
if crop_definition["default"] ~= nil then
@ -132,3 +134,7 @@ for i,tdef in pairs(crop_definition) do
end
end
end
minetest.override_item("default:grass_5",{drop=farming.grass_drop})
minetest.override_item("default:grass_4",{drop=farming.grass_drop})
minetest.override_item("default:junglegrass",{drop=farming.junglegrass_drop})

View File

@ -1,31 +1,31 @@
name,enabled,next_plant,rarety,steps,harvest_max,eat_hp,to_culture,to_dig,has_harvest,on_soil,is_bush,punchable,wiltable,infectable,infection_defence,seed_extractable,no_seed,use_flail,use_trellis,for_coffee,seed_roastable,seed_grindable,for_flour,snappy,damage_per_second,liquid_viscosity,temperature_min,temperature_max,humidity_min,humidity_max,elevation_min,elevation_max,light_min,light_max,infect_rate_base,infect_rate_monoculture,spread_rate,grow_time_mean,wilt_time,straw,culture_rate,seed_drop,grind,roast
default,1,,10,8,3,1,,,,,,,,,,,,,,,,,,3,,,15,80,10,80,0,200,11,14,10,5,0.0001,60,120,,,,,
barley,1,,10,7,,,,,1,1,,,2,1,,,,1,,1,3,,1,3,,2,25,,30,,,,,,,,,,,farming:straw,,,farming:flour,farming:grain_roasted
beetroot,1,,10,5,,2,,1,,1,,,,,,,,,,,,,,3,,,35,,30,,,,9,,,,,,,,,,,
blackberry,1,,10,4,,,,,,,1,1,1,,,,,,,,,,,3,1,4,,90,20,,,,9,,,,,,,,,,,
blueberry,1,,10,4,,,,,,,1,1,1,,,,,,,,,,,3,,,45,90,40,90,,,9,,,,,,,,,,,
carrot,1,,10,8,,2,,1,,1,,,,,,,,,,,2,,,3,,,,,30,90,,,8,,,,,,,,,,,farming:carrot_gold
chili,1,,20,8,,,,,,,,1,,,,,,,,,,,,3,,,55,90,,,20,1000,,,,,,,,,,,,
coffee,1,,20,5,,,,,,,,1,,,,,,,,1,4,,,3,,,55,120,50,150,20,1000,12,,,,,,,,,,,
corn,1,,10,8,4,2,,,,1,,,2,1,,,,,,,4,1,,3,,2,35,90,30,,,,,,,,,,,,,,,farming:corn_cob
cotton,1,,10,8,,,,,1,1,,,,1,,,,1,,,,,,3,,2,45,90,20,,,,12,,,,,,,,,,,
culturewheat,1,,100,4,4,,1,,1,1,,,2,2,,,,1,,1,3,,1,3,,2,25,,40,,,,10,,,,,,100,farming:straw,,,farming:flour,farming:grain_roasted
flax,,,10,7,,,,,1,1,,,,1,,,,1,,,,,,3,,2,25,,30,,,,,,,,,,,farming:flaw,,,,
garlic,,,10,5,,,,1,,1,,,,,,,,,,,3,,,3,,,,,,,,,,,,,,,,,,,,
grapes,,,10,8,,2,1,,,1,,1,,1,,,,,1,,,,,3,,3,,,,,,,,,,,,,,,,farming:wildgrapes_seed,,
hemp,1,,10,8,,,,,1,,,,,,,,,1,,,,,,3,,2,,120,,,,,8,,,,1E-05,55,,farming:hemp_fibre,,,,
hop,1,,10,7,,,1,,,1,,1,2,2,,,,,1,,4,,,3,,2,55,,,,,50,,,,,,,,,,farming:wildhop_seed,,
mustard,1,,10,5,,,,,,,,,,1,,,,,,,,2,,3,,,,,,,,,,,,,,,,,,,,
potato,1,,10,4,4,2,,,,1,,,2,1,,,,,,,4,1,,3,,2,,,,60,,,,,,,,,,,,,,farming:potato_baked
raspberry,1,,10,4,,,,,,,1,1,1,,,,,,,,,,,3,1,4,,,,,,,9,,,,,,,,,,,
rhubarb,1,,10,3,,2,,1,,1,,,,,,,,,,,,,,3,,,,,,,,,9,,,,,,,,,,,
spelt,1,,10,7,,,,,1,1,,,2,1,,,,1,,,3,,1,3,,2,,,,,,,,,,,,,,farming:straw,,,farming:flour,farming:grain_roasted
strawberry,1,,10,4,,,,,,,1,1,1,,,,,,,,,,,3,,,,,,,,,9,,,,,,,,,,,
sugarbeet,1,,10,5,,2,,1,,1,,,,,,,,,,,,,,3,,,35,,30,,,,9,,,,,,,,,,,
tea,1,,20,8,,,,,,1,,1,,,,1,,,,,4,,,3,,2,30,70,30,70,20,1000,,,,,,,,,,farming:tea_leaves,,farming:tea_black
tobaco,1,,10,8,,,,,,1,,1,,,2,1,,,,,4,,,3,,,,,,,,1000,,,,,,,,,,farming:tobaco_leaves,,
tomato,,,10,8,,,,,1,1,,1,1,1,,,,,1,,,,,3,,,,,,,,,,,,,,,,,,,,
nettle,1,,10,5,,,,,1,,,1,3,,1,,,1,,,2,,,3,1,3,5,150,0,100,,2000,8,,,,0.1,50,,farming:nettle_fibre,,,,
wheat,1,farming:culturewheat,10,8,,,,,1,1,,,2,1,,,,1,,1,3,,1,3,,2,,,30,70,,,,,,,,70,100,farming:straw,10,,farming:flour,farming:grain_roasted
wildoat,1,,10,7,,,,,1,1,,,2,1,,,,1,,1,3,,1,3,,2,,,30,70,,,,,,,,70,100,farming:straw,,,farming:flour,farming:grain_roasted
wildgrapes,,,10,4,,,,,,,,,,,,,1,,,,,,,3,,,,,,,,,,,,,,,,,5,,,
name,enabled,next_plant,rarety,rarety_grass_drop,rarety_junglegrass_drop,steps,harvest_max,eat_hp,to_culture,to_dig,has_harvest,on_soil,is_bush,punchable,wiltable,infectable,infection_defence,seed_extractable,no_seed,use_flail,use_trellis,for_coffee,seed_roastable,seed_grindable,for_flour,snappy,damage_per_second,liquid_viscosity,temperature_min,temperature_max,humidity_min,humidity_max,elevation_min,elevation_max,light_min,light_max,infect_rate_base,infect_rate_monoculture,spread_rate,grow_time_mean,wilt_time,straw,culture_rate,seed_drop,grind,roast
default,1,,10,,,8,3,1,,,,,,,,,,,,,,,,,,3,,,15,80,10,80,-20,200,11,14,10,5,1,60,1200,,,,,
barley,1,,10,15,,7,,,,,1,1,,,2,1,,,,1,,1,3,,1,3,,2,25,,30,,,,,,,,,,,farming:straw,,,farming:flour,farming:grain_roasted
beetroot,1,,10,,,5,,2,,1,,1,,,,,,,,,,,,,,3,,,35,,30,,,,9,,,,,,,,,,,
blackberry,1,,10,,,4,,,,,,,1,1,1,,,,,,,,,,,3,1,4,,90,20,,,,9,,,,,,,,,,,
blueberry,1,,10,,,4,,,,,,,1,1,1,,,,,,,,,,,3,,,45,90,40,90,,,9,,,,,,,,,,,
carrot,1,,10,20,,8,,2,,1,,1,,,,,,,,,,,2,,,3,,,,,30,90,,,8,,,,,,,,,,,farming:carrot_gold
chili,1,,20,,,8,,,,,,,,1,,,,,,,,,,,,3,,,55,90,,,20,1000,,,,,,,,,,,,
coffee,1,,20,,,5,,,,,,,,1,,,,,,,,1,4,,,3,,,55,120,50,150,20,1000,12,,,,,,,,,,,
corn,1,,10,,35,8,4,2,,,,1,,,2,1,,,,,,,4,1,,3,,2,35,90,30,,,,,,,,,,,,,,,farming:corn_cob
cotton,1,,10,10,10,8,,,,,1,1,,,,1,,,,1,,,,,,3,,2,45,90,20,,,,12,,,,,,,,,,,
culturewheat,1,,100,,,4,4,,1,,1,1,,,2,2,,,,1,,1,3,,1,3,,2,25,,40,,,,10,,,,,,100,farming:straw,,,farming:flour,farming:grain_roasted
flax,,,10,,,7,,,,,1,1,,,,1,,,,1,,,,,,3,,2,25,,30,,,,,,,,,,,farming:flaw,,,,
garlic,,,10,,,5,,,,1,,1,,,,,,,,,,,3,,,3,,,,,,,,,,,,,,,,,,,,
grapes,,,10,,,8,,2,1,,,1,,1,,1,,,,,1,,,,,3,,3,,,,,,,,,,,,,,,,farming:wildgrapes_seed,,
hemp,1,,10,,,8,,,,,1,,,,,,,,,1,,,,,,3,,2,,120,,,,,8,,,,1E-05,55,,farming:hemp_fibre,,,,
hop,1,,10,,,7,,,1,,,1,,1,2,2,,,,,1,,4,,,3,,2,55,,,,,50,,,,,,,,,,farming:wildhop_seed,,
mustard,1,,10,,,5,,,,,,,,,,1,,,,,,,,2,,3,,,,,,,,,,,,,,,,,,,,
potato,1,,10,50,,4,4,2,,,,1,,,2,1,,,,,,,4,1,,3,,2,,,,60,,,,,,,,,,,,,,farming:potato_baked
raspberry,1,,10,,,4,,,,,,,1,1,1,,,,,,,,,,,3,1,4,,,,,,,9,,,,,,,,,,,
rhubarb,1,,10,,,3,,2,,1,,1,,,,,,,,,,,,,,3,,,,,,,,,9,,,,,,,,,,,
spelt,1,,10,15,,7,,,,,1,1,,,2,1,,,,1,,,3,,1,3,,2,,,,,,,,,,,,,,farming:straw,,,farming:flour,farming:grain_roasted
strawberry,1,,10,,,4,,,,,,,1,1,1,,,,,,,,,,,3,,,,,,,,,9,,,,,,,,,,,
sugarbeet,1,,10,,,5,,2,,1,,1,,,,,,,,,,,,,,3,,,35,,30,,,,9,,,,,,,,,,,
tea,1,,20,,,8,,,,,,1,,1,,,,1,,,,,4,,,3,,2,30,70,30,70,20,1000,,,,,,,,,,farming:tea_leaves,,farming:tea_black
tobaco,1,,10,,50,8,,,,,,1,,1,,,2,1,,,,,4,,,3,,,,,,,,1000,,,,,,,,,,farming:tobaco_leaves,,
tomato,,,10,,,8,,,,,1,1,,1,1,1,,,,,1,,,,,3,,,,,,,,,,,,,,,,,,,,
nettle,1,,10,,,5,,,,,1,,,1,3,,1,,,1,,,2,,,3,1,3,5,150,0,100,,2000,8,,,,0.1,50,,farming:nettle_fibre,,,,
wheat,1,farming:culturewheat,10,10,,8,,,,,1,1,,,2,1,,,,1,,1,3,,1,3,,2,,,30,70,,,,,,,,70,100,farming:straw,10,,farming:flour,farming:grain_roasted
wildoat,1,,10,,,7,,,,,1,1,,,2,1,,,,1,,1,3,,1,3,,2,,,30,70,,,,,,,,70,100,farming:straw,,,farming:flour,farming:grain_roasted
wildgrapes,,,10,,,4,,,,,,,,,,,,,1,,,,,,,3,,,,,,,,,,,,,,,,,5,,,

View File

@ -13,7 +13,6 @@ minetest.log("action", "[MOD]"..minetest.get_current_modname().." -- start loadi
-- Load files
dofile(farming.path .. "/functions.lua") --few helping functions
dofile(farming.path .. "/config.lua") -- configuration of mod
dofile(farming.path .. "/actions_register.lua") -- several actions defined

View File

@ -3,5 +3,6 @@ title = Farming
author = ademant
description = An enhanced farming mod with spreding crops which wilt if not harvested.
optional_depends = intllib,default,wool,vessels,bucket,thirsty
depends = basic_functions
license = MIT
version = 1.0.0

View File

@ -149,6 +149,17 @@ farming.register_plant = function(def)
farming.register_coffee(def)
end
if def.rarety_grass_drop ~= nil then
if def.harvest_name ~= nil then
table.insert(farming.grass_drop.items,1,{items={def.harvest_name},rarety=def.rarety_grass_drop})
end
end
if def.rarety_junglegrass_drop ~= nil then
if def.harvest_name ~= nil then
table.insert(farming.junglegrass_drop.items,1,{items={def.harvest_name},rarety=def.rarety_junglegrass_drop})
end
end
farming.registered_plants[def.name] = def
end

View File

@ -1,11 +1,11 @@
local S = farming.intllib
farming.path = minetest.get_modpath("farming")
local has_value = farming.has_value
local has_value = basic_functions.has_value
local crop_cols={
col_num={"max_uses","farming_change","max_level","damage","times"},
groups_num={"snappy"}}
local tool_definition = farming.import_csv(farming.path.."/tools.txt",crop_cols)
local tool_definition = basic_functions.import_csv(farming.path.."/tools.txt",crop_cols)
for i,line in pairs(tool_definition) do