Beispiel #1
0
 public void FindPlayer() {
   if (!HerobrineAI.getPluginCore().getConfigDB().OnlyWalkingMode && !AICore.isTarget) {
     final int att_chance = new Random().nextInt(100);
     AICore.log.info("[HerobrineAI] Generating find chance...");
     if (((att_chance - (HerobrineAI.getPluginCore().getConfigDB().ShowRate * 4)) < 55)
         && (Bukkit.getServer().getOnlinePlayers().length > 0)) {
       AICore.log.info("[HerobrineAI] Finding target...");
       final Player[] AllOnPlayers = Bukkit.getServer().getOnlinePlayers();
       final int player_rolled = Util.getRandomPlayerNum();
       if (AllOnPlayers[player_rolled].getEntityId() != HerobrineAI.HerobrineEntityID) {
         if (HerobrineAI.getPluginCore()
                 .getConfigDB()
                 .useWorlds
                 .contains(AllOnPlayers[player_rolled].getLocation().getWorld().getName())
             && HerobrineAI.getPluginCore().canAttackPlayerNoMSG(AllOnPlayers[player_rolled])) {
           CancelTarget(Core.CoreType.ANY);
           AICore.PlayerTarget = AllOnPlayers[player_rolled];
           AICore.isTarget = true;
           AICore.log.info(
               "[HerobrineAI] Target founded, starting AI now! ("
                   + AICore.PlayerTarget.getName()
                   + ")");
           setCoreTypeNow(Core.CoreType.START);
           StartAI();
         } else {
           AICore.log.info(
               "[HerobrineAI] Target is in the safe world! ("
                   + AllOnPlayers[player_rolled].getLocation().getWorld().getName()
                   + ")");
           FindPlayer();
         }
       }
     }
   }
 }
Beispiel #2
0
 public void StartAI() {
   if (AICore.PlayerTarget.isOnline() && AICore.isTarget) {
     if (!AICore.PlayerTarget.isDead()) {
       final Object[] data = {AICore.PlayerTarget};
       final int chance = new Random().nextInt(100);
       if (chance <= 10) {
         if (HerobrineAI.getPluginCore().getConfigDB().UseGraveyardWorld) {
           AICore.log.info("[HerobrineAI] Teleporting target to Graveyard world.");
           getCore(Core.CoreType.GRAVEYARD).RunCore(data);
         }
       } else if (chance <= 25) {
         getCore(Core.CoreType.ATTACK).RunCore(data);
       } else {
         getCore(Core.CoreType.HAUNT).RunCore(data);
       }
     } else {
       CancelTarget(Core.CoreType.START);
     }
   } else {
     CancelTarget(Core.CoreType.START);
   }
 }
Beispiel #3
0
 public void DisappearEffect() {
   final Location ploc = AICore.PlayerTarget.getLocation();
   final Location hbloc1 = HerobrineAI.HerobrineNPC.getBukkitEntity().getLocation();
   hbloc1.setY(hbloc1.getY() + 1.0);
   final Location hbloc2 = HerobrineAI.HerobrineNPC.getBukkitEntity().getLocation();
   hbloc2.setY(hbloc2.getY() + 0.0);
   final Location hbloc3 = HerobrineAI.HerobrineNPC.getBukkitEntity().getLocation();
   hbloc3.setY(hbloc3.getY() + 0.5);
   final Location hbloc4 = HerobrineAI.HerobrineNPC.getBukkitEntity().getLocation();
   hbloc4.setY(hbloc4.getY() + 1.5);
   ploc.getWorld().playEffect(hbloc1, Effect.SMOKE, 80);
   ploc.getWorld().playEffect(hbloc2, Effect.SMOKE, 80);
   ploc.getWorld().playEffect(hbloc3, Effect.SMOKE, 80);
   ploc.getWorld().playEffect(hbloc4, Effect.SMOKE, 80);
   ploc.getWorld().playEffect(hbloc1, Effect.SMOKE, 80);
   ploc.getWorld().playEffect(hbloc2, Effect.SMOKE, 80);
   ploc.getWorld().playEffect(hbloc3, Effect.SMOKE, 80);
   ploc.getWorld().playEffect(hbloc4, Effect.SMOKE, 80);
   ploc.getWorld().playEffect(hbloc1, Effect.SMOKE, 80);
   ploc.getWorld().playEffect(hbloc2, Effect.SMOKE, 80);
   ploc.getWorld().playEffect(hbloc3, Effect.SMOKE, 80);
   ploc.getWorld().playEffect(hbloc4, Effect.SMOKE, 80);
   ploc.getWorld().playEffect(hbloc1, Effect.SMOKE, 80);
   ploc.getWorld().playEffect(hbloc2, Effect.SMOKE, 80);
   ploc.getWorld().playEffect(hbloc3, Effect.SMOKE, 80);
   ploc.getWorld().playEffect(hbloc4, Effect.SMOKE, 80);
   ploc.getWorld().playEffect(hbloc1, Effect.SMOKE, 80);
   ploc.getWorld().playEffect(hbloc2, Effect.SMOKE, 80);
   ploc.getWorld().playEffect(hbloc3, Effect.SMOKE, 80);
   ploc.getWorld().playEffect(hbloc4, Effect.SMOKE, 80);
   ploc.getWorld().playEffect(hbloc1, Effect.SMOKE, 80);
   ploc.getWorld().playEffect(hbloc2, Effect.SMOKE, 80);
   ploc.getWorld().playEffect(hbloc3, Effect.SMOKE, 80);
   ploc.getWorld().playEffect(hbloc4, Effect.SMOKE, 80);
   ploc.getWorld().playEffect(hbloc1, Effect.SMOKE, 80);
   ploc.getWorld().playEffect(hbloc2, Effect.SMOKE, 80);
   ploc.getWorld().playEffect(hbloc3, Effect.SMOKE, 80);
   ploc.getWorld().playEffect(hbloc4, Effect.SMOKE, 80);
   ploc.setY(-20.0);
   HerobrineAI.HerobrineNPC.moveTo(ploc);
 }