Code:
private void startGame() {
try {
if (playersInLobby() < PLAYERS_REQUIRED) {
waitTimer = WAIT_TIMER;
return;
}
gameStarted = true;
Iterator<EntityData> iterator = waitingRoom.keySet().iterator();
while (iterator.hasNext()) {
EntityData player = iterator.next();
int team = waitingRoom.get(player);
if (player == null) {
continue;
}
player.getPA().movePlayer(2505, 4712, 0);
if (!player.inRaidsLobby() && waitingRoom.containsKey(player)) {
waitingRoom.remove(player);
}
gamePlayers.put(player, team);
player.sendMessage("The Raids Minigame has begun!");
player.raidsAfkTimer = 0;
}
waitingRoom.clear();
waitTimer = 0;
} catch (Exception e) {
try {
cleanUp();
Iterator<EntityData> iterator = waitingRoom.keySet().iterator();
EntityData player = iterator.next();
if (player != null) {
player.sendMessage("The Raids Minigame needed to be repaired, it should be fixed now.");
player.getPA().movePlayer(2520, 3313, 0);
waitingRoom.remove(player);
}
System.err.println("Raids fixed.");
} catch (Exception e2) {
}
}
}
This method kept throwing errors.
So i rewrote it to this:
Code:
private void startGame() {
try {
if (playersInLobby() < PLAYERS_REQUIRED) {
waitTimer = WAIT_TIMER;
return;
}
gameStarted = true;
for (EntityData player : waitingRoom.keySet()) {
int team = waitingRoom.get(player);
if (player == null) {
continue;
}
player.getPA().movePlayer(2505, 4712, 0);
if (!player.inRaidsLobby() && waitingRoom.containsKey(player)) {
waitingRoom.remove(player);
}
gamePlayers.put(player, team);
player.sendMessage("The Raids Minigame has begun!");
player.raidsAfkTimer = 0;
}
waitingRoom.clear();
waitTimer = 0;
} catch (Exception e) {
try {
JOptionPane.showMessageDialog(parent, "Raids Malfunctioned.");
} catch (Exception e2) {
}
}
}
Will my new method throw less errrors?