Make forfeit button always visible in player menu

Changed forfeit button to always be visible instead of only when player can lose:
- Removed conditional check in LifeCounter (always passes onForfeit)
- Removed conditional rendering in PlayerMenu (button always shows)
- Button remains functional with safety check inside onClick handler

This makes it easier for players to forfeit at any time during the game.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Viktor Rådberg
2025-11-16 18:36:06 +01:00
parent 309eb47f7a
commit e0f50ac984
2 changed files with 17 additions and 17 deletions

View File

@@ -268,7 +268,7 @@ const LifeCounter = ({ player, opponents, matchScore }: LifeCounterProps) => {
isShown={showPlayerMenu} isShown={showPlayerMenu}
player={player} player={player}
setShowPlayerMenu={setShowPlayerMenu} setShowPlayerMenu={setShowPlayerMenu}
onForfeit={playerCanLose(player) ? toggleGameLost : undefined} onForfeit={toggleGameLost}
/> />
</LifeCounterWrapper> </LifeCounterWrapper>
</LifeCounterContentWrapper> </LifeCounterContentWrapper>

View File

@@ -483,7 +483,6 @@ const PlayerMenu = ({
<ResetGame size={iconSize} /> <ResetGame size={iconSize} />
</button> </button>
{onForfeit && (
<button <button
style={{ style={{
cursor: 'pointer', cursor: 'pointer',
@@ -493,17 +492,18 @@ const PlayerMenu = ({
}} }}
className="text-red-500" className="text-red-500"
onClick={() => { onClick={() => {
if (onForfeit) {
analytics.trackEvent('forfeit_game', { analytics.trackEvent('forfeit_game', {
player: player.index, player: player.index,
}); });
onForfeit(); onForfeit();
setShowPlayerMenu(false); setShowPlayerMenu(false);
}
}} }}
aria-label="Forfeit Game" aria-label="Forfeit Game"
> >
<Skull size={iconSize} /> <Skull size={iconSize} />
</button> </button>
)}
</ButtonsSections> </ButtonsSections>
</BetterRowContainer> </BetterRowContainer>