Esempio n. 1
0
 public void getSignals() {
   Signal[] queue = rc.emptySignalQueue();
   for (Signal signal : queue) {
     if (signal.getTeam() == myTeam) {
       if (signal.getMessage() != null) {
         if (signal.getMessage()[0] == 0xdead && signal.getMessage()[1] == 0xbeef) {
           heiarchy--;
           continue;
         }
         MessageSignal msgSig = new MessageSignal(signal);
         switch (msgSig.getMessageType()) {
           case ROBOT:
             if (msgSig.getPingedTeam() == Team.NEUTRAL) {
               rc.setIndicatorString(0, "Found neutral");
               if (msgSig.getPingedLocation().distanceSquaredTo(rc.getLocation()) < 40) {
                 goalLocation = msgSig.getPingedLocation();
               }
             }
             if (msgSig.getPingedType() == RobotType.ARCHON
                 && msgSig.getPingedTeam() == myTeam.opponent()) {
               rc.setIndicatorString(0, "Found enemy Archon");
               foundEnemyArchon = true;
               sentGoal = false;
               enemyArchon = msgSig.getPingedLocation();
             }
             if (msgSig.getPingedType() == RobotType.ZOMBIEDEN) {
               rc.setIndicatorString(2, "Found Zombie Den");
               knownZombieDenLocations.add(msgSig.getPingedLocation());
               foundZombieDen = true;
             }
             break;
           case PARTS:
             break;
           default:
             break;
         }
       }
     }
   }
 }