Beispiel #1
0
 /** The ticker, called every second. */
 public void process() {
   if (getAttribute(0)) {
     if (tick <= 0) {
       for (Player player : getPlayers(GameType.ACTIVE)) {
         player.teleport(new Position(2440, 3090, 0), false);
         player.getInterfaceSet().openWalkable(-1);
       }
       setAttribute(0, false);
       clear(GameType.ACTIVE);
     } else {
       ArrayList<Player> players = getPlayers(GameType.ACTIVE);
       if (getAttribute(1)) {
         for (Player player : players) {
           sendConfig(player);
         }
         setAttribute(1, false);
       }
       if (getAttribute(2)) {
         int time = tick / 60 == 0 ? 1 : tick / 60;
         for (Player player : players) {
           player.send(new ConfigEvent(380, time));
         }
         for (Player player : getPlayers(GameType.WAITING)) {
           player.send(new ConfigEvent(380, time));
         }
         setAttribute(2, false);
       }
       if (getAttribute(3)) {
         for (Player player : players) {
           updateFlag(player, Team.SARADOMIN);
         }
         setAttribute(3, false);
       }
       if (getAttribute(4)) {
         for (Player player : players) {
           updateFlag(player, Team.ZAMORAK);
         }
         setAttribute(4, false);
       }
       tick--;
     }
   } else if (tick <= 0) {
     for (Player player : getPlayers(GameType.WAITING)) {
       Team team = getTeam(player, GameType.WAITING);
       if (addPlayer(team, GameType.ACTIVE, player)) {
         player.teleport(teams.get(team).getGame(), false);
       }
     }
     setAttribute(0, true);
     clear(GameType.WAITING);
   } else {
     if (getAttribute(2)) {
       int time = tick / 60 == 0 ? 1 : tick / 60;
       for (Player player : getPlayers(GameType.WAITING)) {
         player.send(new ConfigEvent(380, time));
       }
       setAttribute(2, false);
     }
     tick--;
   }
 }