generated from jasonl8446/minetest-boilerplate
Added enchant chatcommand
This commit is contained in:
parent
e394d46af3
commit
639e5e5ae4
32
enchants.lua
32
enchants.lua
@ -1,3 +1,5 @@
|
|||||||
|
local modname = minetest.get_current_modname()
|
||||||
|
local S = minetest.get_translator(modname)
|
||||||
-- TODO:
|
-- TODO:
|
||||||
-- Make sure enchantment is an enchantment
|
-- Make sure enchantment is an enchantment
|
||||||
-- Make sure level is a number
|
-- Make sure level is a number
|
||||||
@ -6,6 +8,7 @@ function tool_level_enchanting.set_enchantment(itemstack,enchantment_name,level)
|
|||||||
itemmeta:set_string(enchantment_name,level)
|
itemmeta:set_string(enchantment_name,level)
|
||||||
return itemstack
|
return itemstack
|
||||||
end
|
end
|
||||||
|
|
||||||
-- Unbreaking
|
-- Unbreaking
|
||||||
-- 10% chance per level of not using durability each use
|
-- 10% chance per level of not using durability each use
|
||||||
-- (Level 10, tool takes no durability usage)
|
-- (Level 10, tool takes no durability usage)
|
||||||
@ -32,4 +35,31 @@ end
|
|||||||
-- Auto repairs every few seconds
|
-- Auto repairs every few seconds
|
||||||
-- Max Level 5
|
-- Max Level 5
|
||||||
-- Will work simularly to a compass/clock does
|
-- Will work simularly to a compass/clock does
|
||||||
-- Not sure how much per level to repair yet
|
-- Not sure how much per level to repair yet
|
||||||
|
|
||||||
|
-- TODO:
|
||||||
|
-- Make sure enchantment is an enchantment
|
||||||
|
-- Make sure level is a number
|
||||||
|
minetest.register_chatcommand("enchant", {
|
||||||
|
description = S("Enchant an item"),
|
||||||
|
params = S("<player> <enchantment> [<level>]"),
|
||||||
|
privs = {give = true},
|
||||||
|
func = function(_, param)
|
||||||
|
local sparam = param:split(" ")
|
||||||
|
local player = sparam[1]
|
||||||
|
local enchantment = sparam[2]
|
||||||
|
local level = sparam[3]
|
||||||
|
-- Makes sure target name or enchant is not null
|
||||||
|
if not player or not enchantment then
|
||||||
|
return false, S("Usage: /enchant @1", params)
|
||||||
|
end
|
||||||
|
local target = minetest.get_player_by_name(player)
|
||||||
|
-- Makes sure player exists
|
||||||
|
if not target then
|
||||||
|
return false, S("Player @1 can not be found.", player)
|
||||||
|
end
|
||||||
|
local itemstack = target:get_wielded_item()
|
||||||
|
target:set_wielded_item(tool_level_enchanting.set_enchantment(itemstack,enchantment,level or 1))
|
||||||
|
return true, S("Enchantment Successful")
|
||||||
|
end
|
||||||
|
})
|
Loading…
x
Reference in New Issue
Block a user