Local reset for admins

This commit is contained in:
ZioPao
2024-03-28 19:12:56 +01:00
parent a8956df057
commit b1f12e55a1
7 changed files with 70 additions and 8 deletions

View File

@@ -0,0 +1,31 @@
local CommandsData = require("TOC/CommandsData")
---@param playerNum number
---@param context ISContextMenu
---@param items any
local function AddAdminTocOptions(playerNum, context, items)
if not isAdmin() then return end
-- This is a global var already handled in vanilla zomboid, we don't need to find the player once again
---@cast clickedPlayer IsoPlayer
if clickedPlayer then
local clickedPlayerNum = clickedPlayer:getOnlineID()
local option = context:addOption(getText("ContextMenu_Admin_TOC"), items, nil)
local subMenu = ISContextMenu:getNew(context)
context:addSubMenu(option, subMenu)
subMenu:addOption(getText("ContextMenu_Admin_ResetTOC"), items, function()
sendClientCommand(CommandsData.modules.TOC_RELAY, CommandsData.server.Relay.RelayExecuteInitialization, {patientNum=clickedPlayerNum} )
end)
-- TODO add other options
end
end
Events.OnFillWorldObjectContextMenu.Add(AddAdminTocOptions)