fix: highestcount doesnt reveal when guessed correctly
This commit is contained in:
@@ -31,9 +31,8 @@ class FirstGuessGui(FirstGuess):
|
|||||||
|
|
||||||
def calculate_score(self, item: ItemShare) -> int:
|
def calculate_score(self, item: ItemShare) -> int:
|
||||||
result = super().calculate_score(item)
|
result = super().calculate_score(item)
|
||||||
elapsed = self.game.elapsedSeconds
|
|
||||||
if result:
|
if result:
|
||||||
self.game.guessed.emit(item.user.username, elapsed)
|
self.game.guessed.emit(item.user.username, self.game.elapsedSeconds)
|
||||||
self.game.end()
|
self.game.end()
|
||||||
return result
|
return result
|
||||||
|
|
||||||
@@ -46,11 +45,11 @@ class FirstThenHighestGui(FirstThenHighest):
|
|||||||
def calculate_score(self, item: ItemShare) -> int:
|
def calculate_score(self, item: ItemShare) -> int:
|
||||||
previous_max = self.highest.max
|
previous_max = self.highest.max
|
||||||
result = super().calculate_score(item)
|
result = super().calculate_score(item)
|
||||||
elapsed = self.game.elapsedSeconds
|
|
||||||
if result:
|
if result:
|
||||||
self.game.guessed.emit(item.user.username, elapsed)
|
self.game.reveal()
|
||||||
|
self.game.guessed.emit(item.user.username, self.game.elapsedSeconds)
|
||||||
if previous_max is not self.highest.max:
|
if previous_max is not self.highest.max:
|
||||||
self.game.highest.emit(item.user.username, elapsed)
|
self.game.highest.emit(item.user.username, item.count)
|
||||||
return result
|
return result
|
||||||
|
|
||||||
|
|
||||||
@@ -89,14 +88,18 @@ class GameService(QObject):
|
|||||||
|
|
||||||
self.m_game = Game(session, listening_channels=[ChitChatChannelType.ChannelTeam])
|
self.m_game = Game(session, listening_channels=[ChitChatChannelType.ChannelTeam])
|
||||||
self.m_started_at: datetime | None = None
|
self.m_started_at: datetime | None = None
|
||||||
self.m_revealed_at: datetime | None = None
|
self.m_revealed: bool = False
|
||||||
|
|
||||||
@Slot(int, int)
|
@Slot(int, int)
|
||||||
def start(self, item_id: int, mode: int):
|
def start(self, item_id: int, mode: int):
|
||||||
mode = GameScoring(mode)
|
mode = GameScoring(mode)
|
||||||
self.m_game.start(item_id, mode.as_scoring(self))
|
self.m_game.start(item_id, mode.as_scoring(self))
|
||||||
self.m_started_at = datetime.now()
|
self.m_started_at = datetime.now()
|
||||||
self.m_revealed_at = None
|
self.m_revealed = False
|
||||||
|
self.stateChanged.emit()
|
||||||
|
|
||||||
|
def reveal(self):
|
||||||
|
self.m_revealed = True
|
||||||
self.stateChanged.emit()
|
self.stateChanged.emit()
|
||||||
|
|
||||||
@Slot()
|
@Slot()
|
||||||
@@ -110,7 +113,7 @@ class GameService(QObject):
|
|||||||
case GameIdle():
|
case GameIdle():
|
||||||
return GameState.Ended
|
return GameState.Ended
|
||||||
case GameOngoing():
|
case GameOngoing():
|
||||||
if self.m_revealed_at is None:
|
if not self.m_revealed:
|
||||||
return GameState.Hidden
|
return GameState.Hidden
|
||||||
return GameState.Revealed
|
return GameState.Revealed
|
||||||
case _:
|
case _:
|
||||||
|
|||||||
Reference in New Issue
Block a user