@Override public void schedule() { ControlImpl controlSkill = myPet.getSkills().get(ControlImpl.class); if (controlSkill.getLocation(false) != null && moveTo != controlSkill.getLocation(false)) { start(); } timeToMove--; } }
private Projectile getProjectile() { Ranged rangedSkill = myPet.getSkills().get(Ranged.class); if (rangedSkill.isActive()) { return rangedSkill.getProjectile().getValue(); } return Projectile.Arrow; }
@Override public boolean shouldStart() { if (!this.myPet.getEntity().get().canMove()) { return false; } ControlImpl controlSkill = myPet.getSkills().get(ControlImpl.class); if (controlSkill == null || !controlSkill.getActive().getValue()) { return false; } return controlSkill.getLocation(false) != null; }
@Override public boolean shouldFinish() { if (!this.myPet.getEntity().get().canMove()) { return true; } ControlImpl controlSkill = myPet.getSkills().get(ControlImpl.class); if (!controlSkill.getActive().getValue()) { return true; } if (moveTo == null) { return true; } if (MyPetApi.getPlatformHelper().distance(myPet.getLocation().get(), moveTo) < 1) { return true; } if (timeToMove <= 0) { return true; } if (this.stopControl) { return true; } return false; }
Ride rideSkill = myPet.getSkills().get(RideImpl.class); if (rideSkill == null || !rideSkill.getActive().getValue()) { this.passenger.mount(null);
@Override public boolean shouldFinish() { if (!entityMyPet.hasTarget() || myPet.getRangedDamage() <= 0 || !entityMyPet.canMove()) { return true; } if (this.target.getBukkitEntity() != this.entityMyPet.getTarget()) { return true; } double meleeDamage = myPet.getDamage(); if (meleeDamage > 0 && this.entityMyPet.f(target.locX, target.boundingBox.b, target.locZ) < 4) { Ranged rangedSkill = myPet.getSkills().get(Ranged.class); if (meleeDamage > rangedSkill.getDamage().getValue().doubleValue()) { return true; } } return false; }
@Override public void start() { nav.getParameters().addSpeedModifier("Control", speedModifier); ControlImpl controlSkill = myPet.getSkills().get(ControlImpl.class); moveTo = controlSkill.getLocation(); if (moveTo.getWorld() != myPet.getLocation().get().getWorld()) { stopControl = true; moveTo = null; return; } timeToMove = (int) MyPetApi.getPlatformHelper().distance(myPet.getLocation().get(), moveTo) / 3; timeToMove = timeToMove < 3 ? 3 : timeToMove; if (!isRunning) { Timer.addTask(this); isRunning = true; } if (!nav.navigateTo(moveTo)) { moveTo = null; } }
@Override public boolean shouldStart() { Behavior behaviorSkill = myPet.getSkills().get(Behavior.class); if (!behaviorSkill.isActive() || behaviorSkill.getBehavior() != BehaviorMode.Duel) { return false; if (!targetMyPet.getSkills().isActive(BehaviorImpl.class) || !targetMyPet.getEntity().get().canMove()) { continue; BehaviorImpl targetbehavior = targetMyPet.getSkills().get(BehaviorImpl.class); if (targetbehavior.getBehavior() != BehaviorMode.Duel) { continue;
@Override public boolean shouldStart() { if (myPet.getRangedDamage() <= 0) { return false; } if (!entityMyPet.canMove()) { return false; } if (!entityMyPet.hasTarget()) { return false; } EntityLiving target = ((CraftLivingEntity) this.entityMyPet.getTarget()).getHandle(); double meleeDamage = myPet.getDamage(); if (meleeDamage > 0 && this.entityMyPet.f(target.locX, target.boundingBox.b, target.locZ) < 4) { Ranged rangedSkill = myPet.getSkills().get(Ranged.class); if (meleeDamage > rangedSkill.getDamage().getValue().doubleValue()) { return false; } } this.target = target; return true; }
@Override public boolean shouldStart() { if (!myPet.getSkills().isActive(SprintImpl.class)) { return false; } if (petEntity.getMyPet().getDamage() <= 0) { return false; } if (!this.petEntity.hasTarget()) { return false; } EntityLiving targetEntity = ((CraftLivingEntity) this.petEntity.getTarget()).getHandle(); if (!targetEntity.isAlive()) { return false; } if (lastTarget == targetEntity) { return false; } if (petEntity.getMyPet().getRangedDamage() > 0 && this.petEntity.f(targetEntity) >= 16) { return false; } this.lastTarget = targetEntity; return true; }
@Override public boolean shouldFinish() { if (!petEntity.canMove()) { return true; } else if (!petEntity.hasTarget()) { return true; } EntityLiving target = ((CraftLivingEntity) this.petEntity.getTarget()).getHandle(); Behavior behaviorSkill = myPet.getSkills().get(Behavior.class); if (behaviorSkill.getBehavior() != BehaviorMode.Duel) { return true; } else if (myPet.getDamage() <= 0 && myPet.getRangedDamage() <= 0) { return true; } else if (target.world != petEntity.world) { return true; } else if (petEntity.f(target) > 400) { return true; } else if (petEntity.f(((CraftPlayer) petEntity.getOwner().getPlayer()).getHandle()) > 600) { return true; } return false; }
@Override public boolean shouldFinish() { if (!petEntity.canMove()) { return true; } else if (petEntity.getTarget() == null) { return true; } EntityLiving target = ((CraftLivingEntity) petEntity.getTarget()).getHandle(); if (!target.isAlive()) { return true; } Behavior behaviorSkill = myPet.getSkills().get(Behavior.class); if (behaviorSkill.getBehavior() != BehaviorMode.Aggressive) { return true; } else if (myPet.getDamage() <= 0 && myPet.getRangedDamage() <= 0) { return true; } else if (target.world != petEntity.world) { return true; } else if (petEntity.f(target) > 400) { return true; } else if (petEntity.f(((CraftPlayer) petEntity.getOwner().getPlayer()).getHandle()) > 600) { return true; } return false; }
@Override public boolean shouldFinish() { if (!petEntity.canMove()) { return true; } if (!this.petEntity.hasTarget()) { return true; } EntityLiving target = ((CraftLivingEntity) this.petEntity.getTarget()).getHandle(); if (!target.isAlive()) { return true; } Behavior behaviorSkill = myPet.getSkills().get(Behavior.class); if (behaviorSkill.getBehavior() != BehaviorMode.Farm) { return true; } else if (myPet.getDamage() <= 0 && myPet.getRangedDamage() <= 0) { return true; } else if (target.world != petEntity.world) { return true; } else if (petEntity.f(target) > 400) { return true; } else if (petEntity.f(((CraftPlayer) petEntity.getOwner().getPlayer()).getHandle()) > 600) { return true; } return false; }
@Override public boolean shouldStart() { Behavior behaviorSkill = myPet.getSkills().get(Behavior.class); if (!behaviorSkill.isActive() || behaviorSkill.getBehavior() != BehaviorMode.Farm) { return false; } if (myPet.getDamage() <= 0 && myPet.getRangedDamage() <= 0) { return false; } if (!petEntity.canMove()) { return false; } if (petEntity.hasTarget()) { return false; } for (Object entityObj : this.petEntity.world.a(EntityMonster.class, this.petOwnerEntity.boundingBox.grow((double) range, (double) range, (double) range))) { EntityMonster entityMonster = (EntityMonster) entityObj; if (!entityMonster.isAlive() || petEntity.f(entityMonster) > 91) { continue; } if (!MyPetApi.getHookHelper().canHurt(myPet.getOwner().getPlayer(), entityMonster.getBukkitEntity())) { continue; } this.target = entityMonster; return true; } return false; }
return; if (isActive() && pickup && myPet.getStatus() == PetState.Here && myPet.getSkills().isActive(BackpackImpl.class)) { double range = this.range.getValue().doubleValue(); for (Entity entity : myPet.getEntity().get().getNearbyEntities(range, range, range)) { CustomInventory inv = myPet.getSkills().get(BackpackImpl.class).getInventory(); int itemAmount = inv.addItem(itemStack); if (itemAmount == 0) {
@Override public void tick() { double distanceToTarget = this.entityMyPet.f(this.target.locX, this.target.boundingBox.b, this.target.locZ); boolean canSee = this.entityMyPet.getEntitySenses().canSee(this.target); if (canSee) { this.lastSeenTimer++; } else { this.lastSeenTimer = 0; } if ((distanceToTarget <= this.range) && (this.lastSeenTimer >= 20)) { this.entityMyPet.getPetNavigation().getParameters().removeSpeedModifier("RangedAttack"); this.entityMyPet.getPetNavigation().stop(); } else { this.entityMyPet.getPetNavigation().getParameters().addSpeedModifier("RangedAttack", walkSpeedModifier); this.entityMyPet.getPetNavigation().navigateTo(this.target.getBukkitEntity().getLocation()); } this.entityMyPet.getControllerLook().a(this.target, 30.0F, 30.0F); if (--this.shootTimer <= 0) { if (distanceToTarget < this.range && canSee) { shootProjectile(this.target, (float) myPet.getRangedDamage(), getProjectile()); Ranged rangedSkill = myPet.getSkills().get(Ranged.class); this.shootTimer = rangedSkill.getRateOfFire().getValue(); } } }
@Override public boolean shouldStart() { Behavior behaviorSkill = myPet.getSkills().get(Behavior.class); if (!behaviorSkill.isActive() || behaviorSkill.getBehavior() != BehaviorMode.Aggressive) { return false;
return false; Behavior behaviorSkill = myPet.getSkills().get(Behavior.class); if (behaviorSkill != null && behaviorSkill.isActive()) { if (behaviorSkill.getBehavior() == BehaviorMode.Friendly) {
Behavior behaviorSkill = myPet.getSkills().get(Behavior.class); if (behaviorSkill.isActive()) { if (behaviorSkill.getBehavior() == BehaviorMode.Friendly) {
public boolean activate() { if (isActive()) { if (myPet.getSkills().isActive(BackpackImpl.class)) { if (pickup) { pickup = false; } else { MyPetInventoryActionEvent event = new MyPetInventoryActionEvent(myPet, MyPetInventoryActionEvent.Action.Pickup); Bukkit.getServer().getPluginManager().callEvent(event); if (!event.isCancelled()) { pickup = true; } } String mode = pickup ? Translation.getString("Name.Enabled", myPet.getOwner()) : Translation.getString("Name.Disabled", myPet.getOwner()); myPet.getOwner().sendMessage(Util.formatText(Translation.getString(("Message.Skill.Pickup.StartStop"), myPet.getOwner()), myPet.getPetName(), mode)); return true; } else { myPet.getOwner().sendMessage(Util.formatText(Translation.getString("Message.Skill.Pickup.NoInventory", myPet.getOwner()), myPet.getPetName())); return false; } } else { myPet.getOwner().sendMessage(Util.formatText(Translation.getString("Message.No.Skill", myPet.getOwner()), myPet.getPetName(), this.getName(myPet.getOwner().getLanguage()))); return false; } }