Some more minor clean up (#215)

* General clean up

- Reduced woodcutting code by alot, reverted the array to an enum
- Moved the login player method to the packet sender
- Deleted some dead code/cleaned up

* More random cleanup/refractoring

- Moved combat constants to combatconstants.java
- Moved dialogue options to dialogueoptions.java
- Deleted more dead code

* Replaced some poorly written methods

- refreshSkill, levelUp, and getTotalLevel all used way too much code for such a simple function so cleaned it up
- deleted a few other bits of dead code

* Fight caves

- Should fix fight caves npcs nulling out in the middle of your waves if they are too far away
- Also removed some unneeded scynchronization in itemassistant.java

* Gates

- Started cleaning up gate system, still can be improved a lot more
This commit is contained in:
Mr Extremez
2019-11-28 10:47:06 -06:00
committed by Daniel Ginovker
parent 20303071de
commit 68256e41d8
32 changed files with 1668 additions and 2126 deletions
@@ -61,7 +61,7 @@ public class CombatAssistant {
NpcHandler.npcs[i].animUpdateRequired = true;
NpcHandler.npcs[i].updateRequired = true;
}
if (GameConstants.COMBAT_SOUNDS && NpcHandler.npcs[i].npcType < 3177 && NpcHandler.npcs[i].npcType > 3180) {
if (CombatConstants.COMBAT_SOUNDS && NpcHandler.npcs[i].npcType < 3177 && NpcHandler.npcs[i].npcType > 3180) {
c.getPacketSender().sendSound(CombatSounds.getNpcBlockSound(NpcHandler.npcs[c.oldNpcIndex].npcType), 100, 0);
}
NpcHandler.npcs[i].facePlayer(c.playerId);
@@ -139,15 +139,15 @@ public class CombatAssistant {
c.globalDamageDealt += damage2;
}
if (c.fightMode == 3) {//range shared
c.getPlayerAssistant().addSkillXP(damage * GameConstants.RANGE_EXP_RATE / 3, 4);
c.getPlayerAssistant().addSkillXP(damage * CombatConstants.RANGE_EXP_RATE / 3, 4);
c.getPlayerAssistant().addSkillXP(damage / 3, 1);
c.getPlayerAssistant().addSkillXP(damage / 3, 3);
c.getPlayerAssistant().refreshSkill(1);
c.getPlayerAssistant().refreshSkill(3);
c.getPlayerAssistant().refreshSkill(4);
} else {
c.getPlayerAssistant().addSkillXP(damage * GameConstants.RANGE_EXP_RATE, 4);
c.getPlayerAssistant().addSkillXP(damage * GameConstants.RANGE_EXP_RATE /3, 3);
c.getPlayerAssistant().addSkillXP(damage * CombatConstants.RANGE_EXP_RATE, 4);
c.getPlayerAssistant().addSkillXP(damage * CombatConstants.RANGE_EXP_RATE /3, 3);
c.getPlayerAssistant().refreshSkill(3);
c.getPlayerAssistant().refreshSkill(4);
}
@@ -196,7 +196,7 @@ public class CombatAssistant {
int damage = Misc
.random(MagicData.MAGIC_SPELLS[c.oldSpellId][6]);
if (MagicSpells.godSpells(c)) {
if (System.currentTimeMillis() - c.godSpellDelay < GameConstants.GOD_SPELL_CHARGE) {
if (System.currentTimeMillis() - c.godSpellDelay < CombatConstants.GOD_SPELL_CHARGE) {
damage += Misc.random(10);
}
}
@@ -223,10 +223,10 @@ public class CombatAssistant {
damage = NpcHandler.npcs[i].HP;
}
//magic
c.getPlayerAssistant().addSkillXP(MagicData.MAGIC_SPELLS[c.oldSpellId][7] + damage * GameConstants.MAGIC_EXP_RATE, 6);
c.getPlayerAssistant().addSkillXP(MagicData.MAGIC_SPELLS[c.oldSpellId][7] + damage * CombatConstants.MAGIC_EXP_RATE, 6);
c.totalDamageDealt += damage;
if (MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1161 && MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1153 && MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1157 && MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1542 && MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1543 && MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1562) {
c.getPlayerAssistant().addSkillXP(damage * GameConstants.MAGIC_EXP_RATE / 3, 3);
c.getPlayerAssistant().addSkillXP(damage * CombatConstants.MAGIC_EXP_RATE / 3, 3);
}
c.getPlayerAssistant().refreshSkill(3);
c.getPlayerAssistant().refreshSkill(6);
@@ -336,18 +336,18 @@ public class CombatAssistant {
}
}
if (c.fightMode == 3 && NpcHandler.npcs[i].npcType != 2459 && NpcHandler.npcs[i].npcType != 2460 && NpcHandler.npcs[i].npcType != 2461 && NpcHandler.npcs[i].npcType != 2462) {
c.getPlayerAssistant().addSkillXP(damage * GameConstants.MELEE_EXP_RATE / 3, 0);
c.getPlayerAssistant().addSkillXP(damage * GameConstants.MELEE_EXP_RATE / 3, 1);
c.getPlayerAssistant().addSkillXP(damage * GameConstants.MELEE_EXP_RATE / 3, 2);
c.getPlayerAssistant().addSkillXP(damage * GameConstants.MELEE_EXP_RATE / 3, 3);
c.getPlayerAssistant().addSkillXP(damage * CombatConstants.MELEE_EXP_RATE / 3, 0);
c.getPlayerAssistant().addSkillXP(damage * CombatConstants.MELEE_EXP_RATE / 3, 1);
c.getPlayerAssistant().addSkillXP(damage * CombatConstants.MELEE_EXP_RATE / 3, 2);
c.getPlayerAssistant().addSkillXP(damage * CombatConstants.MELEE_EXP_RATE / 3, 3);
c.getPlayerAssistant().refreshSkill(0);
c.getPlayerAssistant().refreshSkill(1);
c.getPlayerAssistant().refreshSkill(2);
c.getPlayerAssistant().refreshSkill(3);
} else {
if (NpcHandler.npcs[i].npcType != 2459 && NpcHandler.npcs[i].npcType != 2460 && NpcHandler.npcs[i].npcType != 2461 && NpcHandler.npcs[i].npcType != 2462) {
c.getPlayerAssistant().addSkillXP(damage * GameConstants.MELEE_EXP_RATE, c.fightMode);
c.getPlayerAssistant().addSkillXP(damage * GameConstants.MELEE_EXP_RATE / 3, 3);
c.getPlayerAssistant().addSkillXP(damage * CombatConstants.MELEE_EXP_RATE, c.fightMode);
c.getPlayerAssistant().addSkillXP(damage * CombatConstants.MELEE_EXP_RATE / 3, 3);
c.getPlayerAssistant().refreshSkill(c.fightMode);
c.getPlayerAssistant().refreshSkill(3);
}
@@ -644,7 +644,7 @@ public class CombatAssistant {
return;
}
if (c.usingRangeWeapon || c.usingBow
&& GameConstants.COMBAT_SOUNDS
&& CombatConstants.COMBAT_SOUNDS
&& NpcHandler.npcs[i].npcType < 3177
&& NpcHandler.npcs[i].npcType > 3180) {
c.getPacketSender().sendSound(SoundList.SHOOT_ARROW,
@@ -677,7 +677,7 @@ public class CombatAssistant {
return;
}
if (RangeData.correctBowAndArrows(c) < c.playerEquipment[c.playerArrows]
&& GameConstants.CORRECT_ARROWS && c.usingBow
&& CombatConstants.CORRECT_ARROWS && c.usingBow
&& !RangeData.usingCrystalBow(c)
&& c.playerEquipment[c.playerWeapon] != 9185) {
c.getItemAssistant();
@@ -737,7 +737,7 @@ public class CombatAssistant {
"You don't have the required special energy to use this attack.");
c.usingSpecial = false;
c.getItemAssistant().updateSpecialBar();
if (GameConstants.COMBAT_SOUNDS) {
if (CombatConstants.COMBAT_SOUNDS) {
c.getPacketSender()
.sendSound(
CombatSounds
@@ -750,13 +750,13 @@ public class CombatAssistant {
}
c.specMaxHitIncrease = 0;
if (!c.usingMagic) {
if (GameConstants.COMBAT_SOUNDS) {
if (CombatConstants.COMBAT_SOUNDS) {
c.getPacketSender().sendSound(
CombatSounds.getWeaponSounds(c), 100, 0);
}
c.startAnimation(getWepAnim());
} else {
if (GameConstants.COMBAT_SOUNDS) {
if (CombatConstants.COMBAT_SOUNDS) {
c.getPacketSender().sendSound(
CombatSounds.getMagicSound(c, c.spellId), 100,
0);
@@ -849,7 +849,7 @@ public class CombatAssistant {
}
}
if (c.usingBow && GameConstants.CRYSTAL_BOW_DEGRADES) { // crystal
if (c.usingBow && CombatConstants.CRYSTAL_BOW_DEGRADES) { // crystal
// bow
// degrading
if (c.playerEquipment[c.playerWeapon] == 4212) { // new
@@ -1097,7 +1097,7 @@ public class CombatAssistant {
return;
}
if (RangeData.correctBowAndArrows(c) < c.playerEquipment[c.playerArrows]
&& GameConstants.CORRECT_ARROWS && c.usingBow
&& CombatConstants.CORRECT_ARROWS && c.usingBow
&& !RangeData.usingCrystalBow(c)
&& c.playerEquipment[c.playerWeapon] != 9185
&& !c.usingMagic) {
@@ -1146,7 +1146,7 @@ public class CombatAssistant {
.contains(c.playerId)) {
c.attackedPlayers.add(c.playerIndex);
c.isSkulled = true;
c.skullTimer = GameConstants.SKULL_TIMER;
c.skullTimer = CombatConstants.SKULL_TIMER;
c.headIconPk = 0;
c.getPlayerAssistant().requestUpdates();
}
@@ -1161,7 +1161,7 @@ public class CombatAssistant {
"Special attacks have been disabled during this duel!");
c.usingSpecial = false;
c.getItemAssistant().updateSpecialBar();
if (GameConstants.COMBAT_SOUNDS) {
if (CombatConstants.COMBAT_SOUNDS) {
c.getPacketSender()
.sendSound(
CombatSounds
@@ -1183,7 +1183,7 @@ public class CombatAssistant {
"You don't have the required special energy to use this attack.");
c.usingSpecial = false;
c.getItemAssistant().updateSpecialBar();
if (GameConstants.COMBAT_SOUNDS) {
if (CombatConstants.COMBAT_SOUNDS) {
c.getPacketSender()
.sendSound(
CombatSounds
@@ -1196,7 +1196,7 @@ public class CombatAssistant {
}
if (!c.usingMagic) {
if (GameConstants.COMBAT_SOUNDS) {
if (CombatConstants.COMBAT_SOUNDS) {
c.getPacketSender().sendSound(
CombatSounds.getWeaponSounds(c), 100, 0);
}
@@ -1204,7 +1204,7 @@ public class CombatAssistant {
c.mageFollow = false;
} else {
c.startAnimation(MagicData.MAGIC_SPELLS[c.spellId][2]);
if (GameConstants.COMBAT_SOUNDS) {
if (CombatConstants.COMBAT_SOUNDS) {
c.getPacketSender().sendSound(
CombatSounds.getMagicSound(c, c.spellId), 100,
0);
@@ -1336,7 +1336,7 @@ public class CombatAssistant {
}
}
if (c.usingBow && GameConstants.CRYSTAL_BOW_DEGRADES) { // crystal
if (c.usingBow && CombatConstants.CRYSTAL_BOW_DEGRADES) { // crystal
// bow
// degrading
if (c.playerEquipment[c.playerWeapon] == 4212) { // new
@@ -1379,28 +1379,6 @@ public class CombatAssistant {
}
}
public void appendVengeance(int otherPlayer, int damage) {
if (damage <= 0) {
return;
}
Player o = PlayerHandler.players[otherPlayer];
o.forcedText = "Taste Vengeance!";
o.forcedChatUpdateRequired = true;
o.updateRequired = true;
o.vengOn = false;
if (o.playerLevel[3] - damage > 0) {
damage = (int) (damage * 0.75);
if (damage > c.playerLevel[3]) {
damage = c.playerLevel[3];
}
c.setHitDiff2(damage);
c.setHitUpdateRequired2(true);
c.playerLevel[3] -= damage;
c.getPlayerAssistant().refreshSkill(3);
}
c.updateRequired = true;
}
public void playerDelayedHit(int i) {
if (PlayerHandler.players[i] != null) {
if (PlayerHandler.players[i].isDead || c.isDead
@@ -1424,7 +1402,7 @@ public class CombatAssistant {
if (o.attackTimer <= 3 || o.attackTimer == 0 && o.playerIndex == 0
&& !c.castingMagic) { // block animation
o.startAnimation(o.getCombatAssistant().getBlockEmote());
if (GameConstants.COMBAT_SOUNDS) {
if (CombatConstants.COMBAT_SOUNDS) {
o.getPacketSender().sendSound(
CombatSounds.getPlayerBlockSounds(o), 100, 0);
}
@@ -1513,10 +1491,6 @@ public class CombatAssistant {
if (damage2 < 0 && damage2 != -1) {
damage2 = 0;
}
if (o.vengOn) {
appendVengeance(i, damage);
appendVengeance(i, damage2);
}
if (damage > 0) {
applyRecoil(c, damage, i);
}
@@ -1524,14 +1498,14 @@ public class CombatAssistant {
applyRecoil(c, damage2, i);
}
if (c.fightMode == 3) {
c.getPlayerAssistant().addSkillXP(damage * GameConstants.RANGE_EXP_RATE / 3, 4);
c.getPlayerAssistant().addSkillXP(damage * CombatConstants.RANGE_EXP_RATE / 3, 4);
c.getPlayerAssistant().addSkillXP(damage / 3, 1);
c.getPlayerAssistant().addSkillXP(damage / 3, 3);
c.getPlayerAssistant().refreshSkill(1);
c.getPlayerAssistant().refreshSkill(3);
c.getPlayerAssistant().refreshSkill(4);
} else {
c.getPlayerAssistant().addSkillXP(damage * GameConstants.RANGE_EXP_RATE, 4);
c.getPlayerAssistant().addSkillXP(damage * CombatConstants.RANGE_EXP_RATE, 4);
c.getPlayerAssistant().addSkillXP(damage / 3, 3);
c.getPlayerAssistant().refreshSkill(3);
c.getPlayerAssistant().refreshSkill(4);
@@ -1578,7 +1552,7 @@ public class CombatAssistant {
int damage = Misc
.random(MagicData.MAGIC_SPELLS[c.oldSpellId][6]);
if (MagicSpells.godSpells(c)) {
if (System.currentTimeMillis() - c.godSpellDelay < GameConstants.GOD_SPELL_CHARGE) {
if (System.currentTimeMillis() - c.godSpellDelay < CombatConstants.GOD_SPELL_CHARGE) {
damage += 10;
}
}
@@ -1600,13 +1574,10 @@ public class CombatAssistant {
if (PlayerHandler.players[i].playerLevel[3] - damage < 0) {
damage = PlayerHandler.players[i].playerLevel[3];
}
if (o.vengOn) {
appendVengeance(i, damage);
}
if (damage > 0) {
applyRecoil(c, damage, i);
}
c.getPlayerAssistant().addSkillXP(MagicData.MAGIC_SPELLS[c.oldSpellId][7] + damage * GameConstants.MAGIC_EXP_RATE, 6);
c.getPlayerAssistant().addSkillXP(MagicData.MAGIC_SPELLS[c.oldSpellId][7] + damage * CombatConstants.MAGIC_EXP_RATE, 6);
if (MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1161 && MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1153 && MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1157 && MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1542 && MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1543 && MagicData.MAGIC_SPELLS[c.oldSpellId][0] != 1562) {
c.getPlayerAssistant().addSkillXP(MagicData.MAGIC_SPELLS[c.oldSpellId][7] + damage / 3, 3);
}
@@ -1843,9 +1814,6 @@ public class CombatAssistant {
&& !veracsEffect) { // if prayer active reduce damage by 40%
damage = damage * 60 / 100;
}
if (c.maxNextHit) {
damage = meleeMaxHit();
}
if (damage > 0 && guthansEffect) {
c.playerLevel[3] += damage;
if (c.playerLevel[3] > c.getLevelForXP(c.playerXP[3])) {
@@ -1854,16 +1822,9 @@ public class CombatAssistant {
c.getPlayerAssistant().refreshSkill(3);
o.gfx0(398);
}
if (c.ssSpec && damageMask == 2) {
damage = 5 + Misc.random(11);
c.ssSpec = false;
}
if (PlayerHandler.players[i].playerLevel[3] - damage < 0) {
damage = PlayerHandler.players[i].playerLevel[3];
}
if (o.vengOn && damage > 0) {
appendVengeance(i, damage);
}
if (damage > 0) {
applyRecoil(c, damage, i);
}
@@ -1928,17 +1889,17 @@ public class CombatAssistant {
}
c.specEffect = 0;
if (c.fightMode == 3) {//melee shared
c.getPlayerAssistant().addSkillXP(damage * GameConstants.MELEE_EXP_RATE / 3, 0);
c.getPlayerAssistant().addSkillXP(damage * GameConstants.MELEE_EXP_RATE / 3, 1);
c.getPlayerAssistant().addSkillXP(damage * GameConstants.MELEE_EXP_RATE / 3, 2);
c.getPlayerAssistant().addSkillXP(damage * CombatConstants.MELEE_EXP_RATE / 3, 0);
c.getPlayerAssistant().addSkillXP(damage * CombatConstants.MELEE_EXP_RATE / 3, 1);
c.getPlayerAssistant().addSkillXP(damage * CombatConstants.MELEE_EXP_RATE / 3, 2);
c.getPlayerAssistant().addSkillXP(damage / 3, 3);
c.getPlayerAssistant().refreshSkill(0);
c.getPlayerAssistant().refreshSkill(1);
c.getPlayerAssistant().refreshSkill(2);
c.getPlayerAssistant().refreshSkill(3);
} else {
c.getPlayerAssistant().addSkillXP(damage * GameConstants.MELEE_EXP_RATE, c.fightMode);
c.getPlayerAssistant().addSkillXP(damage * GameConstants.MELEE_EXP_RATE/3, 3);
c.getPlayerAssistant().addSkillXP(damage * CombatConstants.MELEE_EXP_RATE, c.fightMode);
c.getPlayerAssistant().addSkillXP(damage * CombatConstants.MELEE_EXP_RATE/3, 3);
c.getPlayerAssistant().refreshSkill(c.fightMode);
c.getPlayerAssistant().refreshSkill(3);
}
@@ -2097,7 +2058,7 @@ public class CombatAssistant {
resetPlayerAttack();
return false;
}
if (GameConstants.COMBAT_LEVEL_DIFFERENCE && !c.inCw()) {
if (CombatConstants.COMBAT_LEVEL_DIFFERENCE && !c.inCw()) {
int combatDif1 = getCombatDifference(c.combatLevel,
PlayerHandler.players[c.playerIndex].combatLevel);
if (combatDif1 > c.wildLevel
@@ -2111,7 +2072,7 @@ public class CombatAssistant {
}
}
if (GameConstants.SINGLE_AND_MULTI_ZONES) {
if (CombatConstants.SINGLE_AND_MULTI_ZONES) {
if (!PlayerHandler.players[c.playerIndex].inMulti()) { // single
// combat
// zones
@@ -0,0 +1,35 @@
package com.rebotted.game.content.combat;
/**
* CombatConstants
* @author Andrew (Mr Extremez)
*/
public class CombatConstants {
public final static int MELEE_EXP_RATE = 4;
public final static int RANGE_EXP_RATE = 4;
public final static int MAGIC_EXP_RATE = 4;
public final static int INCREASE_SPECIAL_AMOUNT = 17500;
public final static int GOD_SPELL_CHARGE = 300000;
public final static boolean CORRECT_ARROWS = true;
public final static boolean CRYSTAL_BOW_DEGRADES = true;
public final static int SKULL_TIMER = 1200;
public final static int TELEBLOCK_DELAY = 20000;
public final static boolean SINGLE_AND_MULTI_ZONES = true;
public final static boolean COMBAT_LEVEL_DIFFERENCE = true;
public final static boolean COMBAT_SOUNDS = true;
}
@@ -1,8 +1,6 @@
package com.rebotted.game.content.combat;
import java.util.HashMap;
import com.rebotted.GameConstants;
import com.rebotted.game.content.combat.range.RangeData;
import com.rebotted.game.content.music.sound.CombatSounds;
import com.rebotted.game.npcs.NpcHandler;
@@ -24,26 +22,26 @@ public class Specials {
// ItemName(ItemId, SpecDamage, SpecAccuracy, SpecAmount, Anim, GFX0,
// GFX100, DoubleHit, SsSpec, SpecEffect)
ABYSSAL_WHIP(4151, 1, 1.25, 5, 1658, 341, -1, false, false, 0),
DRAGON_DAGGER(1215, 1.15, 1.25, 2.5, 1062, -1, 252, true, false, 0),
DRAGON_DAGGER_P(1231, 1.15, 1.25, 2.5, 1062, -1, 252, true, false, 0),
DRAGON_DAGGER_PP(5698, 1.15, 1.25, 2.5, 1062, -1, 252, true, false, 0),
DRAGON_DAGGER_PPP(5680, 1.15, 1.25, 2.5, 1062, -1, 252, true, false, 0),
DRAGON_LONG(1305, 1.20, 1.10, 2.5, 1058, -1, 248, false, false, 0),
DRAGON_MACE(1434, 1.55, 1.25, 2.5, 1060, -1, 251, false, false, 0),
DRAGON_SCIMITAR(4587, 1, 1.25, 5.5, 1872, -1, 347, false, false, 1),
DRAGON_HALBERD(3204, 1.25, .85, 3, 1203, -1, 282, true, false, 0),
GRANITE_MAUL(4153, 1.10, .85, 5, 1667, -1, 337, false, false, 0),
MAGIC_SHORTBOW(861, 1.05, .95, 5.5, 1074, -1, -1, true, false, 0),
MAGIC_LONGBOW(859, 1.20, 1.05, 5.5, 426, -1, -1, false, false, 0);
ABYSSAL_WHIP(4151, 1, 1.25, 5, 1658, 341, -1, false, 0),
DRAGON_DAGGER(1215, 1.15, 1.25, 2.5, 1062, -1, 252, true, 0),
DRAGON_DAGGER_P(1231, 1.15, 1.25, 2.5, 1062, -1, 252, true, 0),
DRAGON_DAGGER_PP(5698, 1.15, 1.25, 2.5, 1062, -1, 252, true, 0),
DRAGON_DAGGER_PPP(5680, 1.15, 1.25, 2.5, 1062, -1, 252, true, 0),
DRAGON_LONG(1305, 1.20, 1.10, 2.5, 1058, -1, 248, false, 0),
DRAGON_MACE(1434, 1.55, 1.25, 2.5, 1060, -1, 251, false, 0),
DRAGON_SCIMITAR(4587, 1, 1.25, 5.5, 1872, -1, 347, false, 1),
DRAGON_HALBERD(3204, 1.25, .85, 3, 1203, -1, 282, true, 0),
GRANITE_MAUL(4153, 1.10, .85, 5, 1667, -1, 337, false, 0),
MAGIC_SHORTBOW(861, 1.05, .95, 5.5, 1074, -1, -1, true, 0),
MAGIC_LONGBOW(859, 1.20, 1.05, 5.5, 426, -1, -1, false, 0);
private int weapon, anim, gfx1, gfx2, specEffect;
private double specDamage, specAccuracy, specAmount;
private boolean doubleHit, ssSpec;
private boolean doubleHit;
private specialAttack(int weapon, double specDamage,
double specAccuracy, double specAmount, int anim, int gfx1,
int gfx2, boolean doubleHit, boolean ssSpec, int specEffect) {
int gfx2, boolean doubleHit, int specEffect) {
this.weapon = weapon;
this.specDamage = specDamage;
this.specAccuracy = specAccuracy;
@@ -52,7 +50,6 @@ public class Specials {
this.gfx1 = gfx1;
this.gfx2 = gfx2;
this.doubleHit = doubleHit;
this.ssSpec = ssSpec;
this.specEffect = specEffect;
}
@@ -88,9 +85,6 @@ public class Specials {
return doubleHit;
}
private boolean getSsSpec() {
return ssSpec;
}
@SuppressWarnings("unused")
private int getSpecEffect() {
@@ -113,9 +107,7 @@ public class Specials {
public void activateSpecial(int weapon, int i) {
int equippedWeapon = player.playerEquipment[player.playerWeapon];
if (NpcHandler.npcs[i] == null && player.npcIndex > 0
|| PlayerHandler.players[player.playerIndex] == null
&& player.playerIndex > 0) {
if (NpcHandler.npcs[i] == null && player.npcIndex > 0 || PlayerHandler.players[player.playerIndex] == null && player.playerIndex > 0) {
return;
}
player.doubleHit = false;
@@ -128,8 +120,7 @@ public class Specials {
player.oldPlayerIndex = i;
PlayerHandler.players[i].underAttackBy = player.playerId;
PlayerHandler.players[i].logoutDelay = System.currentTimeMillis();
PlayerHandler.players[i].singleCombatDelay = System
.currentTimeMillis();
PlayerHandler.players[i].singleCombatDelay = System.currentTimeMillis();
PlayerHandler.players[i].killerId = player.playerId;
}
player.specEffect = 0;
@@ -226,7 +217,6 @@ public class Specials {
player.specAccuracy = SA.getSpecAccuracy();
player.hitDelay = player.getCombatAssistant().getHitDelay();
player.doubleHit = SA.getDoubleHit();
player.ssSpec = SA.getSsSpec();
} else {
player.gfx0(SA.getGfx1());
player.startAnimation(SA.getAnim());
@@ -234,36 +224,26 @@ public class Specials {
player.specAccuracy = SA.getSpecAccuracy();
player.hitDelay = player.getCombatAssistant().getHitDelay();
player.doubleHit = SA.getDoubleHit();
player.ssSpec = SA.getSsSpec();
}
}
player.delayedDamage = Misc.random(player.getCombatAssistant().meleeMaxHit());
player.delayedDamage2 = Misc
.random(player.getCombatAssistant().meleeMaxHit());
player.delayedDamage2 = Misc.random(player.getCombatAssistant().meleeMaxHit());
player.usingSpecial = false;
player.getItemAssistant().updateSpecialBar();
if (GameConstants.COMBAT_SOUNDS) {
player.getPacketSender()
.sendSound(
CombatSounds
.specialSounds(player.playerEquipment[player.playerWeapon]),
100, 0);
if (CombatConstants.COMBAT_SOUNDS) {
player.getPacketSender().sendSound(CombatSounds.specialSounds(player.playerEquipment[player.playerWeapon]), 100, 0);
}
}
}
public void handleGmaul() {
if (player.npcIndex > 0 && NpcHandler.npcs[player.npcIndex] != null) {
if (player.goodDistance(player.getX(), player.getY(), NpcHandler.npcs[player.npcIndex]
.getX(), NpcHandler.npcs[player.npcIndex].getY(), player
.getCombatAssistant().getRequiredDistance())) {
if (player.goodDistance(player.getX(), player.getY(), NpcHandler.npcs[player.npcIndex].getX(), NpcHandler.npcs[player.npcIndex].getY(), player.getCombatAssistant().getRequiredDistance())) {
if (player.getCombatAssistant().checkSpecAmount(4153)) {
boolean hit = Misc.random(player.getCombatAssistant().calcAtt()) > Misc
.random(NpcHandler.npcs[player.npcIndex].defence);
boolean hit = Misc.random(player.getCombatAssistant().calcAtt()) > Misc.random(NpcHandler.npcs[player.npcIndex].defence);
int damage = 0;
if (hit) {
damage = Misc.random(player.getCombatAssistant()
.meleeMaxHit());
damage = Misc.random(player.getCombatAssistant().meleeMaxHit());
NpcHandler.npcs[player.npcIndex].HP -= damage;
NpcHandler.npcs[player.npcIndex].hitDiff2 = damage;
NpcHandler.npcs[player.npcIndex].hitUpdateRequired2 = true;
@@ -279,17 +259,12 @@ public class Specials {
.getCombatAssistant().getRequiredDistance())) {
if (player.getCombatAssistant().checkReqs()) {
if (player.getCombatAssistant().checkSpecAmount(4153)) {
boolean hit = Misc.random(player.getCombatAssistant()
.calcAtt()) > Misc.random(o
.getCombatAssistant().calcDef());
boolean hit = Misc.random(player.getCombatAssistant().calcAtt()) > Misc.random(o.getCombatAssistant().calcDef());
int damage = 0;
if (hit) {
damage = Misc.random(player.getCombatAssistant()
.meleeMaxHit());
damage = Misc.random(player.getCombatAssistant().meleeMaxHit());
}
if (o.getPrayer().prayerActive[18]
&& System.currentTimeMillis()
- o.protMeleeDelay > 1500) {
if (o.getPrayer().prayerActive[18] && System.currentTimeMillis() - o.protMeleeDelay > 1500) {
damage *= .6;
}
if (o.playerLevel[3] - damage <= 0) {
@@ -1,6 +1,6 @@
package com.rebotted.game.content.combat.magic;
import com.rebotted.GameConstants;
import com.rebotted.game.content.combat.CombatConstants;
import com.rebotted.game.content.music.sound.SoundList;
import com.rebotted.game.players.Client;
import com.rebotted.game.players.Player;
@@ -32,7 +32,7 @@ public class MagicSpells extends MagicData {
if (c2.playerLevel[3] - damage < 0) {
damage = c2.playerLevel[3];
}
c.getPlayerAssistant().addSkillXP(MagicData.MAGIC_SPELLS[c.oldSpellId][7] + damage * GameConstants.MAGIC_EXP_RATE, 6);
c.getPlayerAssistant().addSkillXP(MagicData.MAGIC_SPELLS[c.oldSpellId][7] + damage * CombatConstants.MAGIC_EXP_RATE, 6);
c.getPlayerAssistant().addSkillXP(MagicData.MAGIC_SPELLS[c.oldSpellId][7] + damage / 3, 3);
// Server.playerHandler.players[playerId].setHitDiff(damage);
// Server.playerHandler.players[playerId].setHitUpdateRequired(true);
@@ -100,7 +100,7 @@ public class MagicSpells extends MagicData {
if (!PlayerHandler.players[i].inWild()) {
return false;
}
if (GameConstants.COMBAT_LEVEL_DIFFERENCE) {
if (CombatConstants.COMBAT_LEVEL_DIFFERENCE) {
int combatDif1 = c.getCombatAssistant().getCombatDifference(c.combatLevel,
PlayerHandler.players[i].combatLevel);
if (combatDif1 > c.wildLevel
@@ -112,7 +112,7 @@ public class MagicSpells extends MagicData {
}
}
if (GameConstants.SINGLE_AND_MULTI_ZONES) {
if (CombatConstants.SINGLE_AND_MULTI_ZONES) {
if (!PlayerHandler.players[i].inMulti()) { // single combat
// zones
if (PlayerHandler.players[i].underAttackBy != c.playerId
@@ -2,6 +2,7 @@ package com.rebotted.game.content.combat.npcs;
import com.rebotted.GameConstants;
import com.rebotted.game.content.combat.CombatAssistant;
import com.rebotted.game.content.combat.CombatConstants;
import com.rebotted.game.content.combat.melee.MeleeData;
import com.rebotted.game.content.minigames.FightCaves;
import com.rebotted.game.content.music.sound.CombatSounds;
@@ -181,7 +182,7 @@ public class NpcCombat {
NpcHandler.npcs[i].attackTimer = NpcData.getNpcDelay(i);
NpcHandler.npcs[i].hitDelayTimer = NpcData.getHitDelay(i);
NpcHandler.npcs[i].attackType = 0;
if (GameConstants.COMBAT_SOUNDS
if (CombatConstants.COMBAT_SOUNDS
&& NpcHandler.npcs[i].npcType < 3177
&& NpcHandler.npcs[i].npcType > 3180) {
c.getPacketSender()
@@ -201,7 +202,7 @@ public class NpcCombat {
if (NpcHandler.multiAttacks(i)) {
multiAttackGfx(i, NpcHandler.npcs[i].projectileId);
NpcData.startAnimation(NpcEmotes.getAttackEmote(i), i);
if (GameConstants.COMBAT_SOUNDS
if (CombatConstants.COMBAT_SOUNDS
&& NpcHandler.npcs[i].npcType < 3177
&& NpcHandler.npcs[i].npcType > 3180) {
c.getPacketSender()
@@ -240,7 +241,7 @@ public class NpcCombat {
c.singleCombatDelay2 = System.currentTimeMillis();
NpcHandler.npcs[i].oldIndex = c.playerId;
NpcData.startAnimation(NpcEmotes.getAttackEmote(i), i);
if (GameConstants.COMBAT_SOUNDS
if (CombatConstants.COMBAT_SOUNDS
&& NpcHandler.npcs[i].npcType < 3177
&& NpcHandler.npcs[i].npcType > 3180) {
c.getPacketSender()
@@ -1,10 +1,10 @@
package com.rebotted.game.content.combat.range;
import com.rebotted.GameConstants;
import com.rebotted.GameEngine;
import com.rebotted.event.CycleEvent;
import com.rebotted.event.CycleEventContainer;
import com.rebotted.event.CycleEventHandler;
import com.rebotted.game.content.combat.CombatConstants;
import com.rebotted.game.npcs.Npc;
import com.rebotted.game.npcs.NpcHandler;
import com.rebotted.game.players.Client;
@@ -397,7 +397,7 @@ public class DwarfCannon {
target.hitUpdateRequired2 = true;
target.updateRequired = true;
myBalls -= 1;
player.getPlayerAssistant().addSkillXP(damage * GameConstants.RANGE_EXP_RATE, player.playerRanged);
player.getPlayerAssistant().addSkillXP(damage * CombatConstants.RANGE_EXP_RATE, player.playerRanged);
}
}