1package com.runehive.game.world.entity.combat.strategy.player.special.range;
3import com.runehive.game.Animation;
4import com.runehive.game.Projectile;
5import com.runehive.game.world.entity.combat.CombatType;
6import com.runehive.game.world.entity.combat.attack.FightType;
7import com.runehive.game.world.entity.combat.hit.CombatHit;
8import com.runehive.game.world.entity.combat.hit.Hit;
9import com.runehive.game.world.entity.combat.strategy.basic.RangedStrategy;
10import com.runehive.game.world.entity.combat.strategy.player.custom.ToxicBlowpipeStrategy;
11import com.runehive.game.world.entity.mob.Mob;
12import com.runehive.game.world.entity.mob.player.Player;
13import com.runehive.game.world.entity.mob.player.PlayerRight;
35 attacker.
heal((
int) Math.floor(
hit.getDamage() / 2));
Class that models a single animation used by an entity.
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)
void hit(T attacker, Mob defender, Hit hit)
Called when the attacking mob performs an attack on the defender.
static void addCombatExperience(Player player, Hit... hits)
static ToxicBlowpipeStrategy get()
int getAttackDistance(Player attacker, FightType fightType)
int getAttackDelay(Player attacker, Mob defender, FightType fightType)
void attack(Player attacker, Mob defender, Hit hit)
Animation getAttackAnimation(Player attacker, Mob defender)
boolean canAttack(Player attacker, Mob defender)
static final Projectile SPECIAL_PROJ
int getAttackDistance(Player attacker, FightType fightType)
Animation getAttackAnimation(Player attacker, Mob defender)
boolean canAttack(Player attacker, Mob defender)
static final Blowpipe INSTANCE
void start(Player attacker, Mob defender, Hit[] hits)
CombatType getCombatType()
CombatHit[] getHits(Player attacker, Mob defender)
void attack(Player attacker, Mob defender, Hit hit)
int getAttackDelay(Player attacker, Mob defender, FightType fightType)
void animate(int animation)
final boolean isPlayer()
Check if an entity is a player.
This class represents a character controlled by a player.
CombatSpecial getCombatSpecial()
The enumerated type whose elements represent the fighting types.
void drain(Player player)
Drains the special bar for player.
Holds all the player right data.
static boolean isIronman(Player player)
Checks if the player is an ironman.