diff --git a/README.txt b/README.txt index 811a535..1457192 100644 --- a/README.txt +++ b/README.txt @@ -13,6 +13,7 @@ This mod works by adding your new plant to the {growing=1} group and numbering t Changelog: +1.24 - Added Hemp which can be crafted into fibre, paper, string, rope and oil. 1.23 - Huge code tweak and tidy done and added barley seeds to be found in dry grass, barley can make flour for bread also. 1.22 - Added grape bushes at high climates which can be cultivated into grape vines using trellis (9 sticks). 1.21 - Added auto-refill code for planting crops (thanks crabman77), also fixed a few bugs @@ -45,7 +46,7 @@ Changelog: 0.1 - Fixed growing bug 0.0 - Initial release -Lucky Blocks: 10 (plus 3 for default farming items) +Lucky Blocks: 11 (plus 3 for default farming items) License of media (textures): @@ -150,4 +151,5 @@ Created by TenPlus1 farming_rhubarb_2.png farming_rhubarb_3.png farming_rhubarb.png - farming_rhubarb_pie.png \ No newline at end of file + farming_rhubarb_pie.png + farming_hemp*.png diff --git a/hemp.lua b/hemp.lua new file mode 100644 index 0000000..7bb2e2b --- /dev/null +++ b/hemp.lua @@ -0,0 +1,201 @@ + +local S = farming.intllib + +-- hemp seeds +minetest.register_node("farming:seed_hemp", { + description = S("Hemp Seed"), + tiles = {"farming_hemp_seed.png"}, + inventory_image = "farming_hemp_seed.png", + wield_image = "farming_hemp_seed.png", + drawtype = "signlike", + groups = {seed = 1, snappy = 3, attached_node = 1}, + paramtype = "light", + paramtype2 = "wallmounted", + walkable = false, + sunlight_propagates = true, + selection_box = farming.select, + on_place = function(itemstack, placer, pointed_thing) + return farming.place_seed(itemstack, placer, pointed_thing, "farming:hemp_1") + end, +}) + +-- harvested hemp +minetest.register_craftitem("farming:hemp_leaf", { + description = S("Hemp Leaf"), + inventory_image = "farming_hemp_leaf.png", +}) + +-- hemp oil +minetest.register_craftitem("farming:hemp_oil", { + description = S("Hemp Oil"), + inventory_image = "farming_hemp_oil.png", +}) + +minetest.register_craft( { + output = "farming:hemp_oil", + recipe = { + {"farming:hemp_leaf", "farming:hemp_leaf", "farming:hemp_leaf"}, + {"farming:hemp_leaf", "farming:hemp_leaf", "farming:hemp_leaf"}, + {"", "vessels:glass_bottle", ""} + } +}) + +minetest.register_craft( { + output = "farming:hemp_oil", + recipe = { + {"farming:seed_hemp", "farming:seed_hemp", "farming:seed_hemp"}, + {"farming:seed_hemp", "farming:seed_hemp", "farming:seed_hemp"}, + {"farming:seed_hemp", "vessels:glass_bottle", "farming:seed_hemp"} + } +}) + +minetest.register_craft({ + type = "fuel", + recipe = "farming:hemp_oil", + burntime = 20, + replacements = {{ "farming:hemp_oil", "vessels:glass_bottle"}} +}) + +-- hemp fibre +minetest.register_craftitem("farming:hemp_fibre", { + description = S("Hemp Fibre"), + inventory_image = "farming_hemp_fibre.png", +}) + +minetest.register_craft( { + output = "farming:hemp_fibre 8", + recipe = { + {"farming:hemp_leaf", "farming:hemp_leaf", "farming:hemp_leaf"}, + {"farming:hemp_leaf", "bucket:bucket_water", "farming:hemp_leaf"}, + {"farming:hemp_leaf", "farming:hemp_leaf", "farming:hemp_leaf"} + }, + replacements = {{ "bucket:bucket_water", "bucket:bucket_empty"}} +}) + +minetest.register_craft( { + output = "farming:hemp_fibre 8", + recipe = { + {"farming:hemp_leaf", "farming:hemp_leaf", "farming:hemp_leaf"}, + {"farming:hemp_leaf", "bucket:bucket_river_water", "farming:hemp_leaf"}, + {"farming:hemp_leaf", "farming:hemp_leaf", "farming:hemp_leaf"} + }, + replacements = {{ "bucket:bucket_river_water", "bucket:bucket_empty"}} +}) + +-- paper +minetest.register_craft( { + output = "default:paper", + recipe = { + {"farming:hemp_fibre", "farming:hemp_fibre", "farming:hemp_fibre"}, + } +}) + +-- string +minetest.register_craft( { + output = "farming:cotton", + recipe = { + {"farming:hemp_fibre"}, + {"farming:hemp_fibre"}, + {"farming:hemp_fibre"}, + } +}) + +-- hemp rope +minetest.register_node("farming:hemp_rope", { + description = S("Hemp Rope"), + walkable = false, + climbable = true, + sunlight_propagates = true, + paramtype = "light", + tiles = {"farming_hemp_rope.png"}, + wield_image = "farming_hemp_rope.png", + inventory_image = "farming_hemp_rope.png", + drawtype = "plantlike", + groups = {flammable = 2, choppy = 3, oddly_breakable_by_hand = 3}, + sounds = default.node_sound_leaves_defaults(), + selection_box = { + type = "fixed", + fixed = {-1/7, -1/2, -1/7, 1/7, 1/2, 1/7}, + }, +}) + +-- string +minetest.register_craft( { + output = "farming:hemp_rope 6", + recipe = { + {"farming:hemp_fibre", "farming:hemp_fibre", "farming:hemp_fibre"}, + {"farming:cotton", "farming:cotton", "farming:cotton"}, + {"farming:hemp_fibre", "farming:hemp_fibre", "farming:hemp_fibre"}, + } +}) + +-- hemp definition +local crop_def = { + drawtype = "plantlike", + tiles = {"farming_hemp_1.png"}, + paramtype = "light", + sunlight_propagates = true, + walkable = false, + buildable_to = true, + drop = "", + selection_box = farming.select, + groups = { + snappy = 3, flammable = 2, plant = 1, attached_node = 1, + not_in_creative_inventory = 1, growing = 1 + }, + sounds = default.node_sound_leaves_defaults() +} + +-- stage 1 +minetest.register_node("farming:hemp_1", table.copy(crop_def)) + +-- stage 2 +crop_def.tiles = {"farming_hemp_2.png"} +minetest.register_node("farming:hemp_2", table.copy(crop_def)) + +-- stage 3 +crop_def.tiles = {"farming_hemp_3.png"} +minetest.register_node("farming:hemp_3", table.copy(crop_def)) + +-- stage 4 +crop_def.tiles = {"farming_hemp_4.png"} +minetest.register_node("farming:hemp_4", table.copy(crop_def)) + +-- stage 5 +crop_def.tiles = {"farming_hemp_5.png"} +minetest.register_node("farming:hemp_5", table.copy(crop_def)) + +-- stage 6 +crop_def.tiles = {"farming_hemp_6.png"} +crop_def.drop = { + items = { + {items = {'farming:hemp_leaf'}, rarity = 2}, + {items = {'farming:seed_hemp'}, rarity = 1}, + } +} +minetest.register_node("farming:hemp_6", table.copy(crop_def)) + +-- stage 7 +crop_def.tiles = {"farming_hemp_7.png"} +crop_def.drop = { + items = { + {items = {'farming:hemp_leaf'}, rarity = 1}, + {items = {'farming:hemp_leaf'}, rarity = 3}, + {items = {'farming:seed_hemp'}, rarity = 1}, + {items = {'farming:seed_hemp'}, rarity = 3}, + } +} +minetest.register_node("farming:hemp_7", table.copy(crop_def)) + +-- stage 8 (final) +crop_def.tiles = {"farming_hemp_8.png"} +crop_def.groups.growing = 0 +crop_def.drop = { + items = { + {items = {'farming:hemp_leaf 2'}, rarity = 1}, + {items = {'farming:hemp_leaf'}, rarity = 2}, + {items = {'farming:seed_hemp'}, rarity = 1}, + {items = {'farming:seed_hemp'}, rarity = 2}, + } +} +minetest.register_node("farming:hemp_8", table.copy(crop_def)) diff --git a/init.lua b/init.lua index 2d64f61..1292eac 100644 --- a/init.lua +++ b/init.lua @@ -1,5 +1,5 @@ --[[ - Minetest Farming Redo Mod 1.23 (12th November 2016) + Minetest Farming Redo Mod 1.24 (8th March 2017) by TenPlus1 NEW growing routine by prestidigitator auto-refill by crabman77 @@ -502,6 +502,7 @@ local can_refill_plant = { ["farming:rhubarb_1"] = "farming:rhubarb", ["farming:cocoa_1"] = "farming:cocoa_beans", ["farming:barley_1"] = "farming:seed_barley", + ["farming:hemp_1"] = "farming:seed_hemp", } function farming.refill_plant(player, plantname, index) @@ -711,6 +712,7 @@ dofile(farming.path.."/rhubarb.lua") dofile(farming.path.."/beanpole.lua") dofile(farming.path.."/grapes.lua") dofile(farming.path.."/barley.lua") +dofile(farming.path.."/hemp.lua") dofile(farming.path.."/donut.lua") dofile(farming.path.."/mapgen.lua") dofile(farming.path.."/compatibility.lua") -- Farming Plus compatibility diff --git a/lucky_block.lua b/lucky_block.lua index df5c54f..41d5b90 100644 --- a/lucky_block.lua +++ b/lucky_block.lua @@ -14,5 +14,6 @@ if minetest.get_modpath("lucky_block") then {"dro", {"farming:bottle_ethanol"}, 1}, {"nod", "farming:melon", 0}, {"dro", {"farming:donut", "farming:donut_chocolate", "farming:donut_apple"}, 5}, + {"dro", {"farming:hemp_leaf", "farming:hemp_fibre", "farming:hemp_seed"}, 5}, }) end diff --git a/mapgen.lua b/mapgen.lua index 36d4792..59a485e 100644 --- a/mapgen.lua +++ b/mapgen.lua @@ -55,6 +55,25 @@ function farming.register_mgv7_decorations() register_plant("grapebush", 25, 45, "", -1) end +minetest.register_decoration({ + deco_type = "simple", + place_on = {"default:dirt_with_grass", "default:dirt_with_rainforest_litter"}, + sidelen = 16, + noise_params = { + offset = 0, + scale = 0.06, + spread = {x = 100, y = 100, z = 100}, + seed = 420, + octaves = 3, + persist = 0.6 + }, + y_min = 5, + y_max = 35, + decoration = "farming:hemp_7", + spawn_by = "group:tree", + num_spawn_by = 1, +}) + -- detect mapgen local mg_name = minetest.get_mapgen_params().mgname diff --git a/textures/farming_hemp_1.png b/textures/farming_hemp_1.png new file mode 100644 index 0000000..6fb4510 Binary files /dev/null and b/textures/farming_hemp_1.png differ diff --git a/textures/farming_hemp_2.png b/textures/farming_hemp_2.png new file mode 100644 index 0000000..a676173 Binary files /dev/null and b/textures/farming_hemp_2.png differ diff --git a/textures/farming_hemp_3.png b/textures/farming_hemp_3.png new file mode 100644 index 0000000..57136d5 Binary files /dev/null and b/textures/farming_hemp_3.png differ diff --git a/textures/farming_hemp_4.png b/textures/farming_hemp_4.png new file mode 100644 index 0000000..b375cf3 Binary files /dev/null and b/textures/farming_hemp_4.png differ diff --git a/textures/farming_hemp_5.png b/textures/farming_hemp_5.png new file mode 100644 index 0000000..890a3d2 Binary files /dev/null and b/textures/farming_hemp_5.png differ diff --git a/textures/farming_hemp_6.png b/textures/farming_hemp_6.png new file mode 100644 index 0000000..258d4e3 Binary files /dev/null and b/textures/farming_hemp_6.png differ diff --git a/textures/farming_hemp_7.png b/textures/farming_hemp_7.png new file mode 100644 index 0000000..1ce3a8d Binary files /dev/null and b/textures/farming_hemp_7.png differ diff --git a/textures/farming_hemp_8.png b/textures/farming_hemp_8.png new file mode 100644 index 0000000..8d2143f Binary files /dev/null and b/textures/farming_hemp_8.png differ diff --git a/textures/farming_hemp_fibre.png b/textures/farming_hemp_fibre.png new file mode 100644 index 0000000..fe3c918 Binary files /dev/null and b/textures/farming_hemp_fibre.png differ diff --git a/textures/farming_hemp_leaf.png b/textures/farming_hemp_leaf.png new file mode 100644 index 0000000..997c8f0 Binary files /dev/null and b/textures/farming_hemp_leaf.png differ diff --git a/textures/farming_hemp_oil.png b/textures/farming_hemp_oil.png new file mode 100644 index 0000000..fa8afe2 Binary files /dev/null and b/textures/farming_hemp_oil.png differ diff --git a/textures/farming_hemp_rope.png b/textures/farming_hemp_rope.png new file mode 100644 index 0000000..03a7082 Binary files /dev/null and b/textures/farming_hemp_rope.png differ diff --git a/textures/farming_hemp_seed.png b/textures/farming_hemp_seed.png new file mode 100644 index 0000000..6be42c8 Binary files /dev/null and b/textures/farming_hemp_seed.png differ