local Action_PlayerDead = { -- 可配置参数定义,参数将显示在Action配置面板 -- 例: -- MyIntParameter = 0 DeadPlayerKey = 0; KillerPlayerKey = 0; } -- 触发器激活时,将执行Action的Execute function Action_PlayerDead:Execute(...) -- 通知 UGCLogSystem.Log("[Action_PlayerDead:Execute] 玩家 %s 被 %s 击杀", tostring(self.DeadPlayerKey), tostring(self.KillerPlayerKey)); GameState:OnPlayerDead(self.DeadPlayerKey, self.KillerPlayerKey); UGCEventSystem.SendEvent(EventTypes.PlayerDead, self.DeadPlayerKey, self.KillerPlayerKey); if IsClient then if not table.isEmpty(UE.SpawnedEmitters) and not table.isEmpty(UE.SpawnedEmitters[self.DeadPlayerKey]) then for i, v in pairs(UE.SpawnedEmitters[self.DeadPlayerKey]) do v:SetHiddenInGame(true, true); v:K2_DestroyComponent(v); end UE.SpawnedEmitters[self.DeadPlayerKey] = {}; end end return true; end --[[ -- 需要勾选Action的EnableTick,才会执行Update -- 触发器激活后,将在每个tick执行Action的Update,直到self.bEnableActionTick为false function Action_PlayerDead:Update(DeltaSeconds) end ]] return Action_PlayerDead