1package com.osroyale.game.world.entity.combat.strategy.player.special.range;
3import com.osroyale.content.achievement.AchievementHandler;
4import com.osroyale.content.achievement.AchievementKey;
5import com.osroyale.game.Animation;
6import com.osroyale.game.Graphic;
7import com.osroyale.game.Projectile;
8import com.osroyale.game.UpdatePriority;
9import com.osroyale.game.world.entity.combat.hit.CombatHit;
10import com.osroyale.game.world.entity.combat.hit.Hit;
11import com.osroyale.game.world.entity.combat.projectile.CombatProjectile;
12import com.osroyale.game.world.entity.combat.strategy.player.PlayerRangedStrategy;
13import com.osroyale.game.world.entity.mob.Mob;
14import com.osroyale.game.world.entity.mob.player.Player;
15import com.osroyale.game.world.items.Item;
17import static com.osroyale.game.world.items.containers.equipment.Equipment.ARROWS_SLOT;
50public final class DragonKnife
extends PlayerRangedStrategy {
52 private static final DragonKnife INSTANCE =
new DragonKnife();
59 }
catch (Exception e) {
64 private DragonKnife() {
68 protected void sendStuff(
Player attacker,
Mob defender) {
69 super.sendStuff(attacker, defender);
71 PROJECTILE.getProjectile().ifPresent(projectile -> projectile.send(attacker, defender));
75 public void hit(
Player attacker,
Mob defender,
Hit hit) {
76 super.hit(attacker, defender, hit);
81 CombatHit first = nextRangedHit(attacker, defender);
82 CombatHit second = nextRangedHit(attacker, defender);
87 first.setAccurate(
true);
92 second.setAccurate(
true);
103 public static DragonKnife
get() {
void setDamage(int damage)