public static void Start(Player player, Level level, Enemy enemy) { System.out.println(player.getCharName() + " Health: " + player.getHealth()); System.out.println(enemy.getName() + " " + enemy.getType() + " Health: " + enemy.getHealth()); System.out.println("Level: " + level.getLevelType()); int choice = ChooseAttacks(); CalculateDamage(choice, player, level, enemy); }
@Override public void onScannedRobot(ScannedRobotEvent event) { info = new EnemyInfo(en, getTime()); Enemy enemy = enemies.get(event.getName()); if (enemy == null) { enemy = new Enemy(event, this); enemies.put(enemy.getName(), enemy); storages.put(enemy.getName(), new VisitCountStorage()); } if (getTime() - enemy.getLastUpdated() < Costants.TIME_THRESHOLD && (enemy.getEnergy() - event.getEnergy()) > 0. && (enemy.getEnergy() - event.getEnergy()) < 3.1) { GBulletFiredEvent gBulletFiredEvent = new GBulletFiredEvent(); gBulletFiredEvent.setFiringRobot(enemy); gBulletFiredEvent.setEnergy(enemy.getEnergy() - event.getEnergy()); gBulletFiredEvent.setVelocity(20 - 3 * (enemy.getEnergy() - event.getEnergy())); gBulletFiredEvent.setFiringTime(getTime() - 1); gBulletFiredEvent.setFiringPosition(enemy.getPosition()); // TODO this or the updated one? gBulletFiredEvent.setTargetPosition(new Point2D.Double(getX(), getY())); org.pattern.utils.Utils.setWaveMAE(gBulletFiredEvent, getHeading(), getVelocity(), this); waves.addWave(gBulletFiredEvent); } enemy.updateEnemy(event, this); enemies.put(enemy.getName(), enemy); if (!meleeRadar) { Double radarTurn = getHeading() - getRadarHeading() + enemy.getBearing(); setTurnRadarRight(Utils.normalRelativeAngleDegrees(radarTurn)); } doShooting(); }