mirror of
https://gitlab.com/2009scape/2009scape.git
synced 2025-12-19 13:00:19 -07:00
Fix broad bolts on turroths and kurasks
This commit is contained in:
parent
9c18af8f8d
commit
a0c6522fbc
3 changed files with 24 additions and 6 deletions
|
|
@ -6,6 +6,8 @@ import core.game.node.entity.player.Player;
|
||||||
import core.game.node.entity.player.link.SpellBookManager.SpellBook;
|
import core.game.node.entity.player.link.SpellBookManager.SpellBook;
|
||||||
import core.game.world.map.Location;
|
import core.game.world.map.Location;
|
||||||
import core.plugin.Initializable;
|
import core.plugin.Initializable;
|
||||||
|
import org.rs09.consts.Items;
|
||||||
|
import rs09.game.node.entity.skill.slayer.SlayerUtils;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Handles the kurask npc.
|
* Handles the kurask npc.
|
||||||
|
|
@ -41,9 +43,7 @@ public final class KuraskNPC extends AbstractNPC {
|
||||||
boolean effective = false;
|
boolean effective = false;
|
||||||
if (state.getAttacker() instanceof Player) {
|
if (state.getAttacker() instanceof Player) {
|
||||||
final Player player = (Player) state.getAttacker();
|
final Player player = (Player) state.getAttacker();
|
||||||
if ((state.getWeapon() != null && state.getWeapon().getId() == 4158) || (state.getAmmunition() != null && state.getAmmunition().getItemId() == 4160) || (state.getWeapon() != null && state.getWeapon().getId() == 13290) || (state.getSpell() != null && state.getSpell().getSpellId() == 31 && player.getSpellBookManager().getSpellBook() == SpellBook.MODERN.getInterfaceId()) || (state.getAmmunition() != null && state.getAmmunition().getItemId() == 881)) {
|
effective = new SlayerUtils(player).hasBroadWeaponEquipped(state);
|
||||||
effective = true;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if (!effective) {
|
if (!effective) {
|
||||||
state.setEstimatedHit(0);
|
state.setEstimatedHit(0);
|
||||||
|
|
|
||||||
|
|
@ -6,6 +6,8 @@ import core.game.node.entity.player.Player;
|
||||||
import core.game.node.entity.player.link.SpellBookManager.SpellBook;
|
import core.game.node.entity.player.link.SpellBookManager.SpellBook;
|
||||||
import core.game.world.map.Location;
|
import core.game.world.map.Location;
|
||||||
import core.plugin.Initializable;
|
import core.plugin.Initializable;
|
||||||
|
import org.rs09.consts.Items;
|
||||||
|
import rs09.game.node.entity.skill.slayer.SlayerUtils;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Handles the turoth npc.
|
* Handles the turoth npc.
|
||||||
|
|
@ -41,9 +43,7 @@ public final class TurothNPC extends AbstractNPC {
|
||||||
boolean effective = false;
|
boolean effective = false;
|
||||||
if (state.getAttacker() instanceof Player) {
|
if (state.getAttacker() instanceof Player) {
|
||||||
final Player player = (Player) state.getAttacker();
|
final Player player = (Player) state.getAttacker();
|
||||||
if ((state.getWeapon() != null && state.getWeapon().getId() == 4158) || (state.getAmmunition() != null && state.getAmmunition().getItemId() == 4160) || (state.getWeapon() != null && state.getWeapon().getId() == 13290) || (state.getSpell() != null && state.getSpell().getSpellId() == 31 && player.getSpellBookManager().getSpellBook() == SpellBook.MODERN.getInterfaceId())) {
|
effective = new SlayerUtils(player).hasBroadWeaponEquipped(state);
|
||||||
effective = true;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if (!effective) {
|
if (!effective) {
|
||||||
state.setEstimatedHit(0);
|
state.setEstimatedHit(0);
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,18 @@
|
||||||
|
package rs09.game.node.entity.skill.slayer
|
||||||
|
|
||||||
|
import core.game.node.entity.combat.BattleState
|
||||||
|
import core.game.node.entity.player.Player
|
||||||
|
import core.game.node.entity.player.link.SpellBookManager.SpellBook
|
||||||
|
import org.rs09.consts.Items
|
||||||
|
|
||||||
|
class SlayerUtils(val player: Player) {
|
||||||
|
|
||||||
|
fun hasBroadWeaponEquipped(state: BattleState): Boolean {
|
||||||
|
return (state.weapon != null && state.weapon.id == Items.LEAF_BLADED_SPEAR_4158 ||
|
||||||
|
state.weapon != null && state.weapon.id == Items.LEAF_BLADED_SWORD_13290 ||
|
||||||
|
state.ammunition != null && (state.ammunition.itemId == Items.BROAD_ARROW_4160 || state.ammunition.itemId == Items.BROAD_TIPPED_BOLTS_13280) ||
|
||||||
|
state.spell != null && state.spell.spellId == 31 && player.spellBookManager
|
||||||
|
.spellBook == SpellBook.MODERN.interfaceId
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Add table
Add a link
Reference in a new issue