1package com.runehive.content.activity.infernomobs;
3import com.runehive.game.task.TickableTask;
4import com.runehive.game.world.World;
5import com.runehive.game.world.entity.combat.attack.FightType;
6import com.runehive.game.world.entity.combat.hit.CombatHit;
7import com.runehive.game.world.entity.combat.hit.Hit;
8import com.runehive.game.world.entity.combat.strategy.npc.MultiStrategy;
9import com.runehive.game.world.entity.combat.strategy.npc.NpcRangedStrategy;
10import com.runehive.game.world.entity.mob.Mob;
11import com.runehive.game.world.entity.mob.npc.Npc;
12import com.runehive.game.world.entity.skill.Skill;
14import static com.runehive.game.world.entity.combat.projectile.CombatProjectile.getDefinition;
30 super(getDefinition(
"MejRah"));
35 if (!
hit.isAccurate())
39 protected void tick() {
45 attack.modifyLevel(level -> level - 2);
49 def.modifyLevel(level -> level - 2);
CombatHit[] getHits(Npc attacker, Mob defender)
void hit(Npc attacker, Mob defender, Hit hit)
int getAttackDelay(Npc attacker, Mob defender, FightType fightType)
Represents the game world.
static void schedule(Task task)
Submits a new event.
A wrapper for a Hit object, adding additional variables for hit and hitsplat delays.
A Hit object holds the damage amount and hitsplat data.
final CombatHit nextRangedHit(T attacker, Mob defender)
CombatStrategy< Npc > currentStrategy
void attack(Npc attacker, Mob defender, Hit hit)
NpcRangedStrategy(CombatProjectile combatProjectile)
final SkillManager skills
final boolean isPlayer()
Check if an entity is a player.
Represents a non-player character in the in-game world.
void message(String message)
Represents a trainable and usable skill.
void modifyLevel(Function< Integer, Integer > function)
Modifies the current level with a given function.
static final int RANGED
The ranged skill id.
static final int DEFENCE
The defence skill id.
static final int MAGIC
The magic skill id.
static final int ATTACK
The attack skill id.
static final int STRENGTH
The strength skill id.
Skill get(int id)
Gets the skill for an id.
void refresh()
Refreshes all the skills for the mob.
The enumerated type whose elements represent the fighting types.