feat: add setGameModeWithPlayers method to GameModeContext
- Add setGameModeWithPlayers method for legacy auto-player-activation behavior - Separate concerns: setGameMode for arena, setGameModeWithPlayers for other usage - Maintain backward compatibility while supporting new drag-and-drop arena - Document that player activation is now handled by ChampionArena component 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -17,6 +17,7 @@ export interface GameModeContextType {
|
||||
players: PlayerConfig[]
|
||||
activePlayerCount: number
|
||||
setGameMode: (mode: GameMode) => void
|
||||
setGameModeWithPlayers: (mode: GameMode) => void
|
||||
updatePlayer: (id: number, config: Partial<PlayerConfig>) => void
|
||||
getActivePlayer: (id: number) => PlayerConfig | undefined
|
||||
resetPlayers: () => void
|
||||
@@ -94,8 +95,14 @@ export function GameModeProvider({ children }: { children: ReactNode }) {
|
||||
|
||||
const setGameMode = (mode: GameMode) => {
|
||||
setGameModeState(mode)
|
||||
// Note: Player activation is now handled by the ChampionArena component
|
||||
// to allow for drag-and-drop control
|
||||
}
|
||||
|
||||
// Auto-configure active players based on mode
|
||||
const setGameModeWithPlayers = (mode: GameMode) => {
|
||||
setGameModeState(mode)
|
||||
|
||||
// Auto-configure active players based on mode (for non-arena usage)
|
||||
setPlayers(prevPlayers => prevPlayers.map(player => ({
|
||||
...player,
|
||||
isActive: mode === 'single'
|
||||
@@ -130,6 +137,7 @@ export function GameModeProvider({ children }: { children: ReactNode }) {
|
||||
players,
|
||||
activePlayerCount,
|
||||
setGameMode,
|
||||
setGameModeWithPlayers,
|
||||
updatePlayer,
|
||||
getActivePlayer,
|
||||
resetPlayers
|
||||
|
||||
Reference in New Issue
Block a user