Move chatcommands to separate files.
parent
20f5cd39c9
commit
a934de42da
|
@ -0,0 +1,42 @@
|
|||
minetest.register_chatcommand("duel", {
|
||||
params = "<player name>",
|
||||
description = "Challenge a player to a duel",
|
||||
func = function(caller, param)
|
||||
if caller == param then
|
||||
return false, "You can't have a duel with yourself"
|
||||
end
|
||||
|
||||
local player = minetest.get_player_by_name(param)
|
||||
if not player then
|
||||
return false, "Player:"..param.." not found."
|
||||
end
|
||||
|
||||
if duel.challenge(caller, param) then
|
||||
return true, "You have challenged "..param.." to a duel"
|
||||
else
|
||||
return false, "Duel already in progres"
|
||||
end
|
||||
end,
|
||||
})
|
||||
|
||||
minetest.register_chatcommand("duel_accept", {
|
||||
description = "Accept a duel",
|
||||
func = function(caller, param)
|
||||
if duel.accept(caller) then
|
||||
return true, "You have accepted the challenge"
|
||||
else
|
||||
return false, "No-one has challenged you to a duel"
|
||||
end
|
||||
end,
|
||||
})
|
||||
|
||||
minetest.register_chatcommand("duel_abandon", {
|
||||
description = "Abandon a duel before one of the players dies (causes you to lose)",
|
||||
func = function(caller, param)
|
||||
if duel.lose(caller) then
|
||||
return true, "You have abandon a duel"
|
||||
else
|
||||
return false, "You are not in a duel"
|
||||
end
|
||||
end,
|
||||
})
|
|
@ -0,0 +1,50 @@
|
|||
core.register_chatcommand("forceduel", {
|
||||
params = "<player name>",
|
||||
description = "Force a player to duel",
|
||||
func = function(caller, param)
|
||||
local player = minetest.get_player_by_name(param)
|
||||
if not player then
|
||||
return false, "Player:"..param.." not found."
|
||||
end
|
||||
|
||||
if duel.challenge(caller, param) then
|
||||
duel.accept(param)
|
||||
return true, "You have challenged "..param.." to a duel"
|
||||
else
|
||||
return false, "Duel already in progres"
|
||||
end
|
||||
end,
|
||||
})
|
||||
|
||||
core.register_chatcommand("setstate", {
|
||||
description = "set duel state",
|
||||
func = function(caller, param)
|
||||
duel_data.state = param
|
||||
return true, "done"
|
||||
end,
|
||||
})
|
||||
|
||||
core.register_chatcommand("restore", {
|
||||
description = "restore inventory",
|
||||
func = function(caller, param)
|
||||
local player = minetest.get_player_by_name(caller)
|
||||
restore_player_inv(player)
|
||||
return true, "done"
|
||||
end,
|
||||
})
|
||||
|
||||
core.register_chatcommand("save", {
|
||||
description = "save inventory",
|
||||
func = function(caller, param)
|
||||
local player = minetest.get_player_by_name(caller)
|
||||
save_player_inv(player)
|
||||
return true, "done"
|
||||
end,
|
||||
})
|
||||
core.register_chatcommand("dump", {
|
||||
description = "dump data",
|
||||
func = function(caller, param)
|
||||
print(dump(duel_data))
|
||||
return true, "done"
|
||||
end,
|
||||
})
|
72
init.lua
72
init.lua
|
@ -1,5 +1,7 @@
|
|||
duel = {}
|
||||
|
||||
local modpath = minetest.get_modpath("duel")
|
||||
|
||||
-- TODO: use a setting for this
|
||||
duel.pos1={x=0,y=0,z=0}
|
||||
duel.pos2={x=10,y=0,z=10}
|
||||
|
@ -186,72 +188,8 @@ minetest.register_on_respawnplayer(function(player)
|
|||
end)
|
||||
|
||||
-- Register chat commands
|
||||
core.register_chatcommand("duel", {
|
||||
params = "<player name>",
|
||||
description = "Challenge a player to a duel",
|
||||
func = function(caller, param)
|
||||
if caller == param then
|
||||
return false, "You can't have a duel with yourself"
|
||||
end
|
||||
|
||||
local player = minetest.get_player_by_name(param)
|
||||
if not player then
|
||||
return false, "Player:"..param.." not found."
|
||||
end
|
||||
|
||||
if duel.challenge(caller, param) then
|
||||
return true, "You have challenged "..param.." to a duel"
|
||||
else
|
||||
return false, "Duel already in progres"
|
||||
end
|
||||
end,
|
||||
})
|
||||
|
||||
core.register_chatcommand("duel_accept", {
|
||||
description = "Accept a duel",
|
||||
func = function(caller, param)
|
||||
if duel.accept(caller) then
|
||||
return true, "You have accepted the challenge"
|
||||
else
|
||||
return false, "No-one has challenged you to a duel"
|
||||
end
|
||||
end,
|
||||
})
|
||||
|
||||
core.register_chatcommand("duel_abandon", {
|
||||
description = "Abandon a duel before one of the players dies (causes you to lose)",
|
||||
func = function(caller, param)
|
||||
if duel.lose(caller) then
|
||||
return true, "You have abandon a duel"
|
||||
else
|
||||
return false, "You are not in a duel"
|
||||
end
|
||||
end,
|
||||
})
|
||||
|
||||
if dev_mode then
|
||||
core.register_chatcommand("restore", {
|
||||
description = "restore inventory",
|
||||
func = function(caller, param)
|
||||
local player = minetest.get_player_by_name(caller)
|
||||
restore_player_inv(player)
|
||||
return true, "done"
|
||||
end,
|
||||
})
|
||||
|
||||
core.register_chatcommand("save", {
|
||||
description = "save inventory",
|
||||
func = function(caller, param)
|
||||
local player = minetest.get_player_by_name(caller)
|
||||
save_player_inv(player)
|
||||
return true, "done"
|
||||
end,
|
||||
})
|
||||
core.register_chatcommand("dump", {
|
||||
description = "dump data",
|
||||
func = function(caller, param)
|
||||
print(dump(duel_data))
|
||||
return true, "done"
|
||||
end,
|
||||
})
|
||||
dofile(modpath.."chatcommands")
|
||||
if dev_mode then
|
||||
dofile(modpath.."dev_chatcommands")
|
||||
end
|
Loading…
Reference in New Issue