Skip to content

Commit

Permalink
Actually clear axolotl's target
Browse files Browse the repository at this point in the history
  • Loading branch information
Akiranya committed Aug 30, 2022
1 parent 64b1bd5 commit 5db538b
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -20,17 +20,20 @@
import org.bukkit.Material;
import org.bukkit.block.Block;
import org.bukkit.block.data.BlockData;
import org.bukkit.entity.Axolotl;
import org.bukkit.entity.Creature;
import org.bukkit.entity.DragonFireball;
import org.bukkit.entity.Entity;
import org.bukkit.entity.EntityType;
import org.bukkit.entity.LivingEntity;
import org.bukkit.entity.Mob;
import org.bukkit.entity.Monster;
import org.bukkit.entity.Player;
import org.bukkit.entity.Projectile;
import org.bukkit.entity.ThrownPotion;
import org.bukkit.entity.Vehicle;
import org.bukkit.entity.Villager;
import org.bukkit.entity.memory.MemoryKey;
import org.bukkit.event.Cancellable;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
Expand All @@ -46,6 +49,7 @@
import org.bukkit.event.entity.EntityDeathEvent;
import org.bukkit.event.entity.EntityExplodeEvent;
import org.bukkit.event.entity.EntityInteractEvent;
import org.bukkit.event.entity.EntityTargetLivingEntityEvent;
import org.bukkit.event.entity.LingeringPotionSplashEvent;
import org.bukkit.event.entity.PigZapEvent;
import org.bukkit.event.entity.PotionSplashEvent;
Expand Down Expand Up @@ -144,6 +148,21 @@ public void onEntityDamageByEntity(EntityDamageByEntityEvent event) {
}
}

/**
* Prevent axolotl from targeting protected mobs.
*
* @param event - EntityTargetLivingEntityEvent
*/
@EventHandler(priority = EventPriority.LOWEST, ignoreCancelled = true)
public void onAxolotlTarget(EntityTargetLivingEntityEvent event) {
if (event.getEntity() instanceof Axolotl axolotl &&
event.getTarget() instanceof Mob target &&
CombatUtil.preventDamageCall(axolotl, target, DamageCause.ENTITY_ATTACK)) {
axolotl.setMemory(MemoryKey.HAS_HUNTING_COOLDOWN, true);
event.setCancelled(true);
}
}

/**
* Prevent monsters from dropping blocks if within an arena plot.
*
Expand Down
3 changes: 0 additions & 3 deletions src/com/palmergames/bukkit/towny/utils/CombatUtil.java
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,6 @@
import org.bukkit.Bukkit;
import org.bukkit.Material;
import org.bukkit.block.Block;
import org.bukkit.entity.Axolotl;
import org.bukkit.entity.Entity;
import org.bukkit.entity.HumanEntity;
import org.bukkit.entity.LightningStrike;
Expand Down Expand Up @@ -294,8 +293,6 @@ && preventPvP(world, defenderTB)) {
}

if (attackingEntity.getType().name().equals("AXOLOTL") && EntityTypeUtil.isInstanceOfAny(TownySettings.getProtectedEntityTypes(), defendingEntity)) {
//TODO: Targeting not actually removed
((Axolotl) attackingEntity).setTarget(null);
return true;
}
}
Expand Down

0 comments on commit 5db538b

Please sign in to comment.