From d3aed7242af4b365921de542afedf1c5c0379ae8 Mon Sep 17 00:00:00 2001 From: xxyheaven <1433191064@qq.com> Date: Sat, 10 Jun 2023 20:54:48 +0800 Subject: [PATCH] fix bug (#187) fix GameEvent:searchEvents --- lua/server/gameevent.lua | 2 +- lua/server/gamelogic.lua | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lua/server/gameevent.lua b/lua/server/gameevent.lua index 2ea21a0d..b3ac7b60 100644 --- a/lua/server/gameevent.lua +++ b/lua/server/gameevent.lua @@ -121,7 +121,7 @@ end ---@return GameEvent[] @ 找到的符合条件的所有事件,最多n个但不保证有n个 function GameEvent:searchEvents(eventType, n, func, endEvent) local logic = self.room.logic - local events = logic.event_recorder[eventType] + local events = logic.event_recorder[eventType] or Util.DummyTable local from = self.id local to = endEvent and endEvent.id or self.end_id if to == -1 then to = #logic.all_game_events end diff --git a/lua/server/gamelogic.lua b/lua/server/gamelogic.lua index 61c42eaf..64dd3a8d 100644 --- a/lua/server/gamelogic.lua +++ b/lua/server/gamelogic.lua @@ -473,11 +473,11 @@ function GameLogic:getEventsOfScope(eventType, n, func, scope) if scope == Player.HistoryGame then start_event = self.all_game_events[1] elseif scope == Player.HistoryRound then - start_event = event:findParent(GameEvent.Round) + start_event = event:findParent(GameEvent.Round, true) elseif scope == Player.HistoryTurn then - start_event = event:findParent(GameEvent.Turn) + start_event = event:findParent(GameEvent.Turn, true) elseif scope == Player.HistoryPhase then - start_event = event:findParent(GameEvent.Phase) + start_event = event:findParent(GameEvent.Phase, true) end return start_event:searchEvents(eventType, n, func)