예제 #1
0
 @Override
 public HashMap<String, Integer> getInfo(GameObjectID id) throws BozorgExceptionBase {
   HashMap<String, Integer> ret = new HashMap<String, Integer>();
   if (objects.get(id.getNumber()).getClass().equals(Fan.class)) {
     Fan f = (Fan) objects.get(id.getNumber());
     ret.put(JudgeAbstract.ROW, f.x);
     ret.put(JudgeAbstract.COL, f.y);
     ret.put(JudgeAbstract.OWNER, f.owner.getName());
     if (f.isAlive) ret.put(JudgeAbstract.IS_ALIVE, JudgeAbstract.ALIVE);
     else ret.put(JudgeAbstract.IS_ALIVE, JudgeAbstract.DEAD);
   }
   if (objects.get(id.getNumber()).getClass().equals(Player.class)) {
     Player p = (Player) objects.get(id.getNumber());
     ret.put(JudgeAbstract.ROW, p.x);
     ret.put(JudgeAbstract.COL, p.y);
     ret.put(JudgeAbstract.SPEED, p.getSpeed());
     ret.put(JudgeAbstract.NAME, p.getName());
     if (Judge.winner == 4) ret.put(JudgeAbstract.IS_WINNER, JudgeAbstract.NOT_FINISHED);
     else if (Judge.winner == p.getName()) ret.put(JudgeAbstract.IS_WINNER, JudgeAbstract.WINS);
     else ret.put(JudgeAbstract.IS_WINNER, JudgeAbstract.LOST);
     ret.put(JudgeAbstract.POWER, p.getPower());
     ret.put(JudgeAbstract.VISION, p.getVision());
     ret.put(JudgeAbstract.FANS, p.getFans());
     if (p.getHp() > 0) ret.put(JudgeAbstract.IS_ALIVE, JudgeAbstract.ALIVE);
     else ret.put(JudgeAbstract.IS_ALIVE, JudgeAbstract.DEAD);
     ret.put(JudgeAbstract.HEALTH, Math.max(p.getHp(), 0));
   }
   return ret;
 }