diff --git a/lua/server/event.lua b/lua/server/event.lua index 2abb7bbf2841eb1e9387b959dc56616f3bcf9b6a..78fe463aa1f40fd473914034ff67c493db12c8a7 100644 --- a/lua/server/event.lua +++ b/lua/server/event.lua @@ -19,6 +19,7 @@ fk.EventPhaseEnd = 6 fk.AfterPhaseEnd = 86 fk.EventPhaseChanging = 7 fk.EventPhaseSkipping = 8 +fk.EventPhaseSkipped = 101 fk.BeforeCardsMove = 9 fk.AfterCardsMove = 10 @@ -149,4 +150,4 @@ fk.AfterPlayerRevived = 95 -- 99 = AfterAskForCardResponse -- 100 = AfterAskForNullification -fk.NumOfEvents = 101 +fk.NumOfEvents = 102 diff --git a/lua/server/serverplayer.lua b/lua/server/serverplayer.lua index f3548bf57f816b9cd590f38ce81e24d9cde50984..7d70c448fd8895a5e9034a423d54cde1e2f81ff1 100644 --- a/lua/server/serverplayer.lua +++ b/lua/server/serverplayer.lua @@ -417,7 +417,7 @@ function ServerPlayer:gainAnExtraPhase(phase, delay) local cancel_skip = true if phase ~= Player.NotActive and (skip) then - cancel_skip = logic:trigger(fk.EventPhaseSkipping, self) + cancel_skip = logic:trigger(fk.EventPhaseSkipping, self, phase) end if (not skip) or (cancel_skip) then room:sendLog{ @@ -439,6 +439,7 @@ function ServerPlayer:gainAnExtraPhase(phase, delay) from = self.id, arg = Util.PhaseStrMapper(phase), } + logic:trigger(fk.EventPhaseSkipped, self, phase) end self.phase = current @@ -501,7 +502,7 @@ function ServerPlayer:play(phase_table) local cancel_skip = true if phases[i] ~= Player.NotActive and (skip) then - cancel_skip = logic:trigger(fk.EventPhaseSkipping, self) + cancel_skip = logic:trigger(fk.EventPhaseSkipping, self, self.phase) end if (not skip) or (cancel_skip) then @@ -512,6 +513,7 @@ function ServerPlayer:play(phase_table) from = self.id, arg = Util.PhaseStrMapper(self.phase), } + logic:trigger(fk.EventPhaseSkipped, self, self.phase) end end end