Files
2006Scape/2006Redone Server/src/com/rebotted/game/objects/impl/Climbing.java
T
2020-01-27 08:02:18 -05:00

920 lines
32 KiB
Java

package com.rebotted.game.objects.impl;
import com.rebotted.event.CycleEvent;
import com.rebotted.event.CycleEventContainer;
import com.rebotted.event.CycleEventHandler;
import com.rebotted.game.content.quests.QuestAssistant;
import com.rebotted.game.items.impl.LightSources;
import com.rebotted.game.players.Player;
import com.rebotted.util.Misc;
/**
* Climbing handles stairs, ladders
* @author Andrew (Mr Extremez)
*/
public class Climbing {
private static final int CLIMB_UP = 828, CLIMB_DOWN = CLIMB_UP;
public static void handleClimbing(final Player client) {
if (System.currentTimeMillis() - client.climbDelay < 1200) {
return;
}
client.stopPlayer = true;
CycleEventHandler.getSingleton().addEvent(client, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
processClimbing(client);
client.getPlayerAssistant().requestUpdates();
container.stop();
}
@Override
public void stop() {
client.climbDelay = System.currentTimeMillis();
client.stopPlayer = false;
}
}, 1);
}
public static void processClimbing(Player client) {
int chapionsGuildRequiredQP = Math.min(32, QuestAssistant.MAXIMUM_QUESTPOINTS);
switch (client.objectId) {
case 9584:
if (client.objectX == 2932 && client.objectY == 3282) {
client.getPlayerAssistant().movePlayer(2933, 3282, 0);
client.resetWalkingQueue();
}
break;
case 272:
client.getPlayerAssistant().movePlayer(client.absX, client.absY, 1);
client.resetWalkingQueue();
break;
case 273:
client.getPlayerAssistant().movePlayer(client.absX, client.absY, 0);
client.resetWalkingQueue();
break;
case 245:
if (client.objectY == 3224) {
client.getPlayerAssistant().movePlayer(client.absX, client.absY+2, 2);
client.resetWalkingQueue();
} else if (client.objectY == 3139 || client.objectX == 2835 || client.objectX == 2963) {
client.getPlayerAssistant().movePlayer(client.absX+2, client.absY, 2);
client.resetWalkingQueue();
} else {
client.getPlayerAssistant().movePlayer(client.absX-2, client.absY, 2);
client.resetWalkingQueue();
}
break;
case 246:
if (client.objectY == 3224) {
client.getPlayerAssistant().movePlayer(client.absX, client.absY-2, 1);
client.resetWalkingQueue();
} else if (client.objectY == 3139 || client.objectX == 2835 || client.objectX == 2963) {
client.getPlayerAssistant().movePlayer(client.absX-2, client.absY, 1);
client.resetWalkingQueue();
} else {
client.getPlayerAssistant().movePlayer(client.absX+2, client.absY, 1);
client.resetWalkingQueue();
}
break;
case 11888:
if (client.absX == 2908 && client.absY == 3336) {
climbUp(client);
client.resetWalkingQueue();
}
break;
case 4568:
if (client.objectX == 2506 && client.objectY == 3640) {
climbUp(client);
client.resetWalkingQueue();
}
break;
case 4569:
if (client.objectX == 2506 && client.objectY == 3640) {
handleLadder(client);
client.resetWalkingQueue();
}
break;
case 4570:
if (client.objectX == 2506 && client.objectY == 3641) {
climbDown(client);
client.resetWalkingQueue();
}
break;
case 11889:
if (client.absX == 2908 && client.absY == 3336) {
handleLadder(client);
client.resetWalkingQueue();
}
break;
case 11890:
if (client.absX == 2908 && client.absY == 3336) {
climbDown(client);
client.resetWalkingQueue();
}
break;
case 9582:
if (client.objectX == 2931 && client.objectY == 3282) {
client.getPlayerAssistant().movePlayer(2933, 3282, 1);
client.resetWalkingQueue();
}
break;
case 1722:
if (client.objectX == 2590 && client.objectY == 3089 && client.heightLevel == 0 && client.absY == 3088) {
client.getPlayerAssistant().movePlayer(client.absX, 3092, 1);
} else if (client.objectX == 2590 && client.objectY == 3089 && client.heightLevel == 0 && client.absY != 3088) {
return;
}
if (client.objectX == 3175 && client.objectY == 3420 && client.heightLevel == 0 && client.absX == 3177 && client.absX > 3418 && client.absX < 3425) {
return;
} else if (client.absY == 3423) {
client.getPlayerAssistant().movePlayer(client.absX, 3419, 1);
client.resetWalkingQueue();
}
if (client.absX == 3098) {
client.getPlayerAssistant().movePlayer(3102, 3266, 1);
client.resetWalkingQueue();
} else if (client.absY == 3445) {
client.getPlayerAssistant().movePlayer(3260, 3449, 1);
client.resetWalkingQueue();
} else if (client.absY == 3358 && client.questPoints >= chapionsGuildRequiredQP) {
client.getPlayerAssistant().movePlayer(client.absX, 3354, 1);
client.resetWalkingQueue();
} else if (client.absY == 3358 && client.questPoints < chapionsGuildRequiredQP) {
client.getPacketSender().sendMessage("You need " + chapionsGuildRequiredQP + " quest points to use these stairs.");
} else if (client.absX == 3180) {
client.getPlayerAssistant().movePlayer(3176, client.absY, 1);
client.resetWalkingQueue();
} else if (client.absX == 3159) {
client.getPlayerAssistant().movePlayer(3155, 3435, 1);
client.resetWalkingQueue();
} else if (client.absX == 2661) {
client.getPlayerAssistant().movePlayer(2665, client.absY, 1);
client.resetWalkingQueue();
} else if (client.absY == 3083) {
client.getPlayerAssistant().movePlayer(client.absX, 3087, 2);
client.resetWalkingQueue();
} else if (client.absY == 3298) {
client.getPlayerAssistant().movePlayer(client.absX, 3294, 1);
client.resetWalkingQueue();
} else if (client.absY == 3472) {
client.getPlayerAssistant().movePlayer(client.absX, 3476, 1);
client.resetWalkingQueue();
}
break;
case 1723:
if (client.absX == 3102) {
client.getPlayerAssistant().movePlayer(3098, 3266, 0);
client.resetWalkingQueue();
} else if (client.absY == 3354 && client.questPoints >= chapionsGuildRequiredQP) {
client.getPlayerAssistant().movePlayer(client.absX, 3358, 0);
client.resetWalkingQueue();
} else if (client.absY == 3358 && client.questPoints < chapionsGuildRequiredQP) {
client.getPacketSender().sendMessage("You need " + chapionsGuildRequiredQP + " quest points to use these stairs");
} else if (client.absY == 3449) {
client.getPlayerAssistant().movePlayer(3259, 3445, 0);
client.resetWalkingQueue();
} else if (client.absX == 3155) {
client.getPlayerAssistant().movePlayer(3159, 3435, 0);
client.resetWalkingQueue();
} else if (client.absX == 2665) {
client.getPlayerAssistant().movePlayer(2661, client.absY, 0);
client.resetWalkingQueue();
} else if (client.absY == 3092) {
client.getPlayerAssistant().movePlayer(client.absX, 3088, 0);
client.resetWalkingQueue();
} else if (client.absY == 3087) {
client.getPlayerAssistant().movePlayer(client.absX, 3083, 1);
client.resetWalkingQueue();
} else if (client.absY == 3419) {
client.getPlayerAssistant().movePlayer(client.absX, 3423, 0);
client.resetWalkingQueue();
} else if (client.absX == 3176) {
client.getPlayerAssistant().movePlayer(3180, client.absY, 0);
client.resetWalkingQueue();
} else if (client.absY == 3321) {
client.getPlayerAssistant().movePlayer(client.absX, 3325, 0);
client.resetWalkingQueue();
} else if (client.absY == 3294) {
client.getPlayerAssistant().movePlayer(client.absX, 3298, 0);
client.resetWalkingQueue();
} else if (client.absY == 3476) {
client.getPlayerAssistant().movePlayer(client.absX, 3472, 0);
client.resetWalkingQueue();
}
break;
case 1733:
if (client.objectX == 2569 && client.objectY == 3122) {
client.getPlayerAssistant().movePlayer(2569, 9525, 0);
client.resetWalkingQueue();
} else if (client.absX == 3186) {
client.getPlayerAssistant().movePlayer(3190, 9834, 0);
client.resetWalkingQueue();
} else if (client.objectX == 2603 && client.objectY == 3078) {
client.getPlayerAssistant().feature("using this staircase");
client.resetWalkingQueue();
} else if (client.absX != 3186) {
client.getPlayerAssistant().movePlayer(client.absX,
client.absY + 6393, 0);
client.resetWalkingQueue();
}
break;
case 1734:
if (client.objectX == 2569 && client.objectY == 9522) {
client.getPlayerAssistant().movePlayer(2569, 3121, 0);
client.resetWalkingQueue();
} else if (client.absX == 3190) {
client.getPlayerAssistant().movePlayer(3186, 3434, 0);
client.resetWalkingQueue();
} else if (client.objectX == 3059 && client.objectY == 9776) {
client.getPlayerAssistant().movePlayer(3061,
client.absY - 6400, 0);
client.resetWalkingQueue();
} else if (client.absX != 3190) {
client.getPlayerAssistant().movePlayer(client.absX,
client.absY - 6396, 0);
client.resetWalkingQueue();
}
break;
case 1737:
if (client.absY == 3294) {
client.getPlayerAssistant().movePlayer(2661, 3291, 1);
client.resetWalkingQueue();
} else if (client.absY == 3302) {
client.getPlayerAssistant().movePlayer(2648, 3301, 1);
client.resetWalkingQueue();
} else if (client.absY == 3293) {
client.getPlayerAssistant().movePlayer(2649, 3296, 1);
client.resetWalkingQueue();
}
break;
case 1736:
if (client.absY == 3291) {
client.getPlayerAssistant().movePlayer(2662, 3294, 0);
client.resetWalkingQueue();
} else if (client.absY == 3301) {
client.getPlayerAssistant().movePlayer(2645, 3302, 0);
client.resetWalkingQueue();
} else if (client.absX == 2649) {
client.getPlayerAssistant().movePlayer(2648, 3293, 0);
client.resetWalkingQueue();
}
break;
case 1742:
if (client.objectX == 2445 && client.objectY == 3434) {
client.getPlayerAssistant().movePlayer(2445, 3433, 1);
client.startAnimation(CLIMB_UP);
client.resetWalkingQueue();
} else if (client.objectX == 2444 && client.objectY == 3414) {
client.getPlayerAssistant().movePlayer(2445, 3416, 1);
client.startAnimation(CLIMB_UP);
client.resetWalkingQueue();
} else if (client.objectX == 2455 && client.objectY == 3417) {
client.getPlayerAssistant().movePlayer(2457, 3417, 1);
client.startAnimation(CLIMB_UP);
client.resetWalkingQueue();
} else if (client.objectX == 2461 && client.objectY == 3416) {
client.getPlayerAssistant().movePlayer(2460, 3417, 1);
client.startAnimation(CLIMB_UP);
client.resetWalkingQueue();
} else if (client.objectX == 2440 && client.objectY == 3404) {
client.getPlayerAssistant().movePlayer(2440, 3403, 1);
client.startAnimation(CLIMB_UP);
client.resetWalkingQueue();
}
break;
case 1744:
if (client.objectX == 2445 && client.objectY == 3434) {
client.getPlayerAssistant().movePlayer(2445, 3433, 0);
client.startAnimation(CLIMB_DOWN);
client.resetWalkingQueue();
} else if (client.objectX == 2444 || client.objectX == 2445
&& client.objectY == 3415) {
client.getPlayerAssistant().movePlayer(2444, 3413, 0);
client.startAnimation(CLIMB_DOWN);
client.resetWalkingQueue();
} else if (client.objectX == 2456 && client.objectY == 3417) {
client.getPlayerAssistant().movePlayer(2457, 3417, 0);
client.startAnimation(CLIMB_DOWN);
client.resetWalkingQueue();
} else if (client.objectX == 2461 && client.objectY == 3417) {
client.getPlayerAssistant().movePlayer(2460, 3417, 0);
client.startAnimation(CLIMB_DOWN);
client.resetWalkingQueue();
} else if (client.objectX == 2440 && client.objectY == 3404) {
client.getPlayerAssistant().movePlayer(2440, 3403, 0);
client.startAnimation(CLIMB_DOWN);
client.resetWalkingQueue();
}
break;
case 7257:
client.getPlayerAssistant().movePlayer(3044, 4973, 1);
client.startAnimation(827);
client.getPacketSender().sendMessage("You climb down.");
client.resetWalkingQueue();
break;
case 6279:
if (client.getItemAssistant().playerHasItem(954, 1)) {
client.getPlayerAssistant().movePlayer(3206, 9379, 0);
client.startAnimation(827);
client.getPacketSender().sendMessage("You climb down.");
client.resetWalkingQueue();
} else {
client.getPacketSender().sendMessage(
"You need a rope to enter.");
return;
}
break;
case 6436:
UseOther.useUp(client, client.objectId);
client.resetWalkingQueue();
break;
case 6434:
case 5167:
UseOther.useDown(client, client.objectId);
client.resetWalkingQueue();
break;
case 1767:
if (client.objectX == 3069 && client.objectY == 3856) {
UseOther.useDown(client, client.objectId);
client.resetWalkingQueue();
}
break;
case 6439:
client.getPlayerAssistant().movePlayer(3309, 2963, 0);
client.getPacketSender().sendMessage("You climb up.");
client.resetWalkingQueue();
break;
case 2408:
if (client.playerLevel[5] > 0) {
client.playerLevel[5] = 0;
}
client.getPlayerAssistant().refreshSkill(5);
client.getPacketSender().sendMessage(
"Your prayer is drained as you enter the dungeon.");
client.getPlayerAssistant().movePlayer(2823, 9771, 0);
client.startAnimation(827);
client.getPacketSender().sendMessage("You climb down.");
client.resetWalkingQueue();
break;
case 2147:
client.getPlayerAssistant().movePlayer(3104, 9576, 0);
client.startAnimation(827);
client.getPacketSender().sendMessage("You climb down.");
client.resetWalkingQueue();
break;
case 2148:
client.getPlayerAssistant().movePlayer(3103, 3162, 0);
client.startAnimation(828);
client.getPacketSender().sendMessage("You climb up.");
client.resetWalkingQueue();
break;
case 4383:
client.getPlayerAssistant().movePlayer(2515, 10007, 0);
client.startAnimation(827);
client.getPacketSender().sendMessage("You climb down.");
client.resetWalkingQueue();
break;
case 5131:
client.getPlayerAssistant().movePlayer(3549, 9865, 0);
client.getPacketSender().sendMessage("You climb down.");
client.resetWalkingQueue();
break;
case 5130:
client.getPlayerAssistant().movePlayer(3543, 3463, 0);
client.getPacketSender().sendMessage("You climb up.");
client.resetWalkingQueue();
break;
case 4413:
client.getPlayerAssistant().movePlayer(2510, 3644, 0);
client.startAnimation(828);
client.getPacketSender().sendMessage("You climb up.");
client.resetWalkingQueue();
break;
case 3432:
client.getPlayerAssistant().movePlayer(3440, 9887, 0);
client.resetWalkingQueue();
break;
case 1738:
if (client.objectX == 2728 && client.objectY == 3460
&& client.heightLevel == 0) {
client.getPlayerAssistant().movePlayer(2749, 3462, 1);
client.resetWalkingQueue();
} else if (client.objectX == 2746 && client.objectY == 3460
&& client.heightLevel == 0) {
client.getPlayerAssistant().movePlayer(2745, 3461, 1);
client.resetWalkingQueue();
} else if (client.objectX == 2648 && client.objectY == 3310) {
Climbing.climbUp(client);
client.resetWalkingQueue();
} else if (client.objectX == 2673 && client.objectY == 3300) {
client.getPlayerAssistant().movePlayer(2675, 3300, 1);
client.resetWalkingQueue();
} else if (client.objectX == 3204 && client.objectY == 3207) {
client.getPlayerAssistant().movePlayer(3205, 3209, 1);
client.resetWalkingQueue();
} else if (client.objectX == 3204 && client.objectY == 3229) {
client.getPlayerAssistant().movePlayer(3205, 3228, 1);
client.resetWalkingQueue();
} else if (client.objectX == 3258 && client.objectY == 3487) {
client.getPlayerAssistant().movePlayer(3257, 3487, 1);
client.resetWalkingQueue();
} else if (client.objectX == 3144 && client.objectY == 3447 && client.playerLevel[client.playerCooking] > 31 && client.playerEquipment[client.playerHat] == 1949) {
client.getPlayerAssistant().movePlayer(3143, 3448, 1);
client.resetWalkingQueue();
} else if (client.objectX == 3010 && client.objectY == 3515) {
client.getPlayerAssistant().movePlayer(3012, 3515, 1);
client.resetWalkingQueue();
} else if (client.objectX == 2895 && client.objectY == 3513) {
client.getPlayerAssistant().movePlayer(2897, 3513, 1);
client.resetWalkingQueue();
}
break;
case 3443:
client.getPlayerAssistant().movePlayer(3423, 3485, 0);
break;
case 1754:
if (client.objectX == 3116 && client.objectY == 3452) {
client.getPlayerAssistant().movePlayer(3222, 3218, 0);
client.startAnimation(CLIMB_DOWN);
client.resetWalkingQueue();
}
break;
case 1755:
if (client.objectX == 3116 && client.objectY == 9852) {
client.getPlayerAssistant().movePlayer(3116, 3451, 0);
client.startAnimation(CLIMB_UP);
client.resetWalkingQueue();
} else if (client.objectX == 3097 && client.objectY == 9867) {
client.getPlayerAssistant().movePlayer(3096, 3468, 0);
client.startAnimation(CLIMB_UP);
client.resetWalkingQueue();
} else if (client.objectX == 3237 && client.objectY == 9858) {
client.getPlayerAssistant().movePlayer(3238, 3458, 0);
client.startAnimation(CLIMB_UP);
client.resetWalkingQueue();
} else if (client.objectX == 3088 && client.objectY == 9971) {
UseOther.useUp(client, client.objectId);
client.resetWalkingQueue();
// client.startAnimation(CLIMB_UP);
} else if (client.objectX == 3209 && client.objectY == 9616) {
// OtherObjects.useUp(client, client.objectId);
client.getPlayerAssistant().movePlayer(3209, 3215, 0);
client.startAnimation(CLIMB_UP);
client.resetWalkingQueue();
client.getPacketSender().sendMessage("You climb up.");
} else if (client.objectX == 3019 && client.objectY == 9740) {// noord
client.getPlayerAssistant().movePlayer(3019, 3341, 0);
client.startAnimation(CLIMB_UP);
client.resetWalkingQueue();
} else if (client.objectX == 3020 && client.objectY == 9739) {// oost
client.getPlayerAssistant().movePlayer(3021, 3339, 0);
client.startAnimation(CLIMB_UP);
client.resetWalkingQueue();
} else if (client.objectX == 3018 && client.objectY == 9739) {// wst
client.getPlayerAssistant().movePlayer(3017, 3339, 0);
client.startAnimation(CLIMB_UP);
client.resetWalkingQueue();
} else if (client.objectX == 3019 && client.objectY == 9738) {// zuid
client.getPlayerAssistant().movePlayer(3019, 3337, 0);
client.startAnimation(CLIMB_UP);
client.resetWalkingQueue();
} else {
UseOther.useUp(client, client.objectId);
}
break;
case 2405:
UseOther.useUp(client, client.objectId);
client.resetWalkingQueue();
break;
case 98:
if (client.inWild()) {
return;
}
if (!LightSources.playerHasLightSource(client)) {
client.getPlayerAssistant().movePlayer(2641, 9740, 0);
client.resetWalkingQueue();
return;
} else if (LightSources.playerHasLightSource(client)) {
client.getPlayerAssistant().movePlayer(2641, 9764, 0);
client.resetWalkingQueue();
return;
}
break;
case 96:
if (client.inWild()) {
return;
}
LightSources.brightness3(client);
client.getPlayerAssistant().movePlayer(2649, 9804, 0);
client.resetWalkingQueue();
break;
case 2711:
if (client.absY == 3325) {
client.getPlayerAssistant().movePlayer(client.absX, 3321, 1);
client.resetWalkingQueue();
}
break;
case 4755:
if (client.absY == 2797) {
client.getPlayerAssistant().movePlayer(client.absX, 2793, 0);
client.resetWalkingQueue();
}
break;
case 4756:
if (client.absY == 2793) {
client.getPlayerAssistant().movePlayer(client.absX, 2797, 1);
client.resetWalkingQueue();
}
break;
case 4879:
client.getPlayerAssistant().movePlayer(2807, 9200, 0);
client.getPacketSender().sendMessage(
"You go down the trapdoor.");
client.startAnimation(827);
client.getPacketSender().closeAllWindows();
client.resetWalkingQueue();
break;
case 5492:
if (client.getItemAssistant().playerHasItem(1523, 1)
&& Misc.random(4) < 3) {
client.getPlayerAssistant().movePlayer(3149, 9652, 0);
client.getPacketSender().sendMessage(
"You go down the trapdoor.");
client.startAnimation(827);
client.getPlayerAssistant().addSkillXP(.5,
client.playerThieving);
client.getPacketSender().closeAllWindows();
} else if (!client.getItemAssistant().playerHasItem(1523, 1)
&& Misc.random(5) < 2) {
client.getPlayerAssistant().movePlayer(3149, 9652, 0);
client.getPacketSender().sendMessage(
"You go down the trapdoor.");
client.startAnimation(827);
client.getPlayerAssistant().addSkillXP(.5,
client.playerThieving);
client.getPacketSender().closeAllWindows();
client.resetWalkingQueue();
} else if (client.getItemAssistant().playerHasItem(1523, 1)
&& Misc.random(4) > 3) {
client.getPacketSender().sendMessage(
"You fail to pick the lock.");
client.getPacketSender()
.sendMessage(
"Your thieving has been drained, your fingers feel numb.");
client.playerLevel[17] = client.getPlayerAssistant()
.getLevelForXP(client.playerXP[17]) - 1;
client.getPlayerAssistant().refreshSkill(17);
client.getItemAssistant().deleteItem(1523, 1);
} else if (!client.getItemAssistant().playerHasItem(1523, 1)
&& Misc.random(5) > 2) {
client.getPacketSender().sendMessage(
"You fail to pick the lock.");
client.getPacketSender()
.sendMessage(
"Your thieving has been drained, your fingers feel numb.");
client.playerLevel[17] = client.getPlayerAssistant()
.getLevelForXP(client.playerXP[17]) - 1;
client.getPlayerAssistant().refreshSkill(17);
}
break;
case 6278:
if (client.objectX == 2637 && client.objectY == 3408) {
UseOther.useDown(client, 6278);
}
break;
case 11724:
if (client.absX == 2971) {
client.getPlayerAssistant().movePlayer(2968, 3348, 1);
client.resetWalkingQueue();
}
break;
case 11725:
if (client.absY == 3348) {
client.getPlayerAssistant().movePlayer(2971, 3347, 0);
client.resetWalkingQueue();
}
break;
case 1725:
if (client.absY == 3376) {
client.getPlayerAssistant().movePlayer(client.absX, 3380, 1);
client.resetWalkingQueue();
} else if (client.absX == 3285 || client.absX == 3286 && client.heightLevel == 0) {
client.getPlayerAssistant().movePlayer(client.absX, 3492, 1);
client.resetWalkingQueue();
} else if (client.absY == 3509) {
client.getPlayerAssistant().movePlayer(2751, 3513, 1);
client.resetWalkingQueue();
} else if (client.absX == 3226) {
client.getPlayerAssistant().movePlayer(3230, 3394, 1);
client.resetWalkingQueue();
}
break;
case 5096:
client.getPlayerAssistant().movePlayer(2649, 9591, 0);
client.resetWalkingQueue();
break;
case 1726:
if (client.absY == 3380 ) {
client.getPlayerAssistant().movePlayer(client.absX, 3376, 0);
client.resetWalkingQueue();
} else if (client.absY == 3513) {
client.getPlayerAssistant().movePlayer(2751, 3509, 0);
client.resetWalkingQueue();
} else if (client.absX == 3230) {
client.getPlayerAssistant().movePlayer(3226, 3394, 0);
client.resetWalkingQueue();
} else if (client.absX == 3285 || client.absX == 3286
&& client.heightLevel == 1) {
client.getPlayerAssistant().movePlayer(client.absX, 3496, 0);
client.resetWalkingQueue();
}
break;
case 11727:
if (client.absY == 3350 || client.absY == 3351
|| client.absY == 3340 || client.absY == 3341
|| client.absY == 3342) {
climbUp(client);
client.resetWalkingQueue();
}
break;
case 11728:
if (client.absY == 3350 || client.absY == 3351
|| client.absY == 3340 || client.absY == 3341
|| client.absY == 3342) {
climbDown(client);
client.resetWalkingQueue();
}
break;
case 11729:
if (client.objectX == 2954 && client.objectY == 3338) {
client.getPlayerAssistant().movePlayer(2956, 3338, 1);
client.resetWalkingQueue();
} else if (client.objectX == 2960 && client.objectY == 3338) {
client.getPlayerAssistant().movePlayer(2959, 3339, 2);
client.resetWalkingQueue();
} else if (client.objectX == 2957 && client.objectY == 3338) {
client.getPlayerAssistant().movePlayer(2959, 3338, 3);
client.resetWalkingQueue();
}
break;
case 11731:
if (client.objectX == 2955 && client.objectY == 3338) {
client.getPlayerAssistant().movePlayer(2956, 3338, 0);
} else if (client.objectX == 2960 && client.objectY == 3339) {
client.getPlayerAssistant().movePlayer(2959, 3338, 1);
} else if (client.objectX == 2958 && client.objectY == 3338) {
client.getPlayerAssistant().movePlayer(2957, 3337, 2);
}
break;
case 11732:
if (client.objectX == 3034 && client.objectY == 3363) {
client.getPlayerAssistant().movePlayer(3036, 3363, 1);
} else if (client.objectX == 3048 && client.objectY == 3352) {
client.getPlayerAssistant().movePlayer(3049, 3354, 1);
}
break;
case 11733:
if (client.objectX == 3035 && client.objectY == 3363) {
client.getPlayerAssistant().movePlayer(3036, 3362, 0);
} else if (client.objectX == 3049 && client.objectY == 3353) {
client.getPlayerAssistant().movePlayer(3049, 3354, 0);
}
break;
case 11734:
if (client.absY == 3336) {
client.getPlayerAssistant().movePlayer(2984, 3340, 2);
} else if (client.absY == 3380) {
client.getPlayerAssistant().movePlayer(client.absX, 3384, 1);
}
break;
case 11735:
if (client.absY == 3340) {
client.getPlayerAssistant().movePlayer(2984, 3336, 1);
} else if (client.absY == 3384) {
client.getPlayerAssistant().movePlayer(client.absX, 3380, 0);
}
break;
case 11736:
if (client.absY == 3368) {
client.getPlayerAssistant().movePlayer(client.absX, 3372, 1);
} else if (client.absY == 3362) {
client.getPlayerAssistant().movePlayer(client.absX, 3366, 1);
}
break;
case 11737:
if (client.absY == 3366) {
client.getPlayerAssistant().movePlayer(client.absX, 3362, 0);
} else {
client.getPlayerAssistant().movePlayer(client.absX, 3368, 0);
}
break;
case 12266:
if (client.objectX == 3077 && client.objectY == 3493) {
client.getPlayerAssistant().movePlayer(3077, 9893, 0);
client.startAnimation(827);
client.resetWalkingQueue();
client.getPacketSender().sendMessage("You climb down.");
}
break;
case 12265:
if (client.objectX == 3076 && client.objectY == 9893) {
client.getPlayerAssistant().movePlayer(3078, 3493, 0);
client.startAnimation(828);
client.resetWalkingQueue();
client.getPacketSender().sendMessage("You climb up.");
}
break;
}
}
public static void climbUp(Player player) {
if (System.currentTimeMillis() - player.climbDelay < 1200) {
return;
}
switch (player.heightLevel) {
case -1:
player.getPlayerAssistant().movePlayer(player.absX, player.absY, 0);
player.climbDelay = System.currentTimeMillis();
player.getPacketSender().sendMessage("You climb up.");
player.startAnimation(CLIMB_UP);
player.resetWalkingQueue();
player.getPacketSender().closeAllWindows();
break;
case 0:
player.getPlayerAssistant().movePlayer(player.absX, player.absY, 1);
player.climbDelay = System.currentTimeMillis();
player.getPacketSender().sendMessage("You climb up.");
player.startAnimation(CLIMB_UP);
player.resetWalkingQueue();
player.getPacketSender().closeAllWindows();
break;
case 1:
player.getPlayerAssistant().movePlayer(player.absX, player.absY, 2);
player.climbDelay = System.currentTimeMillis();
player.getPacketSender().sendMessage("You climb up.");
player.startAnimation(CLIMB_UP);
player.resetWalkingQueue();
player.getPacketSender().closeAllWindows();
break;
case 2:
player.getPlayerAssistant().movePlayer(player.absX, player.absY, 3);
player.climbDelay = System.currentTimeMillis();
player.getPacketSender().sendMessage("You climb up.");
player.startAnimation(CLIMB_UP);
player.resetWalkingQueue();
player.getPacketSender().closeAllWindows();
break;
default:
if (player.heightLevel > 3) {
climbDown(player);
player.resetWalkingQueue();
}
player.getPacketSender().sendMessage("This object is currently not supported.");
System.out.println("Bug detected with climbing up object " + player.objectId + " objectX " + player.objectX + " objectY " + player.objectY + ".");
break;
}
}
public static void climbDown(Player player) {
if (System.currentTimeMillis() - player.climbDelay < 1200) {
return;
}
if (player.heightLevel > 3) {
player.getPlayerAssistant().movePlayer(player.absX, player.absY, 3);
player.climbDelay = System.currentTimeMillis();
player.getPacketSender().sendMessage("You climb down.");
player.startAnimation(CLIMB_DOWN);
player.resetWalkingQueue();
player.getPacketSender().closeAllWindows();
}
switch (player.heightLevel) {
case 1:
player.getPlayerAssistant().movePlayer(player.absX, player.absY, 0);
player.climbDelay = System.currentTimeMillis();
player.getPacketSender().sendMessage("You climb down.");
player.startAnimation(CLIMB_DOWN);
player.resetWalkingQueue();
player.getPacketSender().closeAllWindows();
break;
case 2:
player.getPlayerAssistant().movePlayer(player.absX, player.absY, 1);
player.climbDelay = System.currentTimeMillis();
player.getPacketSender().sendMessage("You climb down.");
player.startAnimation(CLIMB_DOWN);
player.resetWalkingQueue();
player.getPacketSender().closeAllWindows();
break;
case 3:
player.getPlayerAssistant().movePlayer(player.absX, player.absY, 2);
player.climbDelay = System.currentTimeMillis();
player.getPacketSender().sendMessage("You climb down.");
player.startAnimation(CLIMB_DOWN);
player.resetWalkingQueue();
player.getPacketSender().closeAllWindows();
break;
default:
if (player.heightLevel < 0) {
climbUp(player);
}
player.getPacketSender().sendMessage("This object is currently not supported.");
System.out.println("Bug detected with climbing down object " + player.objectId + " objectX " + player.objectX + " objectY " + player.objectY + ".");
break;
}
}
public static void handleLadder(Player player) {
player.getDialogueHandler().sendOption("Climb Up.", "Climb Down.");
player.dialogueAction = 147;
}
private static void close(Player client, int actionButtonId) {
if (actionButtonId == 9157) {
client.getPacketSender().sendMessage("You climb up.");
client.startAnimation(CLIMB_UP);
client.resetWalkingQueue();
} else if (actionButtonId == 9158) {
client.getPacketSender().sendMessage("You climb down.");
client.startAnimation(827);
client.resetWalkingQueue();
}
client.getPacketSender().closeAllWindows();
client.nextChat = 0;
}
public static void handleLadderButtons(Player client, int actionButtonId) {
if (client.dialogueAction != 147) {
return;
}
switch (actionButtonId) {
case 9157:
if (client.heightLevel == 1) {
client.getPlayerAssistant().movePlayer(client.absX, client.absY, 2);
close(client, actionButtonId);
} else if (client.heightLevel == 2) {
client.getPlayerAssistant().movePlayer(client.absX, client.absY, 3);
close(client, actionButtonId);
}
break;
case 9158:
if (client.heightLevel == 2) {
client.getPlayerAssistant().movePlayer(client.absX, client.absY, 1);
close(client, actionButtonId);
} else if (client.heightLevel == 1) {
client.getPlayerAssistant().movePlayer(client.absX, client.absY, 0);
close(client, actionButtonId);
}
break;
}
}
}