From 826410e3e553cb8139cc215ae18c7354a2b5e964 Mon Sep 17 00:00:00 2001 From: Rui914 Date: Fri, 11 Sep 2015 06:23:25 +0900 Subject: [PATCH] Add visual_scale for farming.register_plant --- mods/farming/api.lua | 66 ++++++++++++++++++-------------------------- 1 file changed, 27 insertions(+), 39 deletions(-) diff --git a/mods/farming/api.lua b/mods/farming/api.lua index 4b6f5617..98e69b43 100644 --- a/mods/farming/api.lua +++ b/mods/farming/api.lua @@ -34,7 +34,7 @@ farming.hoe_on_use = function(itemstack, user, pointed_thing, uses) -- check if (wet) soil defined local regN = minetest.registered_nodes - if regN[under.name].soil == nil or regN[under.name].soil.wet == nil or regN[under.name].soil.dry == nil then + if not regN[under.name].soil or not regN[under.name].soil.wet or not regN[under.name].soil.dry then return end @@ -42,7 +42,7 @@ farming.hoe_on_use = function(itemstack, user, pointed_thing, uses) minetest.set_node(pt.under, {name = regN[under.name].soil.dry}) minetest.sound_play("default_dig_crumbly", { pos = pt.under, - gain = 0.5, + gain = 0.5 }) if not minetest.setting_getbool("creative_mode") then @@ -54,26 +54,20 @@ end -- Register new hoes farming.register_hoe = function(name, def) -- Check for : prefix (register new hoes in your mod's namespace) - if name:sub(1,1) ~= ":" then + if name:sub(1, 1) ~= ":" then name = ":" .. name end + -- Check def table - if def.description == nil then - def.description = "Hoe" - end - if def.inventory_image == nil then - def.inventory_image = "unknown_item.png" - end - if def.recipe == nil then - def.recipe = { - {"air","air",""}, - {"","group:stick",""}, - {"","group:stick",""} - } - end - if def.max_uses == nil then - def.max_uses = 30 - end + def.description = def.description or "Hoe" + def.inventory_image = def.inventory_image or "unknown_item.png" + def.max_uses = def.max_uses or 30 + def.recipe = def.recipe or { + {"air","air",""}, + {"","group:stick",""}, + {"","group:stick",""} + } + -- Register the tool minetest.register_tool(name, { description = def.description, @@ -82,8 +76,9 @@ farming.register_hoe = function(name, def) return farming.hoe_on_use(itemstack, user, pointed_thing, def.max_uses) end }) + -- Register its recipe - if def.material == nil then + if not def.material then minetest.register_craft({ output = name:sub(2), recipe = def.recipe @@ -160,37 +155,30 @@ farming.register_plant = function(name, def) local pname = name:split(":")[2] -- Check def table - if not def.description then - def.description = "Seed" - end - if not def.inventory_image then - def.inventory_image = "unknown_item.png" - end if not def.steps then - return nil - end - if not def.minlight then - def.minlight = 1 - end - if not def.maxlight then - def.maxlight = 14 - end - if not def.fertility then - def.fertility = {} + return end + def.description = def.description or "Seed" + def.inventory_image = def.inventory_image or "unknown_item.png" + def.minlight = def.minlight or 1 + def.maxlight = def.maxlight or 14 + def.fertility = def.fertility or {} + def.visual_scale = def.visual_scale or 1 + -- Register seed - local g = {seed = 1, snappy = 3, attached_node = 1} + local groups = {seed = 1, snappy = 3, attached_node = 1} for k, v in pairs(def.fertility) do - g[v] = 1 + groups[v] = 1 end minetest.register_node(":" .. mname .. ":seed_" .. pname, { description = def.description, tiles = {def.inventory_image}, inventory_image = def.inventory_image, wield_image = def.inventory_image, + visual_scale = def.visual_scale, drawtype = "signlike", - groups = g, + groups = groups, paramtype = "light", paramtype2 = "wallmounted", walkable = false,