mirror of
https://github.com/redstrate/Kawari.git
synced 2025-06-30 11:47:45 +00:00

* Reimplement !unlockaction in Lua Rebased on upstream master * Unlockaction: display the action id that was unlocked * Reimplement GM speed in Lua * Fix warnings and errors * Run cargo fmt * Reimplement GM wireframe in Lua * Reimplement GM invis command, with a caveat It can't toggle the invis state yet, and I'm not sure where to update it. * Lua invis: add the gm_invisible toggle, but it still doesn't revert back to false... * Reimplement GM aetheryte in Lua, with a caveat It's seemingly not working right now though: it doesn't add any new aetherytes to the teleport menu. But I can't get the command `//gm aetheryte on X` to do it either, so it's possible Kawari isn't responding correctly? Either way this needs further testing. * Lua invis: add the forgotten Lua file * Reimplement GM teri in Lua Also add a TODO for UnlockAetheryte * Make comment in lua.rs more useful * Run cargo fmt again * Teri: range check the territory ID * Update USAGE.md to reflect the new commands Rebased on upstream master * Clarify unlockaetheryte USAGE and in-script usage * Refactor UnlockAetheryte.lua, and make ToggleInvisibility actually work properly. I opted to create a Task for this, because sticking it in kawari-world.rs felt like a hack to me. * Run cargo fmt for hopefully the last time today * Move lua.ra:toggle_invisibility down with the other queued tasks * Fix spaces in USAGE.md, remove stray rebase message
26 lines
955 B
Lua
26 lines
955 B
Lua
required_rank = GM_RANK_DEBUG
|
|
|
|
function onCommand(args, player)
|
|
local parts = split(args)
|
|
local argc = table.getn(parts)
|
|
local sender = "[setspeed] "
|
|
local usage = "\nThis command sets the user's speed to a desired multiplier.\nUsage: !setspeed <multiplier>"
|
|
local SPEED_MAX = 10 -- Arbitrary, but it's more or less unplayable even at this amount
|
|
local speed_multiplier = tonumber(parts[1])
|
|
|
|
if argc == 1 and not speed_multiplier then
|
|
player:send_message(sender.."Error parsing speed multiplier! Make sure the multiplier is an integer."..usage)
|
|
return
|
|
elseif argc == 0 then
|
|
speed_multiplier = 1
|
|
end
|
|
|
|
if speed_multiplier <= 0 then
|
|
speed_multiplier = 1
|
|
elseif speed_multiplier > SPEED_MAX then
|
|
speed_multiplier = SPEED_MAX
|
|
end
|
|
|
|
player:set_speed(speed_multiplier)
|
|
player:send_message(string.format("%sSpeed multiplier set to %s.", sender, speed_multiplier))
|
|
end
|