From 87316b50837e82d22a7cc21b5e583f47f00b1be5 Mon Sep 17 00:00:00 2001 From: tenplus1 Date: Fri, 29 May 2015 10:25:35 +0100 Subject: Code Tidy (thanks HybridDog) --- onion.lua | 127 +++++++++++++++++++++----------------------------------------- 1 file changed, 42 insertions(+), 85 deletions(-) (limited to 'onion.lua') diff --git a/onion.lua b/onion.lua index 24d51b2..2eabbcc 100644 --- a/onion.lua +++ b/onion.lua @@ -11,7 +11,7 @@ minetest.register_craftitem("ethereal:wild_onion_plant", { minetest.register_alias("ethereal:wild_onion_craftingitem", "ethereal:wild_onion_plant") -- Define Onion growth stages -minetest.register_node("ethereal:onion_1", { +local onion_def = { drawtype = "plantlike", tiles = {"ethereal_wild_onion_1.png"}, paramtype = "light", @@ -20,90 +20,41 @@ minetest.register_node("ethereal:onion_1", { buildable_to = true, drop = { items = { - {items = {"ethereal:wild_onion_plant 1"},rarity=1}, + {items = {"ethereal:wild_onion_plant"},rarity=1}, } }, selection_box = {type = "fixed",fixed = {-0.5, -0.5, -0.5, 0.5, -5/16, 0.5},}, groups = {snappy=3,flammable=2,plant=1,attached_node=1,onion=1,growing=1,not_in_creative_inventory=1}, sounds = default.node_sound_leaves_defaults(), -}) -minetest.register_alias("ethereal:wild_onion_1", "ethereal:onion_1") +} +minetest.register_node("ethereal:onion_1", table.copy(onion_def)) -minetest.register_node("ethereal:onion_2", { - drawtype = "plantlike", - tiles = {"ethereal_wild_onion_2.png"}, - paramtype = "light", - sunlight_propagates = true, - walkable = false, - buildable_to = true, - drop = { - items = { - {items = {"ethereal:wild_onion_plant 1"},rarity=1}, - } - }, - selection_box = {type = "fixed",fixed = {-0.5, -0.5, -0.5, 0.5, -5/16, 0.5},}, - groups = {snappy=3,flammable=2,plant=1,attached_node=1,onion=2,growing=1,not_in_creative_inventory=1}, - sounds = default.node_sound_leaves_defaults(), -}) -minetest.register_alias("ethereal:wild_onion_2", "ethereal:onion_2") +onion_def.tiles[1] = "ethereal_wild_onion_2.png" +onion_def.groups.onion = 2 +minetest.register_node("ethereal:onion_2", table.copy(onion_def)) -minetest.register_node("ethereal:onion_3", { - drawtype = "plantlike", - tiles = {"ethereal_wild_onion_3.png"}, - paramtype = "light", - sunlight_propagates = true, - walkable = false, - buildable_to = true, - is_ground_content = true, - drop = { - items = { - {items = {"ethereal:wild_onion_plant 1"},rarity=1}, - {items = {"ethereal:wild_onion_plant 2"},rarity=3}, - } - }, - selection_box = {type = "fixed",fixed = {-0.5, -0.5, -0.5, 0.5, -5/16, 0.5},}, - groups = {snappy=3,flammable=2,plant=1,attached_node=1,onion=3,growing=1,not_in_creative_inventory=1}, - sounds = default.node_sound_leaves_defaults(), -}) -minetest.register_alias("ethereal:wild_onion_3", "ethereal:onion_3") +onion_def.tiles[1] = "ethereal_wild_onion_3.png" +onion_def.groups.onion = 3 +onion_def.drop.items[2] = { + items = {"ethereal:wild_onion_plant 2"}, rarity=3 +} +minetest.register_node("ethereal:onion_3", table.copy(onion_def)) -minetest.register_node("ethereal:onion_4", { - drawtype = "plantlike", - tiles = {"ethereal_wild_onion_4.png"}, - paramtype = "light", - sunlight_propagates = true, - walkable = false, - buildable_to = true, - drop = { - items = { - {items = {"ethereal:wild_onion_plant 1"},rarity=1}, - {items = {"ethereal:wild_onion_plant 3"},rarity=3}, - } - }, - selection_box = {type = "fixed",fixed = {-0.5, -0.5, -0.5, 0.5, -5/16, 0.5},}, - groups = {snappy=3,flammable=2,plant=1,attached_node=1,onion=4,growing=1,not_in_creative_inventory=1}, - sounds = default.node_sound_leaves_defaults(), -}) -minetest.register_alias("ethereal:wild_onion_4", "ethereal:onion_4") +onion_def.tiles[1] = "ethereal_wild_onion_4.png" +onion_def.groups.onion = 4 +onion_def.drop.items[2] = { + items = {"ethereal:wild_onion_plant 3"}, rarity=3 +} +minetest.register_node("ethereal:onion_4", table.copy(onion_def)) -minetest.register_node("ethereal:onion_5", { - drawtype = "plantlike", - tiles = {"ethereal_wild_onion_5.png"}, - paramtype = "light", - sunlight_propagates = true, - walkable = false, - buildable_to = true, - drop = { - items = { - {items = {"ethereal:wild_onion_plant 2"},rarity=1}, - {items = {"ethereal:wild_onion_plant 3"},rarity=2}, - } - }, - selection_box = {type = "fixed",fixed = {-0.5, -0.5, -0.5, 0.5, -5/16, 0.5},}, - groups = {snappy=3,flammable=2,plant=1,attached_node=1,onion=5,not_in_creative_inventory=1}, - sounds = default.node_sound_leaves_defaults(), -}) -minetest.register_alias("ethereal:wild_onion_5", "ethereal:onion_5") +onion_def.tiles[1] = "ethereal_wild_onion_5.png" +onion_def.groups.onion = 5 +onion_def.groups.growing = nil +onion_def.drop.items = { + {items = {"ethereal:wild_onion_plant 2"},rarity=1}, + {items = {"ethereal:wild_onion_plant 3"},rarity=2}, +} +minetest.register_node("ethereal:onion_5", table.copy(onion_def)) -- Abm for growing Wild Onion if farming.mod ~= "redo" then @@ -115,34 +66,40 @@ minetest.register_abm({ chance = 3, action = function(pos, node) -- return if already full grown - if minetest.get_item_group(node.name, "onion") == 5 then + if minetest.get_item_group(node.name, "growing") < 1 then return end -- check if on wet soil pos.y = pos.y-1 - local n = minetest.get_node(pos) - if minetest.get_item_group(n.name, "soil") < 3 then + if minetest.get_item_group(minetest.get_node(pos).name, "soil") < 3 then return end pos.y = pos.y+1 -- check light - if not minetest.get_node_light(pos) then - return - end - if minetest.get_node_light(pos) < 13 then + local light = minetest.get_node_light(pos) + if not light + or light < 13 then return end -- grow - local height = minetest.get_item_group(node.name, "onion") + 1 - minetest.set_node(pos, {name="ethereal:wild_onion_"..height}) + node.name = "ethereal:onion_" .. minetest.get_item_group(node.name, "onion") + 1 + minetest.set_node(pos, node) end }) end + +-- Legacy + +minetest.register_alias("ethereal:wild_onion_craftingitem", "ethereal:wild_onion_plant") +for i = 1,5 do + minetest.register_alias("ethereal:wild_onion_"..i, "ethereal:onion_"..i) +end + -- Temporary compatibility lines for Xanadu server minetest.register_alias("ethereal:onion_7", "ethereal:onion_4") minetest.register_alias("ethereal:onion_8", "ethereal:onion_5") -- cgit v1.2.3