Bob sheninagans and relay

This commit is contained in:
ZioPao
2023-11-13 16:37:53 +01:00
parent 8fde83c049
commit 3d6144cfcd
7 changed files with 127 additions and 20 deletions

View File

@@ -0,0 +1,39 @@
local CommandsData = require("TOC/CommandsData")
local AmputationHandler = require("TOC/Handlers/AmputationHandler")
--------------------------------------------
local ClientRelayCommands = {}
---comment
---@param limbName any
---@param surgeonNum any
---@return AmputationHandler
local function InitAmputationHandler(limbName, surgeonNum)
-- TODO Pretty unclean
local surgeonPl = getSpecificPlayer(surgeonNum)
local handler = AmputationHandler:new(limbName, surgeonPl)
return handler
end
---comment
---@param args receiveDamageDuringAmputationParams
function ClientRelayCommands.ReceiveDamageDuringAmputation(args)
local handler = InitAmputationHandler(args.limbName, args.surgeonNum)
handler:damageDuringAmputation()
end
---@param args receiveExecuteAmputationActionParams
function ClientRelayCommands.ReceiveExecuteAmputationAction(args)
local handler = InitAmputationHandler(args.limbName, args.surgeonNum)
handler:execute(true)
end
-------------------------
local function OnServerRelayCommand(module, command, args)
if module == CommandsData.modules.TOC_ACTION and ClientRelayCommands[command] then
ClientRelayCommands[command](args)
end
end
Events.OnServerCommand.Add(OnServerRelayCommand)