1package com.runehive.game.world.entity.combat.effect.impl;
3import com.runehive.game.world.entity.combat.effect.CombatEffect;
4import com.runehive.game.world.entity.combat.hit.Hit;
5import com.runehive.game.world.entity.combat.hit.HitIcon;
6import com.runehive.game.world.entity.combat.hit.Hitsplat;
7import com.runehive.game.world.entity.mob.Mob;
8import com.runehive.game.world.entity.mob.npc.Npc;
9import com.runehive.game.world.entity.mob.player.Player;
10import com.runehive.game.world.items.Item;
11import com.runehive.game.world.items.containers.equipment.Equipment;
12import com.runehive.net.packet.out.SendMessage;
13import com.runehive.net.packet.out.SendPoison;
29 if (
mob.isVenomed()) {
33 if (
mob.isNpc() &&
mob.getNpc().definition.hasVenomImmunity()) {
37 if (
mob.isPlayer() &&
mob.getPlayer().equipment
39 .filter(helm -> helm.getId() == 13197 || helm.getId() == 13199 || helm.getId() == 12931)
51 mob.getVenomDamage().set(6);
57 boolean remove = !
mob.isVenomed() ||
mob.isDead();
58 if (
remove &&
mob.isPlayer()) {
67 if (
mob.getVenomDamage().get() < 20)
73 if (
mob.isVenomed() &&
mob.isPlayer()) {
76 return mob.isVenomed();
80 return npc.id == 2042 || npc.id == 2043 || npc.id == 2044;
84 return weapon.matchesId(12_926) ||
weapon.matchesId(12_904) ||
weapon.matchesId(12_899);
CombatEffect(int delay)
Creates a new CombatEffect.
boolean removeOn(Mob mob)
Removes this effect from mob if needed.
static boolean isVenomous(Npc npc)
boolean onLogin(Mob mob)
Executed on login, primarily used to re-apply the effect to mob.
boolean apply(Mob mob)
Applies this effect to mob.
CombatVenomEffect()
Creates a new CombatVenomEffect.
static boolean isVenomous(Item weapon)
void process(Mob mob)
Provides processing for this effect on mob.
A Hit object holds the damage amount and hitsplat data.
Represents a non-player character in the in-game world.
This class represents a character controlled by a player.
final MutableNumber getVenomImmunity()
void send(OutgoingPacket encoder)
The container class that represents an item that can be interacted with.
The container that manages the equipment for a player.
static final int HELM_SLOT
The OutgoingPacket that sends a message to a Players chatbox in the client.
int get()
Gets the value present within this counter.
The enumerated type whose elements represent the hit icon of a Hit.
NONE
Represents no hit icon at all.
VENOM
Represents a venom hit type.