diff --git a/2006Redone Server/src/com/rebotted/game/content/combat/CombatAssistant.java b/2006Redone Server/src/com/rebotted/game/content/combat/CombatAssistant.java index 7511cd59..588add4e 100644 --- a/2006Redone Server/src/com/rebotted/game/content/combat/CombatAssistant.java +++ b/2006Redone Server/src/com/rebotted/game/content/combat/CombatAssistant.java @@ -730,7 +730,7 @@ public class CombatAssistant { c.lastWeaponUsed = c.playerEquipment[c.playerWeapon]; c.lastArrowUsed = c.playerEquipment[c.playerArrows]; c.getSpecials().activateSpecial( - c.playerEquipment[c.playerWeapon], i); + c.playerEquipment[c.playerWeapon], null, i); return; } else { c.getPacketSender() @@ -1175,7 +1175,7 @@ public class CombatAssistant { if (checkSpecAmount(equippedWeapon)) { c.lastArrowUsed = c.playerEquipment[c.playerArrows]; c.getSpecials().activateSpecial( - c.playerEquipment[c.playerWeapon], i); + c.playerEquipment[c.playerWeapon], o, i); c.followId = c.playerIndex; return; } else { @@ -2248,10 +2248,6 @@ public class CombatAssistant { return false; } - public void activateSpecial(int weapon, int i) { - c.getSpecials().activateSpecial(weapon, i); - } - public boolean checkSpecAmount(int weapon) { if (c.specAmount >= c.getSpecials().specAmount()) { c.specAmount -= c.getSpecials().specAmount(); diff --git a/2006Redone Server/src/com/rebotted/game/content/combat/Specials.java b/2006Redone Server/src/com/rebotted/game/content/combat/Specials.java index 32521b7b..90aa6301 100644 --- a/2006Redone Server/src/com/rebotted/game/content/combat/Specials.java +++ b/2006Redone Server/src/com/rebotted/game/content/combat/Specials.java @@ -105,8 +105,9 @@ public class Specials { } } - public void activateSpecial(int weapon, int i) { + public void activateSpecial(int weapon, Client o, int i) { int equippedWeapon = player.playerEquipment[player.playerWeapon]; + if (NpcHandler.npcs[i] == null && player.npcIndex > 0 || PlayerHandler.players[player.playerIndex] == null && player.playerIndex > 0) { return; } @@ -218,7 +219,10 @@ public class Specials { player.hitDelay = player.getCombatAssistant().getHitDelay(); player.doubleHit = SA.getDoubleHit(); } else { - player.gfx0(SA.getGfx1()); + if (o != null) + { + o.gfx0(SA.getGfx1()); + } player.startAnimation(SA.getAnim()); player.specDamage = SA.getSpecDamage(); player.specAccuracy = SA.getSpecAccuracy(); diff --git a/2006Redone Server/src/com/rebotted/game/content/music/sound/CombatSounds.java b/2006Redone Server/src/com/rebotted/game/content/music/sound/CombatSounds.java index 8b2057ac..c430ce6c 100644 --- a/2006Redone Server/src/com/rebotted/game/content/music/sound/CombatSounds.java +++ b/2006Redone Server/src/com/rebotted/game/content/music/sound/CombatSounds.java @@ -385,7 +385,7 @@ public class CombatSounds { public static int specialSounds(int id) { if (id == 4151) {// whip return 1081; - } else if (id == 5698 || id == 1231 || id == 1215) {// dds + } else if (id == 5698 || id == 1231 || id == 1215 || id == 5680) {// dds return 793; } else if (id == 1434) {// Mace return 387; @@ -399,7 +399,7 @@ public class CombatSounds { return 1305; } else if (id == 1305) { // D Long return 390; - } else if (id == 861 || id == 11235) { // MSB, Darkbow + } else if (id == 861 || id == 11235 || id == 859) { // MSB, Darkbow return 386; } else if (id == 1377) { // DBAxe return 389;