alright i have tryed my hardest to get my specs hitting on richscape but they never do! they sometimes hit but thats like under 10 someone help
attack thingy -
Code:
boolean Attack() {
Client Atk = (Client) Server.PlayerManager.players[AttackingOn];
boolean UseBow = false;
int EnemyX = PlayerManager.players[AttackingOn].absX;
int EnemyY = PlayerManager.players[AttackingOn].absY;
int EnemyHP = PlayerManager.players[AttackingOn].playerLevel[playerHitpoints];
int casterX = absX;
int casterY = absY;
int offsetX = (casterX - EnemyX) * -1;
int offsetY = (casterY - EnemyY) * -1;
int aBonus = 0;
int rand_att = Misc.random(playerLevel[0])*6 + Misc.random(AtkPray * 8);
int rand_def = (int) (0.35 * Misc.random(Atk.playerLevel[1]) + Atk.DefPray * 5);
if (Atk.protMelee)
rand_def += Misc.random(65);
if (FightType == 1)
aBonus += (int) (playerBonus[1] / 20);
int random_u = Misc.random(playerBonus[1] + aBonus) * 2;
int dBonus = 0;
if (Atk.FightType == 4)
dBonus += (int) (Atk.playerBonus[6] / 20);
int random_def = Misc.random(Atk.playerBonus[6] + dBonus + Atk.AtkPray * 8);
if ((random_u >= random_def) && (rand_att > rand_def)) {
CalculateMaxHit();
hitDiff = Misc.random(playerMaxHit);
if (Atk.protMelee)
hitDiff /= 2;
} else {
hitDiff = 0;
}
And special hit
Code:
public void SpecDamg(int i1) {
for (Player p : Server.PlayerManager.players) {
if (p != null) {
if (!PlayerManager.players[AttackingOn].IsDead) {
Client Att = (Client) Server.PlayerManager.players[AttackingOn];
int EnemyHP = PlayerManager.players[AttackingOn].playerLevel[playerHitpoints];
int damage = Misc.random(i1);
try {
int aBonus = 0;
int rand_att = Misc.random(playerLevel[0])*3 + Misc.random(AtkPray * 8);
int rand_def = (int) (0.65 * Misc.random(Att.playerLevel[1]) + Att.DefPray * 8);
if (Att.protMelee)
rand_def += Misc.random(100);
if (FightType == 1)
aBonus += (int) (playerBonus[1] / 20);
int random_u = Misc.random(playerBonus[1] + aBonus) * 2;
int dBonus = 0;
if (Att.FightType == 4)
dBonus += (int) (Att.playerBonus[6] / 20);
int random_def = Misc.random(Att.playerBonus[6] + dBonus + Att.AtkPray * 8);
if ((random_u >= random_def) && (rand_att > rand_def)) {
hitDiff = damage;
if (Att.protMelee)
hitDiff /= 2;
} else {
hitDiff = 0;
}
if ((EnemyHP - hitDiff) < 0) {
hitDiff = EnemyHP;
}
Att.Hit(hitDiff);
if (Att.canVengeance && hitDiff != 0 && !Att.IsDead) {
Hit((int)(hitDiff / 1.2));
Att.canVengeance = false;
Att.txt4 = "Taste vengeance!";
Att.string4UpdateRequired = true;
}
} catch (Exception e) {
}
}
}
}
}