mirror of
https://github.com/2006-Scape/2006Scape.git
synced 2026-07-02 16:49:03 +00:00
Fix getLevelforXP methods (#611)
* Use single method for level for XP These methods are functionally identical. This was done via test from 0->13034431 and they always returned the same value. * redundant access * New xp and level methods * Removed test command
This commit is contained in:
@@ -320,8 +320,8 @@ public class CombatAssistant {
|
|||||||
}
|
}
|
||||||
if (damage > 0 && guthansEffect) {
|
if (damage > 0 && guthansEffect) {
|
||||||
player.playerLevel[GameConstants.HITPOINTS] += damage;
|
player.playerLevel[GameConstants.HITPOINTS] += damage;
|
||||||
if (player.playerLevel[GameConstants.HITPOINTS] > player.getLevelForXP(player.playerXP[GameConstants.HITPOINTS])) {
|
if (player.playerLevel[GameConstants.HITPOINTS] > player.getPlayerAssistant().getLevelForXP(player.playerXP[GameConstants.HITPOINTS])) {
|
||||||
player.playerLevel[GameConstants.HITPOINTS] = player.getLevelForXP(player.playerXP[GameConstants.HITPOINTS]);
|
player.playerLevel[GameConstants.HITPOINTS] = player.getPlayerAssistant().getLevelForXP(player.playerXP[GameConstants.HITPOINTS]);
|
||||||
}
|
}
|
||||||
player.getPlayerAssistant().refreshSkill(GameConstants.HITPOINTS);
|
player.getPlayerAssistant().refreshSkill(GameConstants.HITPOINTS);
|
||||||
NpcHandler.npcs[i].gfx0(398);
|
NpcHandler.npcs[i].gfx0(398);
|
||||||
@@ -332,10 +332,10 @@ public class CombatAssistant {
|
|||||||
switch (player.specEffect) {
|
switch (player.specEffect) {
|
||||||
case 4:
|
case 4:
|
||||||
if (damage > 0) {
|
if (damage > 0) {
|
||||||
if (player.playerLevel[GameConstants.HITPOINTS] + damage > player.getLevelForXP(player.playerXP[GameConstants.HITPOINTS])) {
|
if (player.playerLevel[GameConstants.HITPOINTS] + damage > player.getPlayerAssistant().getLevelForXP(player.playerXP[GameConstants.HITPOINTS])) {
|
||||||
if (player.playerLevel[GameConstants.HITPOINTS] > player.getLevelForXP(player.playerXP[GameConstants.HITPOINTS])) {
|
if (player.playerLevel[GameConstants.HITPOINTS] > player.getPlayerAssistant().getLevelForXP(player.playerXP[GameConstants.HITPOINTS])) {
|
||||||
} else {
|
} else {
|
||||||
player.playerLevel[GameConstants.HITPOINTS] = player.getLevelForXP(player.playerXP[GameConstants.HITPOINTS]);
|
player.playerLevel[GameConstants.HITPOINTS] = player.getPlayerAssistant().getLevelForXP(player.playerXP[GameConstants.HITPOINTS]);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
player.playerLevel[GameConstants.HITPOINTS] += damage;
|
player.playerLevel[GameConstants.HITPOINTS] += damage;
|
||||||
@@ -1435,8 +1435,8 @@ public class CombatAssistant {
|
|||||||
}
|
}
|
||||||
if (damage > 0 && guthansEffect) {
|
if (damage > 0 && guthansEffect) {
|
||||||
player.playerLevel[GameConstants.HITPOINTS] += damage;
|
player.playerLevel[GameConstants.HITPOINTS] += damage;
|
||||||
if (player.playerLevel[GameConstants.HITPOINTS] > player.getLevelForXP(player.playerXP[GameConstants.HITPOINTS])) {
|
if (player.playerLevel[GameConstants.HITPOINTS] > player.getPlayerAssistant().getLevelForXP(player.playerXP[GameConstants.HITPOINTS])) {
|
||||||
player.playerLevel[GameConstants.HITPOINTS] = player.getLevelForXP(player.playerXP[GameConstants.HITPOINTS]);
|
player.playerLevel[GameConstants.HITPOINTS] = player.getPlayerAssistant().getLevelForXP(player.playerXP[GameConstants.HITPOINTS]);
|
||||||
}
|
}
|
||||||
player.getPlayerAssistant().refreshSkill(GameConstants.HITPOINTS);
|
player.getPlayerAssistant().refreshSkill(GameConstants.HITPOINTS);
|
||||||
o.gfx0(398);
|
o.gfx0(398);
|
||||||
@@ -1488,9 +1488,9 @@ public class CombatAssistant {
|
|||||||
break;
|
break;
|
||||||
case 4:
|
case 4:
|
||||||
if (damage > 0) {
|
if (damage > 0) {
|
||||||
if (player.playerLevel[GameConstants.HITPOINTS] + damage > player.getLevelForXP(player.playerXP[GameConstants.HITPOINTS])) {
|
if (player.playerLevel[GameConstants.HITPOINTS] + damage > player.getPlayerAssistant().getLevelForXP(player.playerXP[GameConstants.HITPOINTS])) {
|
||||||
if (player.playerLevel[GameConstants.HITPOINTS] < player.getLevelForXP(player.playerXP[GameConstants.HITPOINTS])) {
|
if (player.playerLevel[GameConstants.HITPOINTS] < player.getPlayerAssistant().getLevelForXP(player.playerXP[GameConstants.HITPOINTS])) {
|
||||||
player.playerLevel[GameConstants.HITPOINTS] = player.getLevelForXP(player.playerXP[GameConstants.HITPOINTS]);
|
player.playerLevel[GameConstants.HITPOINTS] = player.getPlayerAssistant().getLevelForXP(player.playerXP[GameConstants.HITPOINTS]);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
player.playerLevel[GameConstants.HITPOINTS] += damage;
|
player.playerLevel[GameConstants.HITPOINTS] += damage;
|
||||||
|
|||||||
@@ -278,7 +278,7 @@ public class Specials {
|
|||||||
player2.forcedChat("Raarrrrrgggggghhhhhhh!");
|
player2.forcedChat("Raarrrrrgggggghhhhhhh!");
|
||||||
player2.startAnimation(1056);
|
player2.startAnimation(1056);
|
||||||
player2.specAmount -= 5;
|
player2.specAmount -= 5;
|
||||||
player2.playerLevel[GameConstants.STRENGTH] = player2.getLevelForXP(player2.playerXP[GameConstants.STRENGTH]) + player2.getLevelForXP(player2.playerXP[GameConstants.STRENGTH]) * 15 / 100;
|
player2.playerLevel[GameConstants.STRENGTH] = player2.getPlayerAssistant().getLevelForXP(player2.playerXP[GameConstants.STRENGTH]) + player2.getPlayerAssistant().getLevelForXP(player2.playerXP[GameConstants.STRENGTH]) * 15 / 100;
|
||||||
player2.getPlayerAssistant().refreshSkill(GameConstants.STRENGTH);
|
player2.getPlayerAssistant().refreshSkill(GameConstants.STRENGTH);
|
||||||
player2.getItemAssistant().updateSpecialBar();
|
player2.getItemAssistant().updateSpecialBar();
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ public class MagicMaxHit {
|
|||||||
public static int mageAttackBonus(Player c) {
|
public static int mageAttackBonus(Player c) {
|
||||||
int magicBonus = c.playerLevel[GameConstants.MAGIC];
|
int magicBonus = c.playerLevel[GameConstants.MAGIC];
|
||||||
if (MagicData.fullVoidMage(c)) {
|
if (MagicData.fullVoidMage(c)) {
|
||||||
magicBonus += c.getLevelForXP(c.playerXP[GameConstants.MAGIC]) * 0.2;
|
magicBonus += c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.MAGIC]) * 0.2;
|
||||||
}
|
}
|
||||||
if (c.getPrayer().prayerActive[4]) {
|
if (c.getPrayer().prayerActive[4]) {
|
||||||
magicBonus *= 1.05;
|
magicBonus *= 1.05;
|
||||||
@@ -23,15 +23,15 @@ public class MagicMaxHit {
|
|||||||
public static int mageDefenceBonus(Player c) {
|
public static int mageDefenceBonus(Player c) {
|
||||||
int defenceBonus = c.playerLevel[GameConstants.DEFENCE] / 2 + c.playerLevel[GameConstants.MAGIC] / 2;
|
int defenceBonus = c.playerLevel[GameConstants.DEFENCE] / 2 + c.playerLevel[GameConstants.MAGIC] / 2;
|
||||||
if (c.getPrayer().prayerActive[0]) {
|
if (c.getPrayer().prayerActive[0]) {
|
||||||
defenceBonus += c.getLevelForXP(c.playerXP[GameConstants.DEFENCE]) * 0.05;
|
defenceBonus += c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.DEFENCE]) * 0.05;
|
||||||
} else if (c.getPrayer().prayerActive[3]) {
|
} else if (c.getPrayer().prayerActive[3]) {
|
||||||
defenceBonus += c.getLevelForXP(c.playerXP[GameConstants.DEFENCE]) * 0.1;
|
defenceBonus += c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.DEFENCE]) * 0.1;
|
||||||
} else if (c.getPrayer().prayerActive[9]) {
|
} else if (c.getPrayer().prayerActive[9]) {
|
||||||
defenceBonus += c.getLevelForXP(c.playerXP[GameConstants.DEFENCE]) * 0.15;
|
defenceBonus += c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.DEFENCE]) * 0.15;
|
||||||
} else if (c.getPrayer().prayerActive[18]) {
|
} else if (c.getPrayer().prayerActive[18]) {
|
||||||
defenceBonus += c.getLevelForXP(c.playerXP[GameConstants.DEFENCE]) * 0.2;
|
defenceBonus += c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.DEFENCE]) * 0.2;
|
||||||
} else if (c.getPrayer().prayerActive[19]) {
|
} else if (c.getPrayer().prayerActive[19]) {
|
||||||
defenceBonus += c.getLevelForXP(c.playerXP[GameConstants.DEFENCE]) * 0.25;
|
defenceBonus += c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.DEFENCE]) * 0.25;
|
||||||
}
|
}
|
||||||
return defenceBonus + c.playerBonus[8] + c.playerBonus[8] / 3;
|
return defenceBonus + c.playerBonus[8] + c.playerBonus[8] / 3;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -63,7 +63,7 @@ public class MagicSpells extends MagicData {
|
|||||||
- PlayerHandler.players[playerId].reduceStat > 35000) {
|
- PlayerHandler.players[playerId].reduceStat > 35000) {
|
||||||
PlayerHandler.players[playerId].reduceStat = System
|
PlayerHandler.players[playerId].reduceStat = System
|
||||||
.currentTimeMillis();
|
.currentTimeMillis();
|
||||||
PlayerHandler.players[playerId].playerLevel[GameConstants.ATTACK] -= PlayerHandler.players[playerId]
|
PlayerHandler.players[playerId].playerLevel[GameConstants.ATTACK] -= PlayerHandler.players[playerId].getPlayerAssistant()
|
||||||
.getLevelForXP(PlayerHandler.players[playerId].playerXP[GameConstants.ATTACK]) * 10 / 100;
|
.getLevelForXP(PlayerHandler.players[playerId].playerXP[GameConstants.ATTACK]) * 10 / 100;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|||||||
@@ -23,18 +23,18 @@ public class MeleeData {
|
|||||||
int attackLevel = c.playerLevel[GameConstants.ATTACK];
|
int attackLevel = c.playerLevel[GameConstants.ATTACK];
|
||||||
// 2, 5, 11, 18, 19
|
// 2, 5, 11, 18, 19
|
||||||
if (c.getPrayer().prayerActive[2]) {
|
if (c.getPrayer().prayerActive[2]) {
|
||||||
attackLevel += c.getLevelForXP(c.playerXP[GameConstants.ATTACK]) * 0.05;
|
attackLevel += c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.ATTACK]) * 0.05;
|
||||||
} else if (c.getPrayer().prayerActive[7]) {
|
} else if (c.getPrayer().prayerActive[7]) {
|
||||||
attackLevel += c.getLevelForXP(c.playerXP[GameConstants.ATTACK]) * 0.1;
|
attackLevel += c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.ATTACK]) * 0.1;
|
||||||
} else if (c.getPrayer().prayerActive[15]) {
|
} else if (c.getPrayer().prayerActive[15]) {
|
||||||
attackLevel += c.getLevelForXP(c.playerXP[GameConstants.ATTACK]) * 0.15;
|
attackLevel += c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.ATTACK]) * 0.15;
|
||||||
} else if (c.getPrayer().prayerActive[24]) {
|
} else if (c.getPrayer().prayerActive[24]) {
|
||||||
attackLevel += c.getLevelForXP(c.playerXP[GameConstants.ATTACK]) * 0.15;
|
attackLevel += c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.ATTACK]) * 0.15;
|
||||||
} else if (c.getPrayer().prayerActive[25]) {
|
} else if (c.getPrayer().prayerActive[25]) {
|
||||||
attackLevel += c.getLevelForXP(c.playerXP[GameConstants.ATTACK]) * 0.2;
|
attackLevel += c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.ATTACK]) * 0.2;
|
||||||
}
|
}
|
||||||
if (fullVoidMelee(c)) {
|
if (fullVoidMelee(c)) {
|
||||||
attackLevel += c.getLevelForXP(c.playerXP[GameConstants.ATTACK]) * 0.1;
|
attackLevel += c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.ATTACK]) * 0.1;
|
||||||
}
|
}
|
||||||
attackLevel *= c.specAccuracy;
|
attackLevel *= c.specAccuracy;
|
||||||
// c.sendMessage("Attack: " + (attackLevel +
|
// c.sendMessage("Attack: " + (attackLevel +
|
||||||
@@ -65,15 +65,15 @@ public class MeleeData {
|
|||||||
int defenceLevel = c.playerLevel[GameConstants.DEFENCE];
|
int defenceLevel = c.playerLevel[GameConstants.DEFENCE];
|
||||||
int i = c.playerBonus[bestMeleeDef(c)];
|
int i = c.playerBonus[bestMeleeDef(c)];
|
||||||
if (c.getPrayer().prayerActive[0]) {
|
if (c.getPrayer().prayerActive[0]) {
|
||||||
defenceLevel += c.getLevelForXP(c.playerXP[GameConstants.DEFENCE]) * 0.05;
|
defenceLevel += c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.DEFENCE]) * 0.05;
|
||||||
} else if (c.getPrayer().prayerActive[5]) {
|
} else if (c.getPrayer().prayerActive[5]) {
|
||||||
defenceLevel += c.getLevelForXP(c.playerXP[GameConstants.DEFENCE]) * 0.1;
|
defenceLevel += c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.DEFENCE]) * 0.1;
|
||||||
} else if (c.getPrayer().prayerActive[13]) {
|
} else if (c.getPrayer().prayerActive[13]) {
|
||||||
defenceLevel += c.getLevelForXP(c.playerXP[GameConstants.DEFENCE]) * 0.15;
|
defenceLevel += c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.DEFENCE]) * 0.15;
|
||||||
} else if (c.getPrayer().prayerActive[24]) {
|
} else if (c.getPrayer().prayerActive[24]) {
|
||||||
defenceLevel += c.getLevelForXP(c.playerXP[GameConstants.DEFENCE]) * 0.2;
|
defenceLevel += c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.DEFENCE]) * 0.2;
|
||||||
} else if (c.getPrayer().prayerActive[25]) {
|
} else if (c.getPrayer().prayerActive[25]) {
|
||||||
defenceLevel += c.getLevelForXP(c.playerXP[GameConstants.DEFENCE]) * 0.25;
|
defenceLevel += c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.DEFENCE]) * 0.25;
|
||||||
}
|
}
|
||||||
return (int) (defenceLevel + defenceLevel * 0.15 + (i + i * 0.05));
|
return (int) (defenceLevel + defenceLevel * 0.15 + (i + i * 0.05));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ public class MeleeMaxHit {
|
|||||||
double maxHit = 0;
|
double maxHit = 0;
|
||||||
int strBonus = c.playerBonus[10];
|
int strBonus = c.playerBonus[10];
|
||||||
int strength = c.playerLevel[GameConstants.STRENGTH];
|
int strength = c.playerLevel[GameConstants.STRENGTH];
|
||||||
int lvlForXP = c.getLevelForXP(c.playerXP[GameConstants.STRENGTH]);
|
int lvlForXP = c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.STRENGTH]);
|
||||||
if (c.getPrayer().prayerActive[1]) {
|
if (c.getPrayer().prayerActive[1]) {
|
||||||
strength += (int) (lvlForXP * .05);
|
strength += (int) (lvlForXP * .05);
|
||||||
} else if (c.getPrayer().prayerActive[6]) {
|
} else if (c.getPrayer().prayerActive[6]) {
|
||||||
|
|||||||
@@ -657,7 +657,7 @@ public class NpcCombat {
|
|||||||
c.getPlayerAssistant().handleROL();
|
c.getPlayerAssistant().handleROL();
|
||||||
} else {
|
} else {
|
||||||
int difference = c.playerLevel[GameConstants.HITPOINTS] - damage;
|
int difference = c.playerLevel[GameConstants.HITPOINTS] - damage;
|
||||||
if (difference <= c.getLevelForXP(c.playerXP[GameConstants.HITPOINTS]) / 10 && difference > 0) {
|
if (difference <= c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.HITPOINTS]) / 10 && difference > 0) {
|
||||||
c.appendRedemption();
|
c.appendRedemption();
|
||||||
}
|
}
|
||||||
if (c.playerLevel[GameConstants.HITPOINTS] - damage < 0) {
|
if (c.playerLevel[GameConstants.HITPOINTS] - damage < 0) {
|
||||||
|
|||||||
@@ -8,15 +8,15 @@ public class RangeMaxHit {
|
|||||||
public static int calculateRangeDefence(Player c) {
|
public static int calculateRangeDefence(Player c) {
|
||||||
int defenceLevel = c.playerLevel[GameConstants.DEFENCE];
|
int defenceLevel = c.playerLevel[GameConstants.DEFENCE];
|
||||||
if (c.getPrayer().prayerActive[0]) {
|
if (c.getPrayer().prayerActive[0]) {
|
||||||
defenceLevel += c.getLevelForXP(c.playerXP[GameConstants.DEFENCE]) * 0.05;
|
defenceLevel += c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.DEFENCE]) * 0.05;
|
||||||
} else if (c.getPrayer().prayerActive[5]) {
|
} else if (c.getPrayer().prayerActive[5]) {
|
||||||
defenceLevel += c.getLevelForXP(c.playerXP[GameConstants.DEFENCE]) * 0.1;
|
defenceLevel += c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.DEFENCE]) * 0.1;
|
||||||
} else if (c.getPrayer().prayerActive[13]) {
|
} else if (c.getPrayer().prayerActive[13]) {
|
||||||
defenceLevel += c.getLevelForXP(c.playerXP[GameConstants.DEFENCE]) * 0.15;
|
defenceLevel += c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.DEFENCE]) * 0.15;
|
||||||
} else if (c.getPrayer().prayerActive[24]) {
|
} else if (c.getPrayer().prayerActive[24]) {
|
||||||
defenceLevel += c.getLevelForXP(c.playerXP[GameConstants.DEFENCE]) * 0.2;
|
defenceLevel += c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.DEFENCE]) * 0.2;
|
||||||
} else if (c.getPrayer().prayerActive[25]) {
|
} else if (c.getPrayer().prayerActive[25]) {
|
||||||
defenceLevel += c.getLevelForXP(c.playerXP[GameConstants.DEFENCE]) * 0.25;
|
defenceLevel += c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.DEFENCE]) * 0.25;
|
||||||
}
|
}
|
||||||
return defenceLevel + c.playerBonus[9] + c.playerBonus[9] / 2;
|
return defenceLevel + c.playerBonus[9] + c.playerBonus[9] / 2;
|
||||||
}
|
}
|
||||||
@@ -25,7 +25,7 @@ public class RangeMaxHit {
|
|||||||
int rangeLevel = c.playerLevel[GameConstants.RANGED];
|
int rangeLevel = c.playerLevel[GameConstants.RANGED];
|
||||||
rangeLevel *= c.specAccuracy;
|
rangeLevel *= c.specAccuracy;
|
||||||
if (RangeData.fullVoidRange(c)) {
|
if (RangeData.fullVoidRange(c)) {
|
||||||
rangeLevel += c.getLevelForXP(c.playerXP[GameConstants.RANGED]) * 0.1;
|
rangeLevel += c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.RANGED]) * 0.1;
|
||||||
}
|
}
|
||||||
if (c.getPrayer().prayerActive[3]) {
|
if (c.getPrayer().prayerActive[3]) {
|
||||||
rangeLevel *= 1.05;
|
rangeLevel *= 1.05;
|
||||||
|
|||||||
@@ -129,8 +129,8 @@ public class Beverages {
|
|||||||
switch (id) {
|
switch (id) {
|
||||||
case 1917:
|
case 1917:
|
||||||
case 7740://beer
|
case 7740://beer
|
||||||
double beerEffectStrength = c.getLevelForXP(c.playerXP[GameConstants.STRENGTH]) * .04 + c.getLevelForXP(c.playerXP[GameConstants.STRENGTH]);
|
double beerEffectStrength = c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.STRENGTH]) * .04 + c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.STRENGTH]);
|
||||||
double beerEffectAttack = c.getLevelForXP(c.playerXP[GameConstants.ATTACK]) * .07;
|
double beerEffectAttack = c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.ATTACK]) * .07;
|
||||||
if (c.playerLevel[GameConstants.STRENGTH] < beerEffectStrength) {
|
if (c.playerLevel[GameConstants.STRENGTH] < beerEffectStrength) {
|
||||||
c.playerLevel[GameConstants.STRENGTH] = (int) beerEffectStrength;
|
c.playerLevel[GameConstants.STRENGTH] = (int) beerEffectStrength;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -256,11 +256,11 @@ public class Food {
|
|||||||
player.getPacketSender().sendSound(SoundList.DRINK, 100, 0);
|
player.getPacketSender().sendSound(SoundList.DRINK, 100, 0);
|
||||||
}
|
}
|
||||||
player.foodDelay = System.currentTimeMillis();
|
player.foodDelay = System.currentTimeMillis();
|
||||||
if (player.playerLevel[GameConstants.HITPOINTS] < player.getLevelForXP(player.playerXP[GameConstants.HITPOINTS])) {
|
if (player.playerLevel[GameConstants.HITPOINTS] < player.getPlayerAssistant().getLevelForXP(player.playerXP[GameConstants.HITPOINTS])) {
|
||||||
player.playerLevel[GameConstants.HITPOINTS] += f.getHeal();
|
player.playerLevel[GameConstants.HITPOINTS] += f.getHeal();
|
||||||
player.getPacketSender().sendMessage("It heals some health.");
|
player.getPacketSender().sendMessage("It heals some health.");
|
||||||
if (player.playerLevel[GameConstants.HITPOINTS] > player.getLevelForXP(player.playerXP[GameConstants.HITPOINTS])) {
|
if (player.playerLevel[GameConstants.HITPOINTS] > player.getPlayerAssistant().getLevelForXP(player.playerXP[GameConstants.HITPOINTS])) {
|
||||||
player.playerLevel[GameConstants.HITPOINTS] = player.getLevelForXP(player.playerXP[GameConstants.HITPOINTS]);
|
player.playerLevel[GameConstants.HITPOINTS] = player.getPlayerAssistant().getLevelForXP(player.playerXP[GameConstants.HITPOINTS]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
player.getPlayerAssistant().refreshSkill(GameConstants.HITPOINTS);
|
player.getPlayerAssistant().refreshSkill(GameConstants.HITPOINTS);
|
||||||
|
|||||||
@@ -51,10 +51,10 @@ public class Kebabs {
|
|||||||
} else if (Misc.random(100.0f) <= eff2) { // 61.24% heals 10% of HP
|
} else if (Misc.random(100.0f) <= eff2) { // 61.24% heals 10% of HP
|
||||||
c.getPacketSender()
|
c.getPacketSender()
|
||||||
.sendMessage("It restores some life points.");
|
.sendMessage("It restores some life points.");
|
||||||
if (c.playerLevel[GameConstants.HITPOINTS] < c.getLevelForXP(c.playerXP[GameConstants.HITPOINTS])) {
|
if (c.playerLevel[GameConstants.HITPOINTS] < c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.HITPOINTS])) {
|
||||||
c.playerLevel[GameConstants.HITPOINTS] += c.getLevelForXP(c.playerXP[GameConstants.HITPOINTS]) * 0.10;
|
c.playerLevel[GameConstants.HITPOINTS] += c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.HITPOINTS]) * 0.10;
|
||||||
if (c.playerLevel[GameConstants.HITPOINTS] > c.getLevelForXP(c.playerXP[GameConstants.HITPOINTS])) {
|
if (c.playerLevel[GameConstants.HITPOINTS] > c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.HITPOINTS])) {
|
||||||
c.playerLevel[GameConstants.HITPOINTS] = c.getLevelForXP(c.playerXP[GameConstants.HITPOINTS]);
|
c.playerLevel[GameConstants.HITPOINTS] = c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.HITPOINTS]);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -62,10 +62,10 @@ public class Kebabs {
|
|||||||
} else if (Misc.random(100.0f) <= eff3) { // 21.12% + 10-20 HP
|
} else if (Misc.random(100.0f) <= eff3) { // 21.12% + 10-20 HP
|
||||||
c.getPacketSender().sendMessage(
|
c.getPacketSender().sendMessage(
|
||||||
"That was a good kebab. You feel a lot better. ");
|
"That was a good kebab. You feel a lot better. ");
|
||||||
if (c.playerLevel[GameConstants.HITPOINTS] < c.getLevelForXP(c.playerXP[GameConstants.HITPOINTS])) {
|
if (c.playerLevel[GameConstants.HITPOINTS] < c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.HITPOINTS])) {
|
||||||
c.playerLevel[GameConstants.HITPOINTS] += Misc.random(20);
|
c.playerLevel[GameConstants.HITPOINTS] += Misc.random(20);
|
||||||
if (c.playerLevel[GameConstants.HITPOINTS] > c.getLevelForXP(c.playerXP[GameConstants.HITPOINTS])) {
|
if (c.playerLevel[GameConstants.HITPOINTS] > c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.HITPOINTS])) {
|
||||||
c.playerLevel[GameConstants.HITPOINTS] = c.getLevelForXP(c.playerXP[GameConstants.HITPOINTS]);
|
c.playerLevel[GameConstants.HITPOINTS] = c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.HITPOINTS]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -80,10 +80,10 @@ public class Kebabs {
|
|||||||
c.getPlayerAssistant().refreshSkill(GameConstants.DEFENCE);
|
c.getPlayerAssistant().refreshSkill(GameConstants.DEFENCE);
|
||||||
c.getPlayerAssistant().refreshSkill(GameConstants.STRENGTH);
|
c.getPlayerAssistant().refreshSkill(GameConstants.STRENGTH);
|
||||||
c.getPlayerAssistant().refreshSkill(GameConstants.HITPOINTS);
|
c.getPlayerAssistant().refreshSkill(GameConstants.HITPOINTS);
|
||||||
if (c.playerLevel[GameConstants.HITPOINTS] < c.getLevelForXP(c.playerXP[GameConstants.HITPOINTS])) {
|
if (c.playerLevel[GameConstants.HITPOINTS] < c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.HITPOINTS])) {
|
||||||
c.playerLevel[GameConstants.HITPOINTS] += Misc.random(30);
|
c.playerLevel[GameConstants.HITPOINTS] += Misc.random(30);
|
||||||
if (c.playerLevel[GameConstants.HITPOINTS] > c.getLevelForXP(c.playerXP[GameConstants.HITPOINTS])) {
|
if (c.playerLevel[GameConstants.HITPOINTS] > c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.HITPOINTS])) {
|
||||||
c.playerLevel[GameConstants.HITPOINTS] = c.getLevelForXP(c.playerXP[GameConstants.HITPOINTS]);
|
c.playerLevel[GameConstants.HITPOINTS] = c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.HITPOINTS]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -106,7 +106,7 @@ public class Kebabs {
|
|||||||
public static void eat(Player player, int slot) {
|
public static void eat(Player player, int slot) {
|
||||||
if (System.currentTimeMillis() - player.foodDelay >= 1500
|
if (System.currentTimeMillis() - player.foodDelay >= 1500
|
||||||
&& player.playerLevel[GameConstants.HITPOINTS] > 0) {
|
&& player.playerLevel[GameConstants.HITPOINTS] > 0) {
|
||||||
if (player.playerLevel[GameConstants.HITPOINTS] == player.getLevelForXP(player.playerXP[GameConstants.HITPOINTS])) { // If
|
if (player.playerLevel[GameConstants.HITPOINTS] == player.getPlayerAssistant().getLevelForXP(player.playerXP[GameConstants.HITPOINTS])) { // If
|
||||||
// full
|
// full
|
||||||
// health,
|
// health,
|
||||||
// does
|
// does
|
||||||
|
|||||||
@@ -330,12 +330,12 @@ public class Potions {
|
|||||||
// c.startAnimation(829);
|
// c.startAnimation(829);
|
||||||
c.playerItems[slot] = replaceItem + 1;
|
c.playerItems[slot] = replaceItem + 1;
|
||||||
c.getItemAssistant().resetItems(3214);
|
c.getItemAssistant().resetItems(3214);
|
||||||
c.playerLevel[GameConstants.PRAYER] += c.getLevelForXP(c.playerXP[GameConstants.PRAYER]) * .33;
|
c.playerLevel[GameConstants.PRAYER] += c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.PRAYER]) * .33;
|
||||||
if (rest) {
|
if (rest) {
|
||||||
c.playerLevel[GameConstants.PRAYER] += 1;
|
c.playerLevel[GameConstants.PRAYER] += 1;
|
||||||
}
|
}
|
||||||
if (c.playerLevel[GameConstants.PRAYER] > c.getLevelForXP(c.playerXP[GameConstants.PRAYER])) {
|
if (c.playerLevel[GameConstants.PRAYER] > c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.PRAYER])) {
|
||||||
c.playerLevel[GameConstants.PRAYER] = c.getLevelForXP(c.playerXP[GameConstants.PRAYER]);
|
c.playerLevel[GameConstants.PRAYER] = c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.PRAYER]);
|
||||||
}
|
}
|
||||||
c.getPlayerAssistant().refreshSkill(GameConstants.PRAYER);
|
c.getPlayerAssistant().refreshSkill(GameConstants.PRAYER);
|
||||||
if (rest) {
|
if (rest) {
|
||||||
@@ -348,10 +348,10 @@ public class Potions {
|
|||||||
if (j == 5 || j == 3) {
|
if (j == 5 || j == 3) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if (c.playerLevel[j] < c.getLevelForXP(c.playerXP[j])) {
|
if (c.playerLevel[j] < c.getPlayerAssistant().getLevelForXP(c.playerXP[j])) {
|
||||||
c.playerLevel[j] += c.getLevelForXP(c.playerXP[j]) * .33;
|
c.playerLevel[j] += c.getPlayerAssistant().getLevelForXP(c.playerXP[j]) * .33;
|
||||||
if (c.playerLevel[j] > c.getLevelForXP(c.playerXP[j])) {
|
if (c.playerLevel[j] > c.getPlayerAssistant().getLevelForXP(c.playerXP[j])) {
|
||||||
c.playerLevel[j] = c.getLevelForXP(c.playerXP[j]);
|
c.playerLevel[j] = c.getPlayerAssistant().getLevelForXP(c.playerXP[j]);
|
||||||
}
|
}
|
||||||
c.getPlayerAssistant().refreshSkill(j);
|
c.getPlayerAssistant().refreshSkill(j);
|
||||||
c.getPacketSender().setSkillLevel(j, c.playerLevel[j],
|
c.getPacketSender().setSkillLevel(j, c.playerLevel[j],
|
||||||
@@ -375,16 +375,16 @@ public class Potions {
|
|||||||
c.playerXP[tD]);
|
c.playerXP[tD]);
|
||||||
}
|
}
|
||||||
c.playerLevel[GameConstants.ATTACK] += getBrewStat(0, .20);
|
c.playerLevel[GameConstants.ATTACK] += getBrewStat(0, .20);
|
||||||
if (c.playerLevel[GameConstants.ATTACK] > c.getLevelForXP(c.playerXP[GameConstants.ATTACK]) * 1.2 + 1) {
|
if (c.playerLevel[GameConstants.ATTACK] > c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.ATTACK]) * 1.2 + 1) {
|
||||||
c.playerLevel[GameConstants.ATTACK] = (int) (c.getLevelForXP(c.playerXP[GameConstants.ATTACK]) * 1.2);
|
c.playerLevel[GameConstants.ATTACK] = (int) (c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.ATTACK]) * 1.2);
|
||||||
}
|
}
|
||||||
c.playerLevel[GameConstants.STRENGTH] += getBrewStat(2, .12);
|
c.playerLevel[GameConstants.STRENGTH] += getBrewStat(2, .12);
|
||||||
if (c.playerLevel[GameConstants.STRENGTH] > c.getLevelForXP(c.playerXP[GameConstants.STRENGTH]) * 1.2 + 1) {
|
if (c.playerLevel[GameConstants.STRENGTH] > c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.STRENGTH]) * 1.2 + 1) {
|
||||||
c.playerLevel[GameConstants.STRENGTH] = (int) (c.getLevelForXP(c.playerXP[GameConstants.STRENGTH]) * 1.2);
|
c.playerLevel[GameConstants.STRENGTH] = (int) (c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.STRENGTH]) * 1.2);
|
||||||
}
|
}
|
||||||
c.playerLevel[GameConstants.PRAYER] += getBrewStat(5, .10);
|
c.playerLevel[GameConstants.PRAYER] += getBrewStat(5, .10);
|
||||||
if (c.playerLevel[GameConstants.PRAYER] > c.getLevelForXP(c.playerXP[GameConstants.PRAYER]) * 1.2 + 1) {
|
if (c.playerLevel[GameConstants.PRAYER] > c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.PRAYER]) * 1.2 + 1) {
|
||||||
c.playerLevel[GameConstants.PRAYER] = (int) (c.getLevelForXP(c.playerXP[GameConstants.PRAYER]) * 1.2);
|
c.playerLevel[GameConstants.PRAYER] = (int) (c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.PRAYER]) * 1.2);
|
||||||
}
|
}
|
||||||
c.getPlayerAssistant().refreshSkill(0);
|
c.getPlayerAssistant().refreshSkill(0);
|
||||||
c.getPlayerAssistant().refreshSkill(GameConstants.STRENGTH);
|
c.getPlayerAssistant().refreshSkill(GameConstants.STRENGTH);
|
||||||
@@ -413,14 +413,14 @@ public class Potions {
|
|||||||
c.playerXP[tD]);
|
c.playerXP[tD]);
|
||||||
}
|
}
|
||||||
c.playerLevel[GameConstants.DEFENCE] += getBrewStat(1, .20);
|
c.playerLevel[GameConstants.DEFENCE] += getBrewStat(1, .20);
|
||||||
if (c.playerLevel[GameConstants.DEFENCE] > c.getLevelForXP(c.playerXP[GameConstants.DEFENCE]) * 1.2 + 1) {
|
if (c.playerLevel[GameConstants.DEFENCE] > c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.DEFENCE]) * 1.2 + 1) {
|
||||||
c.playerLevel[GameConstants.DEFENCE] = (int) (c.getLevelForXP(c.playerXP[GameConstants.DEFENCE]) * 1.2);
|
c.playerLevel[GameConstants.DEFENCE] = (int) (c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.DEFENCE]) * 1.2);
|
||||||
}
|
}
|
||||||
c.getPlayerAssistant().refreshSkill(GameConstants.DEFENCE);
|
c.getPlayerAssistant().refreshSkill(GameConstants.DEFENCE);
|
||||||
|
|
||||||
c.playerLevel[GameConstants.HITPOINTS] += getBrewStat(3, .15);
|
c.playerLevel[GameConstants.HITPOINTS] += getBrewStat(3, .15);
|
||||||
if (c.playerLevel[GameConstants.HITPOINTS] > c.getLevelForXP(c.playerXP[GameConstants.HITPOINTS]) * 1.17 + 1) {
|
if (c.playerLevel[GameConstants.HITPOINTS] > c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.HITPOINTS]) * 1.17 + 1) {
|
||||||
c.playerLevel[GameConstants.HITPOINTS] = (int) (c.getLevelForXP(c.playerXP[GameConstants.HITPOINTS]) * 1.17);
|
c.playerLevel[GameConstants.HITPOINTS] = (int) (c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.HITPOINTS]) * 1.17);
|
||||||
}
|
}
|
||||||
c.getPlayerAssistant().refreshSkill(GameConstants.HITPOINTS);
|
c.getPlayerAssistant().refreshSkill(GameConstants.HITPOINTS);
|
||||||
}
|
}
|
||||||
@@ -442,19 +442,19 @@ public class Potions {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public int getBrewStat(int skill, double amount) {
|
public int getBrewStat(int skill, double amount) {
|
||||||
return (int) (c.getLevelForXP(c.playerXP[skill]) * amount);
|
return (int) (c.getPlayerAssistant().getLevelForXP(c.playerXP[skill]) * amount);
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getBoostedStat(int skill, boolean sup) {
|
public int getBoostedStat(int skill, boolean sup) {
|
||||||
int increaseBy;
|
int increaseBy;
|
||||||
if (sup) {
|
if (sup) {
|
||||||
increaseBy = (int) (c.getLevelForXP(c.playerXP[skill]) * .20);
|
increaseBy = (int) (c.getPlayerAssistant().getLevelForXP(c.playerXP[skill]) * .20);
|
||||||
} else {
|
} else {
|
||||||
increaseBy = (int) (c.getLevelForXP(c.playerXP[skill]) * .13) + 1;
|
increaseBy = (int) (c.getPlayerAssistant().getLevelForXP(c.playerXP[skill]) * .13) + 1;
|
||||||
}
|
}
|
||||||
if (c.playerLevel[skill] + increaseBy > c
|
if (c.playerLevel[skill] + increaseBy > c.getPlayerAssistant()
|
||||||
.getLevelForXP(c.playerXP[skill]) + increaseBy + 1) {
|
.getLevelForXP(c.playerXP[skill]) + increaseBy + 1) {
|
||||||
return c.getLevelForXP(c.playerXP[skill]) + increaseBy
|
return c.getPlayerAssistant().getLevelForXP(c.playerXP[skill]) + increaseBy
|
||||||
- c.playerLevel[skill];
|
- c.playerLevel[skill];
|
||||||
}
|
}
|
||||||
return increaseBy;
|
return increaseBy;
|
||||||
|
|||||||
+1
-1
@@ -586,7 +586,7 @@ public class CastleWars {
|
|||||||
deleteGameItems(player);
|
deleteGameItems(player);
|
||||||
player.isDead = false;
|
player.isDead = false;
|
||||||
for (int i = 0; i < 25; i++) {
|
for (int i = 0; i < 25; i++) {
|
||||||
player.playerLevel[i] = player
|
player.playerLevel[i] = player.getPlayerAssistant()
|
||||||
.getLevelForXP(player.playerXP[i]);
|
.getLevelForXP(player.playerXP[i]);
|
||||||
player.getPlayerAssistant().refreshSkill(i);
|
player.getPlayerAssistant().refreshSkill(i);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -939,13 +939,13 @@ public abstract class Player {
|
|||||||
if (System.currentTimeMillis() - restoreStatsDelay > 60000) {
|
if (System.currentTimeMillis() - restoreStatsDelay > 60000) {
|
||||||
restoreStatsDelay = System.currentTimeMillis();
|
restoreStatsDelay = System.currentTimeMillis();
|
||||||
for (int skill = 0; skill < playerLevel.length; skill++) {
|
for (int skill = 0; skill < playerLevel.length; skill++) {
|
||||||
if (playerLevel[skill] < getLevelForXP(playerXP[skill])) {
|
if (playerLevel[skill] < playerAssistant.getLevelForXP(playerXP[skill])) {
|
||||||
if (skill != 5) { // prayer doesn't restore
|
if (skill != 5) { // prayer doesn't restore
|
||||||
playerLevel[skill] += 1;
|
playerLevel[skill] += 1;
|
||||||
getPacketSender().setSkillLevel(skill, playerLevel[skill], playerXP[skill]);
|
getPacketSender().setSkillLevel(skill, playerLevel[skill], playerXP[skill]);
|
||||||
getPlayerAssistant().refreshSkill(skill);
|
getPlayerAssistant().refreshSkill(skill);
|
||||||
}
|
}
|
||||||
} else if (playerLevel[skill] > getLevelForXP(playerXP[skill])) {
|
} else if (playerLevel[skill] > playerAssistant.getLevelForXP(playerXP[skill])) {
|
||||||
playerLevel[skill] -= 1;
|
playerLevel[skill] -= 1;
|
||||||
getPacketSender().setSkillLevel(skill, playerLevel[skill], playerXP[skill]);
|
getPacketSender().setSkillLevel(skill, playerLevel[skill], playerXP[skill]);
|
||||||
getPlayerAssistant().refreshSkill(skill);
|
getPlayerAssistant().refreshSkill(skill);
|
||||||
@@ -2543,13 +2543,13 @@ public abstract class Player {
|
|||||||
if (isBot) {
|
if (isBot) {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
int j = getLevelForXP(playerXP[GameConstants.ATTACK]);
|
int j = playerAssistant.getLevelForXP(playerXP[GameConstants.ATTACK]);
|
||||||
int k = getLevelForXP(playerXP[GameConstants.DEFENCE]);
|
int k = playerAssistant.getLevelForXP(playerXP[GameConstants.DEFENCE]);
|
||||||
int l = getLevelForXP(playerXP[GameConstants.STRENGTH]);
|
int l = playerAssistant.getLevelForXP(playerXP[GameConstants.STRENGTH]);
|
||||||
int i1 = getLevelForXP(playerXP[GameConstants.HITPOINTS]);
|
int i1 = playerAssistant.getLevelForXP(playerXP[GameConstants.HITPOINTS]);
|
||||||
int j1 = getLevelForXP(playerXP[GameConstants.PRAYER]);
|
int j1 = playerAssistant.getLevelForXP(playerXP[GameConstants.PRAYER]);
|
||||||
int k1 = getLevelForXP(playerXP[GameConstants.RANGED]);
|
int k1 = playerAssistant.getLevelForXP(playerXP[GameConstants.RANGED]);
|
||||||
int l1 = getLevelForXP(playerXP[GameConstants.MAGIC]);
|
int l1 = playerAssistant.getLevelForXP(playerXP[GameConstants.MAGIC]);
|
||||||
int combatLevel = (int) ((k + i1 + Math.floor(j1 / 2)) * 0.25D) + 1;
|
int combatLevel = (int) ((k + i1 + Math.floor(j1 / 2)) * 0.25D) + 1;
|
||||||
double d = (j + l) * 0.32500000000000001D;
|
double d = (j + l) * 0.32500000000000001D;
|
||||||
double d1 = Math.floor(k1 * 1.5D) * 0.32500000000000001D;
|
double d1 = Math.floor(k1 * 1.5D) * 0.32500000000000001D;
|
||||||
@@ -2564,24 +2564,6 @@ public abstract class Player {
|
|||||||
return combatLevel;
|
return combatLevel;
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getLevelForXP(int exp) {
|
|
||||||
if (exp > 13034430) {
|
|
||||||
return 99;
|
|
||||||
} else {
|
|
||||||
int points = 0;
|
|
||||||
for (int lvl = 1; lvl <= 99; ++lvl) {
|
|
||||||
points = (int) (points + Math.floor(lvl + 300.0D
|
|
||||||
* Math.pow(2.0D, lvl / 7.0D)));
|
|
||||||
int var5 = (int) Math.floor(points / 4);
|
|
||||||
if (var5 >= exp) {
|
|
||||||
return lvl;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return 99;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private boolean chatTextUpdateRequired = false;
|
private boolean chatTextUpdateRequired = false;
|
||||||
private byte chatText[] = new byte[4096];
|
private byte chatText[] = new byte[4096];
|
||||||
private byte chatTextSize = 0;
|
private byte chatTextSize = 0;
|
||||||
@@ -2720,7 +2702,7 @@ public abstract class Player {
|
|||||||
isDead = true;
|
isDead = true;
|
||||||
}
|
}
|
||||||
str.writeByteC(playerLevel[GameConstants.HITPOINTS]); // Their current hp, for HP bar
|
str.writeByteC(playerLevel[GameConstants.HITPOINTS]); // Their current hp, for HP bar
|
||||||
str.writeByte(getLevelForXP(playerXP[GameConstants.HITPOINTS]));
|
str.writeByte(playerAssistant.getLevelForXP(playerXP[GameConstants.HITPOINTS]));
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void appendHitUpdate2(Stream str) {
|
protected void appendHitUpdate2(Stream str) {
|
||||||
@@ -2738,7 +2720,7 @@ public abstract class Player {
|
|||||||
isDead = true;
|
isDead = true;
|
||||||
}
|
}
|
||||||
str.writeByte(playerLevel[GameConstants.HITPOINTS]); // Their current hp, for HP bar
|
str.writeByte(playerLevel[GameConstants.HITPOINTS]); // Their current hp, for HP bar
|
||||||
str.writeByteC(getLevelForXP(playerXP[GameConstants.HITPOINTS])); // Their max hp, for HP
|
str.writeByteC(playerAssistant.getLevelForXP(playerXP[GameConstants.HITPOINTS])); // Their max hp, for HP
|
||||||
}
|
}
|
||||||
|
|
||||||
public void appendPlayerUpdateBlock(Stream str) {
|
public void appendPlayerUpdateBlock(Stream str) {
|
||||||
@@ -3120,7 +3102,7 @@ public abstract class Player {
|
|||||||
if (teleTimer <= 0) {
|
if (teleTimer <= 0) {
|
||||||
playerLevel[GameConstants.HITPOINTS] -= damage;
|
playerLevel[GameConstants.HITPOINTS] -= damage;
|
||||||
int difference = playerLevel[GameConstants.HITPOINTS] - damage;
|
int difference = playerLevel[GameConstants.HITPOINTS] - damage;
|
||||||
if (difference <= getLevelForXP(playerXP[GameConstants.HITPOINTS]) / 10 && difference > 0)
|
if (difference <= playerAssistant.getLevelForXP(playerXP[GameConstants.HITPOINTS]) / 10 && difference > 0)
|
||||||
appendRedemption();
|
appendRedemption();
|
||||||
getPlayerAssistant().handleROL();
|
getPlayerAssistant().handleROL();
|
||||||
} else {
|
} else {
|
||||||
@@ -3137,11 +3119,11 @@ public abstract class Player {
|
|||||||
public void appendRedemption() {
|
public void appendRedemption() {
|
||||||
Client c = (Client) PlayerHandler.players[playerId];
|
Client c = (Client) PlayerHandler.players[playerId];
|
||||||
if (c.getPrayer().prayerActive[22]) {
|
if (c.getPrayer().prayerActive[22]) {
|
||||||
int added = c.playerLevel[GameConstants.HITPOINTS] += (int)(c.getLevelForXP(c.playerXP[GameConstants.PRAYER]) * .25);
|
int added = c.playerLevel[GameConstants.HITPOINTS] += (int)(c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.PRAYER]) * .25);
|
||||||
if (added > c.getLevelForXP(c.playerXP[GameConstants.HITPOINTS])) {
|
if (added > c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.HITPOINTS])) {
|
||||||
c.playerLevel[GameConstants.HITPOINTS] = c.getLevelForXP(c.playerXP[GameConstants.HITPOINTS]);
|
c.playerLevel[GameConstants.HITPOINTS] = c.getPlayerAssistant().getLevelForXP(c.playerXP[GameConstants.HITPOINTS]);
|
||||||
} else {
|
} else {
|
||||||
c.playerLevel[GameConstants.HITPOINTS] += (int)(getLevelForXP(c.playerXP[GameConstants.PRAYER]) * .25);
|
c.playerLevel[GameConstants.HITPOINTS] += (int)(playerAssistant.getLevelForXP(c.playerXP[GameConstants.PRAYER]) * .25);
|
||||||
}
|
}
|
||||||
c.playerLevel[GameConstants.PRAYER] = 0;
|
c.playerLevel[GameConstants.PRAYER] = 0;
|
||||||
c.getPlayerAssistant().refreshSkill(GameConstants.HITPOINTS);
|
c.getPlayerAssistant().refreshSkill(GameConstants.HITPOINTS);
|
||||||
|
|||||||
@@ -40,7 +40,7 @@ public class PlayerAssistant {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public boolean savePlayer() {
|
public boolean savePlayer() {
|
||||||
return (player.wildLevel < 20 && player.playerEquipment[ItemConstants.RING] == 2570 && player.playerLevel[GameConstants.HITPOINTS] > 0 && player.playerLevel[GameConstants.HITPOINTS] <= player.getLevelForXP(player.playerXP[GameConstants.HITPOINTS]) / 10 && player.underAttackBy > 0);
|
return (player.wildLevel < 20 && player.playerEquipment[ItemConstants.RING] == 2570 && player.playerLevel[GameConstants.HITPOINTS] > 0 && player.playerLevel[GameConstants.HITPOINTS] <= getLevelForXP(player.playerXP[GameConstants.HITPOINTS]) / 10 && player.underAttackBy > 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void handleROL() {
|
public void handleROL() {
|
||||||
@@ -1992,34 +1992,29 @@ public class PlayerAssistant {
|
|||||||
player.getPacketSender().setSkillLevel(skill, player.playerLevel[skill], player.playerXP[skill]);
|
player.getPacketSender().setSkillLevel(skill, player.playerLevel[skill], player.playerXP[skill]);
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getXPForLevel(int level) {
|
/* Updated methods for getXPForLevel/getLevelForXP */
|
||||||
int points = 0;
|
private static final int[] xp_per_level = new int[100];
|
||||||
int output = 0;
|
|
||||||
|
static {
|
||||||
for (int lvl = 1; lvl <= level; lvl++) {
|
int points = 0, output = 0;
|
||||||
points += Math.floor(lvl + 300.0 * Math.pow(2.0, lvl / 7.0));
|
for (int lvl = 1; lvl <= 99; lvl++) {
|
||||||
if (lvl >= level) {
|
xp_per_level[lvl] = output;
|
||||||
return output;
|
points += Math.floor(lvl + 300 * Math.pow(2, lvl / 7.0));
|
||||||
}
|
|
||||||
output = (int) Math.floor(points / 4);
|
output = (int) Math.floor(points / 4);
|
||||||
}
|
}
|
||||||
return 0;
|
}
|
||||||
|
|
||||||
|
public static int getXPForLevel(int level) {
|
||||||
|
return level > 99 ? 200_000_000 : xp_per_level[level];
|
||||||
}
|
}
|
||||||
|
|
||||||
public int getLevelForXP(int exp) {
|
public static int getLevelForXP(int exp) {
|
||||||
int points = 0;
|
for (int lvl = 1; lvl <= 98; lvl++) {
|
||||||
int output = 0;
|
if (exp < xp_per_level[lvl + 1]) {
|
||||||
if (exp > 13034430) {
|
|
||||||
return 99;
|
|
||||||
}
|
|
||||||
for (int lvl = 1; lvl <= 99; lvl++) {
|
|
||||||
points += Math.floor(lvl + 300.0 * Math.pow(2.0, lvl / 7.0));
|
|
||||||
output = (int) Math.floor(points / 4);
|
|
||||||
if (output >= exp) {
|
|
||||||
return lvl;
|
return lvl;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return 0;
|
return 99;
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean addSkillXP(double amount, int skill) {
|
public boolean addSkillXP(double amount, int skill) {
|
||||||
@@ -2039,9 +2034,9 @@ public class PlayerAssistant {
|
|||||||
}
|
}
|
||||||
int oldLevel = getLevelForXP(player.playerXP[skill]);
|
int oldLevel = getLevelForXP(player.playerXP[skill]);
|
||||||
player.playerXP[skill] += amount;
|
player.playerXP[skill] += amount;
|
||||||
if (oldLevel <= getLevelForXP(player.playerXP[skill])) {
|
if (oldLevel < getLevelForXP(player.playerXP[skill])) {
|
||||||
if (player.playerLevel[skill] < player.getLevelForXP(player.playerXP[skill]) && skill != 3 && skill != 5) {
|
if (player.playerLevel[skill] < getLevelForXP(player.playerXP[skill]) && skill != 3 && skill != 5) {
|
||||||
player.playerLevel[skill] = player.getLevelForXP(player.playerXP[skill]);
|
player.playerLevel[skill] = getLevelForXP(player.playerXP[skill]);
|
||||||
}
|
}
|
||||||
levelUp(skill);
|
levelUp(skill);
|
||||||
player.gfx100(199);
|
player.gfx100(199);
|
||||||
|
|||||||
Reference in New Issue
Block a user