RuneHive-Tarnish
Neural OSRS Enhancement Framework
Loading...
Searching...
No Matches
InfernoCavesListener.java
1package com.osroyale.content.activity.inferno;
2
3import com.osroyale.content.activity.ActivityListener;
4import com.osroyale.game.world.entity.combat.CombatType;
5import com.osroyale.game.world.entity.combat.hit.Hit;
6import com.osroyale.game.world.entity.mob.Mob;
7import com.osroyale.game.world.entity.mob.npc.Npc;
8import com.osroyale.util.Utility;
9
10
11public class InfernoCavesListener extends ActivityListener<Inferno> {
12
13
14 public InfernoCavesListener(Inferno minigame) {
15 super(minigame);
16 }
17
18 @Override
19 public void block(Mob attacker, Mob defender, Hit hit, CombatType combatType) {
20 if (!defender.isNpc())
21 return;
22 if (defender.id != 3127)
23 return;
24 if (Utility.getPercentageAmount(defender.getCurrentHealth(), defender.getMaximumHealth()) > 49)
25 return;
26 for (Npc npc : activity.npcs) {
27 if (npc.id == 3128
28 && (npc.getCombat().inCombatWith(attacker) || Utility.withinDistance(defender, npc, 5))) {
29 defender.heal(1);
30 }
31 }
32 }
33
34 @Override
35 public void onDeath(Mob attacker, Mob defender, Hit hit) {
36 activity.handleDeath(defender);
37 }
38}