Resolved couple special attacks issues(Whip, magic long bows, draggon daggers) (#347)

Resolved couple special attacks issues(Whip, magic long bows, draggon daggers)

I also discovered some issues about the special attack. There is no delay between the special attack and the next hit and the dragon longsword special attack doesnt work at all.
This commit is contained in:
Gptaqbc
2020-01-02 18:35:04 -05:00
committed by Daniel Ginovker
parent e3e74a6a25
commit 6b9d1d5881
3 changed files with 10 additions and 10 deletions
@@ -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();
@@ -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();
@@ -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;