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,27 +483,27 @@ const PlayerMenu = ({
<ResetGame size={iconSize} /> <ResetGame size={iconSize} />
</button> </button>
{onForfeit && ( <button
<button style={{
style={{ cursor: 'pointer',
cursor: 'pointer', userSelect: 'none',
userSelect: 'none', fontSize: buttonFontSize,
fontSize: buttonFontSize, padding: '2px',
padding: '2px', }}
}} 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} /> >
</button> <Skull size={iconSize} />
)} </button>
</ButtonsSections> </ButtonsSections>
</BetterRowContainer> </BetterRowContainer>