Empowerable tools
10
book.txt
@ -35,12 +35,22 @@ The <b>Transterra</b> is a stone that can be used to <b>create or remove nodes f
|
|||||||
<center><item name="default:stone" width=64 height=64><img name=magicalities_book_plus.png width=64 height=64><item name="default:dirt" width=64 height=64><img name=magicalities_book_plus.png width=64 height=64><item name="magicalities:crystal_fire" width=64 height=64></center>
|
<center><item name="default:stone" width=64 height=64><img name=magicalities_book_plus.png width=64 height=64><item name="default:dirt" width=64 height=64><img name=magicalities_book_plus.png width=64 height=64><item name="magicalities:crystal_fire" width=64 height=64></center>
|
||||||
<center><img name=gui_furnace_arrow_bg.png^\[transformFY width=64 height=64></center>
|
<center><img name=gui_furnace_arrow_bg.png^\[transformFY width=64 height=64></center>
|
||||||
<center><item name="magicalities:cauldron_with_water" width=64 height=64><img name=magicalities_book_plus.png width=64 height=64><item name="magicalities:wand_steel" width=64 height=64></center>
|
<center><item name="magicalities:cauldron_with_water" width=64 height=64><img name=magicalities_book_plus.png width=64 height=64><item name="magicalities:wand_steel" width=64 height=64></center>
|
||||||
|
<center><big>1 Earth | 1 Dark</big></center>
|
||||||
#2magicalities:tellium
|
#2magicalities:tellium
|
||||||
<b>Tellium</b> is a metal that can be used to <b>create magical tools</b>. It is made in the Cauldron.
|
<b>Tellium</b> is a metal that can be used to <b>create magical tools</b>. It is made in the Cauldron.
|
||||||
<center><item name="default:steel_ingot" width=64 height=64><img name=magicalities_book_plus.png width=64 height=64><item name="default:obsidian" width=64 height=64></center>
|
<center><item name="default:steel_ingot" width=64 height=64><img name=magicalities_book_plus.png width=64 height=64><item name="default:obsidian" width=64 height=64></center>
|
||||||
<center><img name=gui_furnace_arrow_bg.png^\[transformFY width=64 height=64></center>
|
<center><img name=gui_furnace_arrow_bg.png^\[transformFY width=64 height=64></center>
|
||||||
<center><item name="magicalities:cauldron_with_water" width=64 height=64><img name=magicalities_book_plus.png width=64 height=64><item name="magicalities:wand_steel" width=64 height=64></center>
|
<center><item name="magicalities:cauldron_with_water" width=64 height=64><img name=magicalities_book_plus.png width=64 height=64><item name="magicalities:wand_steel" width=64 height=64></center>
|
||||||
|
<center><big>5 Fire | 5 Earth</big></center>
|
||||||
#2magicalities:element_ring
|
#2magicalities:element_ring
|
||||||
The <b>Elemental Ring</b> can show you what elements a crystal contains and their quantities.
|
The <b>Elemental Ring</b> can show you what elements a crystal contains and their quantities.
|
||||||
#2magicalities:focus_blank
|
#2magicalities:focus_blank
|
||||||
The <b>Blank Wand Focus</b> is your gateway to the world of <b>Wand Focuses</b>.
|
The <b>Blank Wand Focus</b> is your gateway to the world of <b>Wand Focuses</b>.
|
||||||
|
#2magicalities:axe_tellium
|
||||||
|
<b>Tellium Axe</b> is a Diamond-tier tool that can be empowered by right-clicking. In empowered mode, the axe is 2x as fast but breaks about 4x faster.
|
||||||
|
#2magicalities:pick_tellium
|
||||||
|
<b>Tellium Pickaxe</b> is a Diamond-tier tool that can be empowered by right-clicking. In empowered mode, the pickaxe is 2x as fast but breaks about 4x faster.
|
||||||
|
#2magicalities:shovel_tellium
|
||||||
|
<b>Tellium Shovel</b> is a Diamond-tier tool that can be empowered by right-clicking. In empowered mode, the shovel is 2x as fast but breaks about 4x faster.
|
||||||
|
#2magicalities:sword_tellium
|
||||||
|
<b>Tellium Sword</b> is a Diamond-tier tool that can be empowered by right-clicking. In empowered mode, the sword deals 2x more damage but breaks about 4x faster.
|
||||||
|
3
init.lua
@ -41,6 +41,9 @@ dofile(modpath.."/nodes.lua")
|
|||||||
-- Items
|
-- Items
|
||||||
dofile(modpath.."/craftitems.lua")
|
dofile(modpath.."/craftitems.lua")
|
||||||
|
|
||||||
|
-- Tools
|
||||||
|
dofile(modpath.."/tools.lua")
|
||||||
|
|
||||||
-- Scanner
|
-- Scanner
|
||||||
dofile(modpath.."/scanner.lua")
|
dofile(modpath.."/scanner.lua")
|
||||||
|
|
||||||
|
66
register.lua
@ -191,6 +191,72 @@ local recipes = {
|
|||||||
learnable = {
|
learnable = {
|
||||||
depends = {"magicalities:focus_blank"}
|
depends = {"magicalities:focus_blank"}
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
input = {
|
||||||
|
{"magicalities:tellium", "magicalities:tellium", ""},
|
||||||
|
{"magicalities:tellium", "magicalities:transterra", ""},
|
||||||
|
{"", "default:stick", ""}
|
||||||
|
},
|
||||||
|
output = "magicalities:axe_tellium",
|
||||||
|
requirements = {
|
||||||
|
["air"] = 45,
|
||||||
|
["light"] = 45,
|
||||||
|
["earth"] = 15
|
||||||
|
},
|
||||||
|
learnable = {
|
||||||
|
depends = {"magicalities:tellium", "magicalities:transterra", "magicalities:wand_gold"}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
input = {
|
||||||
|
{"magicalities:tellium", "magicalities:tellium", "magicalities:tellium"},
|
||||||
|
{"", "magicalities:transterra", ""},
|
||||||
|
{"", "default:stick", ""}
|
||||||
|
},
|
||||||
|
output = "magicalities:pick_tellium",
|
||||||
|
requirements = {
|
||||||
|
["air"] = 45,
|
||||||
|
["light"] = 15,
|
||||||
|
["earth"] = 45
|
||||||
|
},
|
||||||
|
learnable = {
|
||||||
|
depends = {"magicalities:tellium", "magicalities:transterra", "magicalities:wand_gold"}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
input = {
|
||||||
|
{"magicalities:tellium"},
|
||||||
|
{"magicalities:transterra"},
|
||||||
|
{"default:stick"}
|
||||||
|
},
|
||||||
|
output = "magicalities:shovel_tellium",
|
||||||
|
requirements = {
|
||||||
|
["air"] = 45,
|
||||||
|
["dark"] = 15,
|
||||||
|
["earth"] = 45
|
||||||
|
},
|
||||||
|
learnable = {
|
||||||
|
depends = {"magicalities:tellium", "magicalities:transterra", "magicalities:wand_gold"}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{
|
||||||
|
input = {
|
||||||
|
{"magicalities:tellium"},
|
||||||
|
{"magicalities:transterra"},
|
||||||
|
{"default:stick"}
|
||||||
|
},
|
||||||
|
output = "magicalities:sword_tellium",
|
||||||
|
requirements = {
|
||||||
|
["air"] = 45,
|
||||||
|
["dark"] = 45,
|
||||||
|
["light"] = 45,
|
||||||
|
["earth"] = 45,
|
||||||
|
["fire"] = 15
|
||||||
|
},
|
||||||
|
learnable = {
|
||||||
|
depends = {"magicalities:tellium", "magicalities:transterra", "magicalities:wand_gold"}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -8,6 +8,7 @@ function magicalities.researching.generate_formspec_list(list, x, y, w, h, index
|
|||||||
local total = #list
|
local total = #list
|
||||||
local visualtotal = math.ceil(y + h)
|
local visualtotal = math.ceil(y + h)
|
||||||
local reallist = {}
|
local reallist = {}
|
||||||
|
local pages = math.ceil(total / visualtotal)
|
||||||
|
|
||||||
for i = index * visualtotal, (index * visualtotal) + visualtotal do
|
for i = index * visualtotal, (index * visualtotal) + visualtotal do
|
||||||
if list[i + 1] then
|
if list[i + 1] then
|
||||||
@ -40,7 +41,9 @@ function magicalities.researching.generate_formspec_list(list, x, y, w, h, index
|
|||||||
|
|
||||||
if index > 0 then
|
if index > 0 then
|
||||||
i = i .. "button["..(x+w)..","..y..";1,1;up;Up]"
|
i = i .. "button["..(x+w)..","..y..";1,1;up;Up]"
|
||||||
elseif total > visualtotal then
|
end
|
||||||
|
|
||||||
|
if pages > index + 1 then
|
||||||
i = i .. "button["..(x+w)..","..(y+h-0.25)..";1,1;dn;Down]"
|
i = i .. "button["..(x+w)..","..(y+h-0.25)..";1,1;dn;Down]"
|
||||||
end
|
end
|
||||||
|
|
||||||
|
BIN
sounds/magicalities_charge.ogg
Normal file
BIN
sounds/magicalities_discharge.ogg
Normal file
BIN
textures/magicalities_tellium_axe.png
Normal file
After Width: | Height: | Size: 425 B |
BIN
textures/magicalities_tellium_axe_rage.png
Normal file
After Width: | Height: | Size: 436 B |
BIN
textures/magicalities_tellium_pick.png
Normal file
After Width: | Height: | Size: 488 B |
BIN
textures/magicalities_tellium_pick_rage.png
Normal file
After Width: | Height: | Size: 492 B |
BIN
textures/magicalities_tellium_shovel.png
Normal file
After Width: | Height: | Size: 441 B |
BIN
textures/magicalities_tellium_shovel_rage.png
Normal file
After Width: | Height: | Size: 462 B |
BIN
textures/magicalities_tellium_sword.png
Normal file
After Width: | Height: | Size: 467 B |
BIN
textures/magicalities_tellium_sword_rage.png
Normal file
After Width: | Height: | Size: 516 B |
186
tools.lua
Normal file
@ -0,0 +1,186 @@
|
|||||||
|
|
||||||
|
-- Pickaxe
|
||||||
|
|
||||||
|
minetest.register_tool("magicalities:pick_tellium", {
|
||||||
|
description = "Tellium Pickaxe",
|
||||||
|
inventory_image = "magicalities_tellium_pick.png",
|
||||||
|
tool_capabilities = {
|
||||||
|
full_punch_interval = 0.9,
|
||||||
|
max_drop_level = 3,
|
||||||
|
groupcaps = {
|
||||||
|
cracky = { times = { [1] = 2.0, [2] = 1.0, [3] = 0.50}, uses = 30, maxlevel = 3},
|
||||||
|
},
|
||||||
|
damage_groups = { fleshy = 5 },
|
||||||
|
},
|
||||||
|
sound = { breaks = "default_tool_breaks" },
|
||||||
|
groups = { pickaxe = 1 },
|
||||||
|
on_secondary_use = function(itemstack, user, pointed_thing)
|
||||||
|
local w = itemstack:get_wear()
|
||||||
|
itemstack = ItemStack("magicalities:pick_tellium_rage")
|
||||||
|
itemstack:set_wear(w)
|
||||||
|
minetest.sound_play("magicalities_charge")
|
||||||
|
return itemstack
|
||||||
|
end,
|
||||||
|
})
|
||||||
|
|
||||||
|
minetest.register_tool("magicalities:pick_tellium_rage", {
|
||||||
|
description = "Empowered Tellium Pickaxe",
|
||||||
|
inventory_image = "magicalities_tellium_pick_rage.png",
|
||||||
|
tool_capabilities = {
|
||||||
|
full_punch_interval = 0.45,
|
||||||
|
max_drop_level = 3,
|
||||||
|
groupcaps = {
|
||||||
|
cracky = { times = { [1] = 1.0, [2] = 0.5, [3] = 0.25}, uses = 5, maxlevel = 3},
|
||||||
|
},
|
||||||
|
damage_groups = { fleshy = 10 },
|
||||||
|
},
|
||||||
|
sound = { breaks = "default_tool_breaks" },
|
||||||
|
groups = { pickaxe = 1, not_in_creative_inventory = 1 },
|
||||||
|
on_secondary_use = function(itemstack, user, pointed_thing)
|
||||||
|
local w = itemstack:get_wear()
|
||||||
|
itemstack = ItemStack("magicalities:pick_tellium")
|
||||||
|
itemstack:set_wear(w)
|
||||||
|
minetest.sound_play("magicalities_discharge")
|
||||||
|
return itemstack
|
||||||
|
end,
|
||||||
|
})
|
||||||
|
|
||||||
|
-- Shovel
|
||||||
|
|
||||||
|
minetest.register_tool("magicalities:shovel_tellium", {
|
||||||
|
description = "Tellium Shovel",
|
||||||
|
inventory_image = "magicalities_tellium_shovel.png",
|
||||||
|
wield_image = "magicalities_tellium_shovel.png^[transformR90",
|
||||||
|
tool_capabilities = {
|
||||||
|
full_punch_interval = 1.0,
|
||||||
|
max_drop_level = 1,
|
||||||
|
groupcaps = {
|
||||||
|
crumbly = { times = { [1] = 1.10, [2] = 0.50, [3] = 0.30}, uses = 30, maxlevel = 3},
|
||||||
|
},
|
||||||
|
damage_groups = { fleshy = 4 },
|
||||||
|
},
|
||||||
|
sound = { breaks = "default_tool_breaks" },
|
||||||
|
groups = { shovel = 1 },
|
||||||
|
on_secondary_use = function(itemstack, user, pointed_thing)
|
||||||
|
local w = itemstack:get_wear()
|
||||||
|
itemstack = ItemStack("magicalities:shovel_tellium_rage")
|
||||||
|
itemstack:set_wear(w)
|
||||||
|
minetest.sound_play("magicalities_charge")
|
||||||
|
return itemstack
|
||||||
|
end,
|
||||||
|
})
|
||||||
|
|
||||||
|
minetest.register_tool("magicalities:shovel_tellium_rage", {
|
||||||
|
description = "Empowered Tellium Shovel",
|
||||||
|
inventory_image = "magicalities_tellium_shovel_rage.png",
|
||||||
|
wield_image = "magicalities_tellium_shovel_rage.png^[transformR90",
|
||||||
|
tool_capabilities = {
|
||||||
|
full_punch_interval = 0.5,
|
||||||
|
max_drop_level = 1,
|
||||||
|
groupcaps = {
|
||||||
|
crumbly = { times = { [1] = 0.55, [2] = 0.25, [3] = 0.15}, uses = 5, maxlevel = 3},
|
||||||
|
},
|
||||||
|
damage_groups = { fleshy = 4 },
|
||||||
|
},
|
||||||
|
sound = { breaks = "default_tool_breaks" },
|
||||||
|
groups = { shovel = 1, not_in_creative_inventory = 1 },
|
||||||
|
on_secondary_use = function(itemstack, user, pointed_thing)
|
||||||
|
local w = itemstack:get_wear()
|
||||||
|
itemstack = ItemStack("magicalities:shovel_tellium")
|
||||||
|
itemstack:set_wear(w)
|
||||||
|
minetest.sound_play("magicalities_discharge")
|
||||||
|
return itemstack
|
||||||
|
end,
|
||||||
|
})
|
||||||
|
|
||||||
|
-- Axe
|
||||||
|
|
||||||
|
minetest.register_tool("magicalities:axe_tellium", {
|
||||||
|
description = "Tellium Axe",
|
||||||
|
inventory_image = "magicalities_tellium_axe.png",
|
||||||
|
tool_capabilities = {
|
||||||
|
full_punch_interval = 0.9,
|
||||||
|
max_drop_level = 1,
|
||||||
|
groupcaps = {
|
||||||
|
choppy = { times = { [1] = 2.10, [2] = 0.90, [3] = 0.50}, uses = 30, maxlevel = 3},
|
||||||
|
},
|
||||||
|
damage_groups = { fleshy = 7 },
|
||||||
|
},
|
||||||
|
sound = { breaks = "default_tool_breaks" },
|
||||||
|
groups = { axe = 1 },
|
||||||
|
on_secondary_use = function(itemstack, user, pointed_thing)
|
||||||
|
local w = itemstack:get_wear()
|
||||||
|
itemstack = ItemStack("magicalities:axe_tellium_rage")
|
||||||
|
itemstack:set_wear(w)
|
||||||
|
minetest.sound_play("magicalities_charge")
|
||||||
|
return itemstack
|
||||||
|
end,
|
||||||
|
})
|
||||||
|
|
||||||
|
minetest.register_tool("magicalities:axe_tellium_rage", {
|
||||||
|
description = "Empowered Tellium Axe",
|
||||||
|
inventory_image = "magicalities_tellium_axe_rage.png",
|
||||||
|
tool_capabilities = {
|
||||||
|
full_punch_interval = 0.45,
|
||||||
|
max_drop_level = 1,
|
||||||
|
groupcaps = {
|
||||||
|
choppy = { times = { [1] = 1.05, [2] = 0.45, [3] = 0.25}, uses = 5, maxlevel = 3},
|
||||||
|
},
|
||||||
|
damage_groups = { fleshy = 14 },
|
||||||
|
},
|
||||||
|
sound = { breaks = "default_tool_breaks" },
|
||||||
|
groups = { axe = 1, not_in_creative_inventory = 1 },
|
||||||
|
on_secondary_use = function(itemstack, user, pointed_thing)
|
||||||
|
local w = itemstack:get_wear()
|
||||||
|
itemstack = ItemStack("magicalities:axe_tellium")
|
||||||
|
itemstack:set_wear(w)
|
||||||
|
minetest.sound_play("magicalities_discharge")
|
||||||
|
return itemstack
|
||||||
|
end,
|
||||||
|
})
|
||||||
|
|
||||||
|
-- Sword
|
||||||
|
|
||||||
|
minetest.register_tool("magicalities:sword_tellium", {
|
||||||
|
description = "Tellium Sword",
|
||||||
|
inventory_image = "magicalities_tellium_sword.png",
|
||||||
|
tool_capabilities = {
|
||||||
|
full_punch_interval = 0.7,
|
||||||
|
max_drop_level = 1,
|
||||||
|
groupcaps = {
|
||||||
|
snappy = { times={ [1] = 1.90, [2] = 0.90, [3] = 0.30 }, uses = 40, maxlevel = 3 },
|
||||||
|
},
|
||||||
|
damage_groups = { fleshy = 8 },
|
||||||
|
},
|
||||||
|
sound = { breaks = "default_tool_breaks" },
|
||||||
|
groups = { sword = 1 },
|
||||||
|
on_secondary_use = function(itemstack, user, pointed_thing)
|
||||||
|
local w = itemstack:get_wear()
|
||||||
|
itemstack = ItemStack("magicalities:sword_tellium_rage")
|
||||||
|
itemstack:set_wear(w)
|
||||||
|
minetest.sound_play("magicalities_charge")
|
||||||
|
return itemstack
|
||||||
|
end,
|
||||||
|
})
|
||||||
|
|
||||||
|
minetest.register_tool("magicalities:sword_tellium_rage", {
|
||||||
|
description = "Empowered Tellium Sword",
|
||||||
|
inventory_image = "magicalities_tellium_sword_rage.png",
|
||||||
|
tool_capabilities = {
|
||||||
|
full_punch_interval = 0.35,
|
||||||
|
max_drop_level = 1,
|
||||||
|
groupcaps = {
|
||||||
|
snappy = { times={ [1] = 0.95, [2] = 0.45, [3] = 0.15 }, uses = 10, maxlevel = 3 },
|
||||||
|
},
|
||||||
|
damage_groups = { fleshy = 16 },
|
||||||
|
},
|
||||||
|
sound = { breaks = "default_tool_breaks" },
|
||||||
|
groups = { sword = 1, not_in_creative_inventory = 1 },
|
||||||
|
on_secondary_use = function(itemstack, user, pointed_thing)
|
||||||
|
local w = itemstack:get_wear()
|
||||||
|
itemstack = ItemStack("magicalities:sword_tellium")
|
||||||
|
itemstack:set_wear(w)
|
||||||
|
minetest.sound_play("magicalities_discharge")
|
||||||
|
return itemstack
|
||||||
|
end,
|
||||||
|
})
|