Added the Mosser buff for hoes

master
Alexand(er|ra) Yst 2021-01-14 22:35:08 -08:00
parent c8e10131d1
commit 2f00e64ec0
3 changed files with 29 additions and 16 deletions

View File

@ -146,13 +146,13 @@ return {
aspen_sapling = "breaker",
flint = "soulbound",
coral_skeleton = "soulbound",
acacia_bush_sapling = "breaker",
bush_sapling = "breaker",
acacia_bush_sapling = "mosser",
bush_sapling = "mosser",
tin_lump = "soulbound",
blueberries = "soulbound",
blueberry_bush_sapling = "soulbound",
ice = "soulbound",
pine_bush_sapling = "breaker",
pine_bush_sapling = "mosser",
dry_dirt = "soulbound",
},
screwdriver = {

View File

@ -61,6 +61,7 @@ local buff_name = {
soulbound = S("Soulbound"),
adjuster = S("Kelp Adjuster"),
breaker = S("Breaker"),
mosser = S("Mosser"),
}
local rune_element_modname = {

View File

@ -128,14 +128,6 @@ minetest.register_tool("runes:pick", {
groups = {pickaxe = 1, disable_repair = 1},
})
-- Used by the Spreader buff.
local spread_function
for _, ABM in next, minetest.registered_abms do
if ABM.mod_origin == "default" and ABM.label == "Grass spread" then
spread_function = ABM.action
end
end
minetest.register_tool("runes:shovel", {
description = S("Runic Shovel"),
inventory_image = "runes.tool_aura_stone_shovel.png",
@ -279,6 +271,24 @@ minetest.register_tool("runes:sword", {
end,
})
-- Used by the Spreader buff.
local spread_function
for _, ABM in next, minetest.registered_abms do
if ABM.mod_origin == "default" and ABM.label == "Grass spread" then
spread_function = ABM.action
end
end
-- Used by the Mosser buff
local mossed = {
["default:cobble"] = "default:mossycobble",
["stairs:slab_cobble"] = "stairs:slab_mossycobble",
["stairs:stair_cobble"] = "stairs:stair_mossycobble",
["stairs:stair_inner_cobble"] = "stairs:stair_inner_mossycobble",
["stairs:stair_outer_cobble"] = "stairs:stair_outer_mossycobble",
["walls:cobble"] = "walls:mossycobble",
}
farming.register_hoe("runes:hoe", {
description = S("Runic Hoe"),
inventory_image = "runes.tool_aura_stone_hoe.png",
@ -293,7 +303,7 @@ minetest.override_item("runes:hoe", {
if minetest.registered_nodes[target.name]
and minetest.registered_nodes[target.name].on_rightclick then
return minetest.registered_nodes[target.name].on_rightclick(pointed_thing.under, target, user, itemstack, pointed_thing)
elseif not minetest.is_protected(pos, user:get_player_name()) then
elseif not minetest.is_protected(pointed_thing.under, user:get_player_name()) then
local wear_to_add
local meta = itemstack:get_meta()
if meta:get("durable") then
@ -306,14 +316,16 @@ minetest.override_item("runes:hoe", {
itemstack:add_wear(wear_to_add)
return itemstack
elseif target.name == "default:stone" and meta:get("breaker") then
minetest.set_node({
minetest.swap_node(pointed_thing.under, {
name = "default:cobble",
})
itemstack:add_wear(wear_to_add)
return itemstack
elseif target.name == "default:desert_stone" and meta:get("breaker") then
minetest.set_node({
name = "default:desert_cobble",
elseif mossed[target.name] and meta:get("mosser") then
minetest.swap_node(pointed_thing.under, {
name = mossed[target.name],
param1 = target.param1,
param2 = target.param2,
})
itemstack:add_wear(wear_to_add)
return itemstack