RuneHive-Game
Loading...
Searching...
No Matches
DharokListener.java
Go to the documentation of this file.
1
package
com.runehive.game.world.entity.combat.attack.listener.item;
2
3
import
com.runehive.content.achievement.AchievementHandler;
4
import
com.runehive.content.achievement.AchievementKey;
5
import
com.runehive.game.world.entity.combat.attack.listener.ItemCombatListenerSignature;
6
import
com.runehive.game.world.entity.combat.attack.listener.NpcCombatListenerSignature;
7
import
com.runehive.game.world.entity.combat.attack.listener.SimplifiedListener;
8
import
com.runehive.game.world.entity.combat.hit.Hit;
9
import
com.runehive.game.world.entity.mob.Mob;
10
11
/**
12
* Handles the Dharok's armor effects to the assigned npc and item ids.
13
* @author Michael | Chex
14
*/
15
@
NpcCombatListenerSignature
(npcs = {1673})
16
@
ItemCombatListenerSignature
(requireAll =
true
, items = {4716, 4718, 4720, 4722})
17
public
class
DharokListener
extends
SimplifiedListener<Mob>
{
18
19
@Override
20
public
int
modifyDamage
(
Mob
attacker,
Mob
defender,
int
damage) {
21
int
health = attacker.
getMaximumHealth
() - attacker.
getCurrentHealth
();
22
if
(health < 0) health = 0;
23
return
damage + damage * health / 100;
24
}
25
26
@Override
27
public
void
onKill
(
Mob
attacker,
Mob
defender,
Hit
hit
) {
28
if
(attacker.
isPlayer
() && defender.
isPlayer
()) {
29
AchievementHandler
.
activate
(attacker.
getPlayer
(),
AchievementKey
.
DHAROK
);
30
}
31
}
32
}
com.runehive.content.achievement.AchievementHandler
Handles the achievements.
Definition
AchievementHandler.java:13
com.runehive.content.achievement.AchievementHandler.activate
static void activate(Player player, AchievementKey achievement)
Activates the achievement for the individual player.
Definition
AchievementHandler.java:20
com.runehive.game.world.entity.combat.attack.listener.SimplifiedListener
Definition
SimplifiedListener.java:7
com.runehive.game.world.entity.combat.attack.listener.SimplifiedListener.hit
void hit(T attacker, Mob defender, Hit hit)
Definition
SimplifiedListener.java:38
com.runehive.game.world.entity.combat.attack.listener.item.DharokListener
Handles the Dharok's armor effects to the assigned npc and item ids.
Definition
DharokListener.java:17
com.runehive.game.world.entity.combat.attack.listener.item.DharokListener.modifyDamage
int modifyDamage(Mob attacker, Mob defender, int damage)
Definition
DharokListener.java:20
com.runehive.game.world.entity.combat.attack.listener.item.DharokListener.onKill
void onKill(Mob attacker, Mob defender, Hit hit)
Definition
DharokListener.java:27
com.runehive.game.world.entity.combat.hit.Hit
A Hit object holds the damage amount and hitsplat data.
Definition
Hit.java:10
com.runehive.game.world.entity.mob.Mob
Handles the mob class.
Definition
Mob.java:66
com.runehive.game.world.entity.mob.Mob.getMaximumHealth
int getMaximumHealth()
Definition
Mob.java:664
com.runehive.game.world.entity.mob.Mob.getCurrentHealth
int getCurrentHealth()
Definition
Mob.java:652
com.runehive.game.world.entity.mob.Mob.getPlayer
final Player getPlayer()
Definition
Mob.java:648
com.runehive.game.world.entity.mob.Mob.isPlayer
final boolean isPlayer()
Check if an entity is a player.
Definition
Mob.java:564
com.runehive.content.achievement.AchievementKey
Definition
AchievementKey.java:3
com.runehive.content.achievement.AchievementKey.DHAROK
DHAROK
Definition
AchievementKey.java:6
com.runehive.game.world.entity.combat.attack.listener.ItemCombatListenerSignature
Listens for items.
Definition
ItemCombatListenerSignature.java:15
com.runehive.game.world.entity.combat.attack.listener.NpcCombatListenerSignature
Listens for npcs.
Definition
NpcCombatListenerSignature.java:14