c.playerEquipment[c.playerWeapon] == 18357 || c.playerEquipment[c.playerWeapon] == 9185 && !properBolts()) {
c.sendMessage("You must use bolts with a crossbow.");
c.stopMovement();
resetPlayerAttack();
return;
}
if(y == c.playerEquipment[c.playerWeapon] && c.playerEquipment[c.playerWeapon] != 18357 || c.playerEquipment[c.playerWeapon] == 9185 && u == c.playerEquipment[c.playerArrows]){
c.sendMessage("You can only use arrows with this bow.");
return;
}
}
}
public int getProjectileShowDelay() {
switch(c.playerEquipment[c.playerWeapon]) {
case 863:
case 864:
case 865:
case 866: // knives
case 867:
case 868:
case 869:
case 806:
case 807:
case 808:
case 809: // darts
case 810:
case 811:
case 825:
case 826:
case 827: // javelin
case 828:
case 829:
case 830:
case 800:
case 801:
case 802:
case 803: // axes
case 804:
case 805:
case 4734:
case 18357:
case 4935:
case 4936:
case 9185:
case 4937:
return 15;
default:
return 5;
}
}
if (c.playerEquipment[c.playerWeapon] == 15241)
return 2143;
if (c.playerEquipment[c.playerWeapon] == 9185 || c.playerEquipment[c.playerWeapon] == 18357)
return 27;
switch(c.rangeItemUsed) {
case 13883:
return 1839;
case 13879:
return 1837;
case 863:
return 213;
case 864:
return 212;
case 865:
return 214;
case 866: // knives
return 216;
case 867:
return 217;
case 868:
return 218;
case 869:
return 215;
case 806:
return 226;
case 807:
return 227;
case 808:
return 228;
case 809: // darts
return 229;
case 810:
return 230;
case 811:
return 231;
case 825:
return 200;
case 826:
return 201;
case 827: // javelin
return 202;
case 828:
return 203;
case 829:
return 204;
case 830:
return 205;
case 6522: // Toktz-xil-ul
return 442;
case 800:
return 36;
case 801:
return 35;
case 802:
return 37; // axes
case 803:
return 38;
case 804:
return 39;
case 805:
return 40;
case 882:
return 10;
case 884:
return 9;
case 886:
return 11;
case 888:
return 12;
case 890:
return 13;
case 892:
return 15;
case 11212:
return 17;
case 4740: // bolt rack
return 27;
case 4212:
case 4214:
case 4215:
case 4216:
case 4217:
case 4218:
case 4219:
case 4220:
case 4221:
case 4222:
case 4223:
case 18357:
case 9185:
return 249;
}
int bonus = 0;
bonus -= rangehit / 10;
rangehit += bonus;
if (c.specDamage != 1)
rangehit *= c.specDamage;
if (rangehit == 0)
rangehit++;
if (c.fullVoidRange()) {
rangehit *= 1.10;
}
if (c.prayerActive[3])
rangehit *= 1.05;
else if (c.prayerActive[11])
rangehit *= 1.10;
else if (c.prayerActive[19])
rangehit *= 1.15;
return rangehit;
}*/
public boolean properBolts() {
return c.playerEquipment[c.playerArrows] >= 9140 && c.playerEquipment[c.playerArrows] <= 9144
|| c.playerEquipment[c.playerArrows] >= 9240 && c.playerEquipment[c.playerArrows] <= 9245 || c.playerEquipment[c.playerArrows] == 9244;
}
public int correctBowAndArrows() {
switch(c.playerEquipment[c.playerWeapon]) {
case 15241: // hand cannon with shot
return 11212;
case 843:
case 845:
case 839:
case 841:
return 884;
case 18357:
case 9185:
return 9244;
case 847:
case 849:
return 886;
case 851:
case 853:
return 888;
case 855:
case 857:
return 890;
case 859:
case 861:
case 16337:
return 892;
case 4734:
case 4935:
case 4936:
case 4937:
return 4740;
case 11235:
case 15701: // dark bow
case 15702: // dark bow
case 15703: // dark bow
case 15704: // dark bow
case 14481:
case 14482:
return 11212;
}
public boolean usingBolts() {
return c.playerEquipment[c.playerArrows] >= 9130 && c.playerEquipment[c.playerArrows] <= 9145 || c.playerEquipment[c.playerArrows] >= 9230 && c.playerEquipment[c.playerArrows] <= 9245;
}
public int rangeMaxHit() {
int weapon = c.playerEquipment[c.playerWeapon];
int rangeLevel = c.playerLevel[4];
double modifier = 1.0;
double wtf = c.specDamage;
int itemUsed = c.usingBow ? c.lastArrowUsed : c.lastWeaponUsed;
if (c.playerEquipment[c.playerWeapon] == 9185)
modifier += 0.20;
if (c.playerEquipment[c.playerWeapon] == 18357)
modifier += 0.40;
if (c.prayerActive[3])
modifier += 0.05;
else if (c.prayerActive[11])
modifier += 0.10;
else if (c.prayerActive[19])
modifier += 0.15;
if (c.fullVoidRange())
modifier += 0.20;
double c = modifier * rangeLevel;
int rangeStr = getRangeStr(itemUsed);
double max =(c + 8) * (rangeStr + 64) / 640;
if (wtf != 1)
max *= wtf;
if (max < 1)
max = 1;
return (int)max;
}
if (damage > 0 && Misc.random(5) == 1 && c.lastArrowUsed == 9244 && c.playerEquipment[c.playerWeapon] == 18357 || c.playerEquipment[c.playerWeapon] == 9185) {
damage *= 1.45;
o.gfx0(756);
}
WITH SOME DELETED THINGS