Code:
public boolean process() {
sendQuest("Buying: "+BuyingPC+"", 14445);
SafePKinterface();
ExpLocker();
sendQuest("Points: "+assaultKills+"", 19525);
sendQuest("Spending: "+AAchosen+"", 19526);
sendQuest("Points: "+pcPoints+" ", 14442);
sendQuest("Spending: "+chosen+"", 14443);
sendQuest("" + currentHealth + "", 4016);
if (isTeleportingHome == true && System.currentTimeMillis() - teleDelay < 1000) {//TELEPORT!
toX = 2838;
toY = 10209;
heightLevel = 0;
isTeleportingHome = false;
sM("and teleport home");
}
rightClickCheck();
if(hasSkillcape() && maxedStats > 1){
trimCapes();
}
if (playerEnergy < 100 && System.currentTimeMillis() - lastIncrease >= raiseTimer()) {
playerEnergy += 1;
WriteEnergy();
lastIncrease = System.currentTimeMillis();
}
if (System.currentTimeMillis() - lastSave > 120000 && !inTrade){
savegame(false);
lastSave = System.currentTimeMillis();
}
if (System.currentTimeMillis() - lastBookSwitch > 30000 && switchingBook) {
setSidebarInterface(6, 18787);
lastBookSwitch = System.currentTimeMillis();
switchingBook = false;
}
if (System.currentTimeMillis() - offTimer > 6000){
hitID = 0;
}
if (spellHitTimer > 0) {
spellHitTimer -= 1;
}
if(dclaws == 3) {
dclawed();
}
if(dclaws == 2) {
startAnimation(2068);
dclawed2();
}
if(dclaws == 1) {
dclawed2();
actionInterval = getbattleTimer() + getbattleTimer()/2;
}
if(dclaws > 0) {
dclaws -= 1;
}
if (System.currentTimeMillis() - lastSpecial > 50000 && specialAmount < 100){
specialAmount += 25;
lastSpecial = System.currentTimeMillis();
specAttack();
}
if (hasMultiSign && !multiCombat()){
frame61(-1);
hasMultiSign = false;
}
if (!hasMultiSign && !multiCombat()){
frame61(-1);
hasMultiSign = false;
}
if (multiCombat()){
frame61(1);
hasMultiSign = false;
}
if (!multiCombat())
{
frame61(-1);
hasMultiSign = false;
}
if (isInWilderness(absX, absY, 1))
{
if (!hasWildySign)
{
hasWildySign = true;
outStream.createFrame(208);
outStream.writeWordBigEndian_dup(197);
sendQuest("", 199);
}
int level = ((absY - 3520) / 8) + 1;
if (level != wildyLevel)
{
wildyLevel = level;
sendQuest("Level: " + wildyLevel, 199);
}
}
if (System.currentTimeMillis() - statIncrease > 120000) {
for (int i1 = 0; i1 < playerLevel.length; i1++) {
if (playerLevel[i1] < getLevelForXP(playerXP[i1])) {
playerLevel[i1] += 1;
setSkillLevel(i1, playerLevel[i1], playerXP[i1]);
NewHP = playerLevel[3];
refreshSkills();
} else if (playerLevel[i1] > getLevelForXP(playerXP[i1])) {
playerLevel[i1] -= 1;
setSkillLevel(i1, playerLevel[i1], playerXP[i1]);
NewHP = playerLevel[3];
refreshSkills();
}
}
statIncrease = System.currentTimeMillis();
}
if(PlayerHandler.getPlayerID(playerName) != playerId){
disconnected = true;
}
if (inCombat) {
long current = System.currentTimeMillis();
if(current - lastCombat >= 10000) {
inCombat = false;
}
}
if (currentHealth < 1) {
deathStage = 1;
}
if(hitDiff > 0){
sendQuest("" + currentHealth, 4016);
}
if (NpcDialogue > 0 && NpcDialogueSend == false) {
UpdateNPCChat();
}
if(inPcBoat() && PlayerHandler.pcWaitTimer == 1 && !inGame){
inGame = true;
resetpc();
toX = 2658 + misc.random(1);
toY = 2611 + misc.random(3);
server.npcHandler.spawnANPC(3777, 2628, 2591,0);
server.npcHandler.spawnANPC(3778, 2680, 2588,0);
server.npcHandler.spawnANPC(3779, 2669, 2570,0);
server.npcHandler.spawnANPC(3780, 2645, 2569,0);
PlayerHandler.portal1 = false;
PlayerHandler.portal2 = false;
PlayerHandler.portal3 = false;
PlayerHandler.portal4 = false;
ResetAttackNPC();
}
if(PlayerHandler.portal1 && PlayerHandler.portal2 && PlayerHandler.portal3 && PlayerHandler.portal4 && inGame){
inGame = false;
resetpc();
pcPoints += 10;
toX = 2657;
toY = 2639;
PlayerHandler.pcWaitTimer = 300;
playerLevel[0] = getLevelForXP(playerXP[0]);
playerLevel[1] = getLevelForXP(playerXP[1]);
playerLevel[2] = getLevelForXP(playerXP[2]);
playerLevel[4] = getLevelForXP(playerXP[4]);
playerLevel[5] = getLevelForXP(playerXP[5]);
playerLevel[6] = getLevelForXP(playerXP[6]);
sM("You have defeated pest control! You now have "+pcPoints+" points!");
ResetAttackNPC();
refreshSkills();
}
if(isInPitRoom() && PlayerHandler.pitsWaitTimer == 1 && !inPitsGame){
inPitsGame = true;
toX = 2397 + misc.random(10);
toY = 5157 + misc.random(10);
PlayerHandler.playersInPit += 1;
playerLevel[0] = getLevelForXP(playerXP[0]);
playerLevel[1] = getLevelForXP(playerXP[1]);
playerLevel[2] = getLevelForXP(playerXP[2]);
playerLevel[4] = getLevelForXP(playerXP[4]);
playerLevel[5] = getLevelForXP(playerXP[5]);
playerLevel[6] = getLevelForXP(playerXP[6]);
followID = 0;
}
if(isInPitGame() && PlayerHandler.pitsWaitTimer == 45 && inPitsGame){
inPitsGame = false;
toX = 2399;
toY = 5171;
currentHealth = playerLevel[playerHitpoints];
playerLevel[0] = getLevelForXP(playerXP[0]);
playerLevel[1] = getLevelForXP(playerXP[1]);
playerLevel[2] = getLevelForXP(playerXP[2]);
playerLevel[4] = getLevelForXP(playerXP[4]);
playerLevel[5] = getLevelForXP(playerXP[5]);
playerLevel[6] = getLevelForXP(playerXP[6]);
sM("Nobody has won.");
followID = 0;
}
if(isInPitGame() && inPitsGame && PlayerHandler.playersInPit == 1){
inPitsGame = false;
PlayerHandler.playersInPit = 0;
toX = 2399;
toY = 5171;
PlayerHandler.pitsWaitTimer = 150;
playerLevel[0] = getLevelForXP(playerXP[0]);
playerLevel[1] = getLevelForXP(playerXP[1]);
playerLevel[2] = getLevelForXP(playerXP[2]);
playerLevel[4] = getLevelForXP(playerXP[4]);
playerLevel[5] = getLevelForXP(playerXP[5]);
playerLevel[6] = getLevelForXP(playerXP[6]);
sM("You are the champion!");
yell("Current winner of fight pits: "+playerName+"!");
followID = 0;
addItem(7462, 1);
}
if(PlayerHandler.pitsWaitTimer == 5){
PlayerHandler.playersInPit = 0;
}
if (followID > 0) {
followDirection();
}
if (followID2 > 0) {
followDirection2();
}
if (tStage == 1 && tTime == 0) {
setAnimation(1979);
lowGFX(308, 0);
updateRequired = true;
appearanceUpdateRequired = true;
tTime = System.currentTimeMillis();
tStage = 2;
deleteItem(delItem1, delAmount1);
deleteItem(delItem2, delAmount2);
deleteItem(delItem3, delAmount3);
}
if (tStage == 2 && System.currentTimeMillis()-tTime >= 2200) {
toX = tX;
toY = tY;
heightLevel = tH;
updateRequired = true;
appearanceUpdateRequired = true;
tStage = 0;
tTime = 0;
resetAnimation();
resetfollowers();
closeInterface();
}
if (tStage == 3 && tTime2 == 0) {
setAnimation(3421);
updateRequired = true;
appearanceUpdateRequired = true;
tTime2 = System.currentTimeMillis();
tStage = 4;
}
if (tStage == 4 && System.currentTimeMillis()-tTime2 >= 450) {
specGFX(733);
tStage = 5;
}
if (tStage == 5 && System.currentTimeMillis()-tTime2 >= 1250) {
setAnimation(3422);
specGFX(733);
toX = tX;
toY = tY;
heightLevel = tH;
updateRequired = true;
appearanceUpdateRequired = true;
tStage = 0;
tTime = 0;
resetAnimation();
resetfollowers();
closeInterface();
}
/** Full magic spell system for process() starts here * */
if (spellHitTimer == 0) {
if (castSpell) {
castSpell = false;
if (!isSpellPlayer && spellNpcIndex > -1) {
appendHitToNpc(spellNpcIndex, spellHit);
} else if (isSpellPlayer && (spellPlayerIndex > -1)) {
appendHitToPlayer(spellPlayerIndex, spellHit);
}
}
spellHitTimer = -1; // FIXED: Why call this over and over? -.-
}
/** Full magic spell system for process() ends here * */
if(apickupid > 0)
scanPickup();
if(System.currentTimeMillis() - lastArrow > 75/*500*/ && arrow){
int arrowgfx = getarrowgfxnow();
if(AttackingOn > 0){
rangeGFX(70, arrowgfx);
}
if(attacknpc > 0){
rangeGFXNPC(70, arrowgfx);
}
arrow = false/*false*/;
arrow2 = false/*false*/;
}
if(System.currentTimeMillis() - lastArrow > /*1500*/750 && arrow2){
lastArrow = System.currentTimeMillis();
arrow2 = false/*true*/;
if(AttackingOn > 0 && isInWilderness(absX, absY, 1) == true && getClient(AttackingOn).isInWilderness(getClient(AttackingOn).absX, getClient(AttackingOn).absY, 1) == true){
client AttackingOn2 = (client) server.playerHandler.players[AttackingOn];
if(AttackingOn2 != null){
hitDiff = misc.random(maxRangeHit());
PlayerHandler.players[AttackingOn].hitDiff = hitDiff;
PlayerHandler.players[AttackingOn].updateRequired = true;
PlayerHandler.players[AttackingOn].appearanceUpdateRequired = true;
PlayerHandler.players[AttackingOn].hitUpdateRequired = true;
PlayerHandler.players[AttackingOn].dealDamage(hitDiff);
PlayerHandler.players[AttackingOn].offTimer = System.currentTimeMillis();
PlayerHandler.players[AttackingOn].hitID = playerId;
PlayerHandler.players[AttackingOn].KilledBy[playerId] += hitDiff;
}
}
if(attacknpc >= 0){
server.npcHandler.npcs[attacknpc].hitDiff = npcRangeDamage();
server.npcHandler.npcs[attacknpc].updateRequired = true;
server.npcHandler.npcs[attacknpc].hitUpdateRequired = true;
server.npcHandler.npcs[attacknpc].hit = true;
}
}
if(System.currentTimeMillis() - waveStart > 10000 && TzWave != -1 && IsInFightCave() && wave)
{
wave = false;
heightLevel = getHeightForTzhaar();
waveStart = System.currentTimeMillis();
SpawnNewWave();
}
if(IsInRfdQuest() && q14 == 1)
{
heightLevel = HeightForRfd();
}
if (ddsHit && System.currentTimeMillis() - lastDds > ddsInterval) {
if (!ProtMelee)
hitDiff = misc.random(15);
if (ProtMelee)
hitDiff = 0;
dealDamage(hitDiff);
updateRequired = true;
hitUpdateRequired = true;
ddsHit = false;
}
if ((IsAttackingNPC) && DDS2Damg == true && System.currentTimeMillis() - lastDds > ddsInterval) {
SpecDamgNPC(playerMaxHit + 8);
DDS2Damg = false;
}
if (IsAttacking == true && DDS2Damg == true && deathStage == 0 && System.currentTimeMillis() - lastDds > ddsInterval) {
if (AttackingOn > 0) {
getHitDouble(8);
DDS2Damg = false;
}
}
if (IsAttacking == true && DDS2Damg2 == true && deathStage == 0 && System.currentTimeMillis() - lastDds > ddsInterval) {
if (AttackingOn > 0) {
if(playerEquipment[playerWeapon] == 4827){
getHit2();
DDS2Damg2 = false;
}
if(playerEquipment[playerWeapon] == 861){
getHit2();
DDS2Damg2 = false;
}
}
}
if (IsAttackingNPC == true && DDS2Damg2 == true && System.currentTimeMillis() - lastDds > ddsInterval) {
if (attacknpc > 0){
if(playerEquipment[playerWeapon] == 4827){
getHit2();
DDS2Damg2 = false;
}
if(playerEquipment[playerWeapon] == 861){
getHit2();
DDS2Damg2 = false;
}
}
}
if (IsAttacking == true && DDS2Damg3 == true && deathStage == 0 && System.currentTimeMillis() - lastDds > ddsInterval) {
getHit2();
DDS2Damg3 = false;
}
if(playerLevel[5] < 0){
playerLevel[5] = 0;
sendQuest("" + playerLevel[5] + "", 4012);
sendFrame126("Prayer: "+playerLevel[5]+"/"+getLevelForXP(playerXP[5])+"", 687);
}
if(checkPrayOn() && playerLevel[5] < 1){
playerLevel[5] = 0;
prayOff();
}
if(checkPrayOn() && System.currentTimeMillis() - lastPray > prayInterval){
prayInterval = checkPrayStat();
lastPray = System.currentTimeMillis();
prayerDrain();
sendQuest("" + playerLevel[5] + "", 4012);
sendFrame126("Prayer: "+playerLevel[5]+"/"+getLevelForXP(playerXP[5])+"", 687);
}
if (originalS > 0) {
wear(originalS, playerShield);
}
if (inTrade && tradeResetNeeded) {
client o = getClient(trade_reqId);
if (o.tradeResetNeeded) {
resetTrade();
o.resetTrade();
}
}
// Shop
if (UpdateShop == true) {
resetItems(3823);
resetShop(MyShopID);
}
// check banking
if (WanneBank > 0) {
if (GoodDistance(skillX, skillY, absX, absY, WanneBank) == true) {
openUpBank();
WanneBank = 0;
}
}
// check stairs
if (stairs > 0) {
if (GoodDistance(skillX, skillY, absX, absY, stairDistance) == true) {
stairs(stairs, absX, absY);
}
}
// check shopping
if (WanneShop > 0) {
if (GoodDistance(skillX, skillY, absX, absY, 1) == true) {
openUpShop(WanneShop);
WanneShop = 0;
}
}
// woodcutting check
if (woodcutting[0] > 0) {
if (GoodDistance(skillX, skillY, absX, absY, woodcutting[5]) == true) {
closeInterface();
woodcutting();
}
}
// Attacking in wilderness
//long thisTime = System.currentTimeMillis();
if ((IsAttacking == true) && (deathStage == 0)
&& (System.currentTimeMillis() - lastAction > actionInterval)) {
if (PlayerHandler.players[AttackingOn] != null) {
if (PlayerHandler.players[AttackingOn].currentHealth > 0) {
Attack();
}
} else {
ResetAttack();
}
}
// Attacking an NPC
if ((IsAttackingNPC == true) && (deathStage == 0) && System.currentTimeMillis() - lastAction > actionInterval) {
if (server.npcHandler.npcs[attacknpc] != null) {
if ((server.npcHandler.npcs[attacknpc].IsDead == false)
&& (server.npcHandler.npcs[attacknpc].MaxHP > 0)) {
AttackNPC();
} else {
//ResetAttackNPC();
}
} else {
ResetAttackNPC();
}
}
// If killed apply dead
if (deathStage == 1) {
if (attacknpc > 0) {
server.npcHandler.ResetAttackPlayer(attacknpc);
}
ResetAttack();
ResetAttackNPC();
deathStage = 2;
poisoned = false;
poisonDmg = false;
fighting = false;
hits = 0;
startAnimation(/*0x900*/2241);
updateRequired = true;
appearanceUpdateRequired = true;
deathTimer = System.currentTimeMillis();
currentHealth = playerLevel[playerHitpoints];
playerLevel[0] = getLevelForXP(playerXP[0]);
playerLevel[1] = getLevelForXP(playerXP[1]);
playerLevel[2] = getLevelForXP(playerXP[2]);
playerLevel[4] = getLevelForXP(playerXP[4]);
playerLevel[5] = getLevelForXP(playerXP[5]);
playerLevel[6] = getLevelForXP(playerXP[6]);
sendFrame126("Prayer: "+playerLevel[5]+"/"+getLevelForXP(playerXP[5])+"", 687);
resetfollowers();
refreshSkills();
killMyNPCs();
resetKnight();
skulledBy = "";
}
if (!IsInFightCave() && !isInPitGame() && !isInPitRoom() && playerRights != 2 && playerRights != 3 && action != 1 && deathStage == 2 && System.currentTimeMillis() - deathTimer >= 2500) {
client killerz = (client) server.playerHandler.players[KillerId];
youdied();
killerz.sM("You have defeated "+playerName+".");
killerz.pkPoints += 1;
updateRequired = true;
}
if (deathStage == 2 && System.currentTimeMillis() - deathTimer >= 2500 && isInPitGame() && !IsInFightCave()) {
toX = 2399;
toY = 5171;
inPitsGame = false;
PlayerHandler.playersInPit -= 1;
AtkPray = 0;
StrPrayer = 0;
DefPray = 0;
RangePray = 0;
MagePray = 0;
PrayHeal = false;
ProtItem = false;
ProtMage = false;
ProtRange = false;
ProtMelee = false;
Redemption = false;
Retribution = false;
Smite = false;
Chivalry = false;
Piety = false;
isSkulled = false;
lastSkull = 0;
headIcon = 0;
turnpray();
heightLevel = 0;
currentHealth = playerLevel[playerHitpoints];
deathStage = 0;
resetAnimation();
frame1();
prayOn = false;
AntiTeleDelay = 0;
EntangleDelay = 0;
RfdWave = 0;
sM("Oh dear you have died!");
resetOtherAtk();
followID = 0;
followID2 = 0;
}
if (deathStage == 2 && System.currentTimeMillis() - deathTimer >= 2500 && !isInPitGame() && IsInFightCave()) {
toX = 2439;
toY = 5169;
AtkPray = 0;
StrPrayer = 0;
DefPray = 0;
RangePray = 0;
MagePray = 0;
PrayHeal = false;
ProtItem = false;
ProtMage = false;
ProtRange = false;
ProtMelee = false;
Redemption = false;
Retribution = false;
Smite = false;
Chivalry = false;
Piety = false;
isSkulled = false;
lastSkull = 0;
headIcon = 0;
turnpray();
heightLevel = 0;
currentHealth = playerLevel[playerHitpoints];
deathStage = 0;
resetAnimation();
frame1();
prayOn = false;
RfdWave = 0;
sM("Oh dear you have died!");
resetOtherAtk();
}
if (deathStage == 2 && System.currentTimeMillis() - deathTimer >= 2500 && !isInPitGame() && !IsInFightCave()) {
toX = 2855;
toY = 10199;
AtkPray = 0;
StrPrayer = 0;
DefPray = 0;
RangePray = 0;
MagePray = 0;
PrayHeal = false;
ProtItem = false;
ProtMage = false;
ProtRange = false;
ProtMelee = false;
Redemption = false;
Retribution = false;
Smite = false;
Chivalry = false;
Piety = false;
isSkulled = false;
lastSkull = 0;
headIcon = 0;
turnpray();
heightLevel = 0;
currentHealth = playerLevel[playerHitpoints];
deathStage = 0;
resetAnimation();
frame1();
prayOn = false;
RfdWave = 0;
sM("Oh dear you have died!");
resetOtherAtk();
if (destruct)
{
absX = 2873;
absY = 10232;
}
savegame(false);
}
// mining check
if (mining[0] > 0) {
if (GoodDistance(skillX, skillY, absX, absY, 1) == true) {
mining();
}
}
if (shafting
&& (System.currentTimeMillis() - lastAction >= 1500)) {
lastAction = System.currentTimeMillis();
shaft();
} else if (fletching
&& (System.currentTimeMillis() - lastAction >= 1900)) {
lastAction = System.currentTimeMillis();
fletchBow();
} else if (spinning
&& (System.currentTimeMillis() - lastAction >= 1900)) {
lastAction = System.currentTimeMillis();
spin();
} else if (cookingOn
&& (System.currentTimeMillis() - lastAction >= 1900)) {
lastAction = System.currentTimeMillis();
cookFish();
} else if (crafting
&& (System.currentTimeMillis() - lastAction >= 1500)) {
lastAction = System.currentTimeMillis();
craft();
} else if (fishing && (System.currentTimeMillis() - lastAction >= 3000)) {
lastAction = System.currentTimeMillis();
fish(fishId);
} else if (essMine && (System.currentTimeMillis() - lastAction >= 500) && freeSlots() != 0 && (playerLevel[14] >= 80)) {
lastAction = System.currentTimeMillis();
addItem(1436, 1);
addSkillXP(75, 14);
} else if (essMine && (System.currentTimeMillis() - lastAction >= 1000) && freeSlots() != 0 && (playerLevel[14] >= 60 && playerLevel[14] <= 79)) {
lastAction = System.currentTimeMillis();
addItem(1436, 1);
addSkillXP(50, 14);
} else if (essMine && (System.currentTimeMillis() - lastAction >= 1500) && freeSlots() != 0 && (playerLevel[14] >= 40 && playerLevel[14] <= 59)) {
lastAction = System.currentTimeMillis();
addItem(1436, 1);
addSkillXP(32, 14);
} else if (essMine && (System.currentTimeMillis() - lastAction >= 2000) && freeSlots() != 0 && (playerLevel[14] >= 1 && playerLevel[14] <= 39)) {
lastAction = System.currentTimeMillis();
addItem(1436, 1);
addSkillXP(20, 14);
}
if (isKicked) {
disconnected = true;
if (saveNeeded)
savegame(true);
outStream.createFrame(109);
}
return false;
}