bool AIIdea::CanUseCharacter(const Character & character) { if (character.IsDead()) return false; bool can_change_character = GameMode::GetInstance()->AllowCharacterSelection() && (Game::GetInstance()->ReadState() == Game::PLAYING) && !Game::GetInstance()->IsCharacterAlreadyChosen(); return (character.IsActiveCharacter() || can_change_character); }