@Override public boolean fightShouldContinue(final BasicFight<? extends BasicCharacterInfo> fight) { boolean enoughTeamsLeft = false; boolean playerPresent = false; final TByteHashSet remainingTeams = new TByteHashSet(); final Collection<? extends BasicCharacterInfo> inPlayFighters = fight.getInPlayOrSimulatingFighters(); for (final BasicCharacterInfo f : inPlayFighters) { if (f.getTeamId() == -1) { EnoughTeamWithPlayersOrCompanionLeftChecker.m_logger.error( (Object) fight.withFightId( "[FIGHT_REFACTOR] On a un fighter inPlay avec un teamId \u00e0 -1 " + f + " - " + ExceptionFormatter.currentStackTrace(8))); } else { remainingTeams.add(f.getTeamId()); enoughTeamsLeft |= (remainingTeams.size() >= fight.getMinTeam()); playerPresent |= (f.getType() == 0 || f.getType() == 5); if (playerPresent && enoughTeamsLeft) { break; } continue; } } return enoughTeamsLeft && playerPresent; }