Agility fixes (#224)

* Fixed stuff related to shop trading

> Refactored stuff to facilitate resolving an issue regarding sellnig item to a full shop
> Removed double value message in shop

* Fixed some stuff related to agility

-Removed a useless obstacle in wilderness course that alowed insane xp gains;
-Added some 'flexibility' to some obstacles at agility pyramid;
-Removed useless vars;
-Added proper xp to obstacles;
-Added bonus xp for completing agility pyramid
-Most likely more;

***Animations still missing: Crossing gaps and jumping gaps***

* resolve conflicts

* delete old files
This commit is contained in:
Gptaqbc
2019-12-01 19:03:29 -05:00
committed by Daniel Ginovker
parent 705f624a2b
commit e2cf6d2998
3 changed files with 607 additions and 588 deletions
@@ -39,7 +39,7 @@ public class Agility {
c.isRunning2 = false;
c.playerWalkIndex = id;
c.getPlayerAssistant().requestUpdates(); // this was needed to make the
// agility work
// agility work
}
/**
@@ -51,7 +51,7 @@ public class Agility {
c.getPlayerAction().setAction(false);
c.getPlayerAction().canWalk(true);
c.getPlayerAssistant().requestUpdates(); // this was needed to make the
// agility work
// agility work
c.isRunning2 = true;
}
@@ -135,9 +135,9 @@ public class Agility {
public void destinationReached(int x2, int y2, final int endingEmote) {
if (x2 >= 0 && y2 >= 0 && x2 != y2) {
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (c.disconnected) {
container.stop();
return;
@@ -151,14 +151,14 @@ public class Agility {
container.stop();
}
@Override
public void stop() {
}
public void stop() {
}
}, x2 + y2);
} else if (x2 == y2) {
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (c.disconnected) {
container.stop();
return;
@@ -171,15 +171,15 @@ public class Agility {
c.startAnimation(endingEmote);
container.stop();
}
@Override
public void stop() {
}
@Override
public void stop() {
}
}, x2);
} else if (x2 < 0) {
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (c.disconnected) {
container.stop();
return;
@@ -194,14 +194,14 @@ public class Agility {
container.stop();
}
@Override
public void stop() {
}
public void stop() {
}
}, -x2 + y2);
} else if (y2 < 0) {
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (c.disconnected) {
container.stop();
return;
@@ -216,9 +216,9 @@ public class Agility {
container.stop();
}
@Override
public void stop() {
}
public void stop() {
}
}, x2 - y2);
}
}
@@ -230,53 +230,57 @@ public class Agility {
public double getXp(int objectId) {
switch (objectId) {
case GnomeAgility.TREE_OBJECT:
case GnomeAgility.TREE_BRANCH_OBJECT:
return 5;
case GnomeAgility.LOG_OBJECT:
case GnomeAgility.PIPES1_OBJECT:
case GnomeAgility.PIPES2_OBJECT:
case GnomeAgility.NET2_OBJECT:
case GnomeAgility.NET1_OBJECT:
case GnomeAgility.ROPE_OBJECT:
return 7.5;
case PyramidAgility.PYRAMID_WALL_OBJECT:
case BarbarianAgility.BARBARIAN_NET_OBJECT:
return 8;
case WildernessAgility.WILDERNESS_PIPE_OBJECT:
return 12;
case WildernessAgility.WILDERNESS_SWING_ROPE_OBJECT:
case WildernessAgility.WILDERNESS_STEPPING_STONE_OBJECT:
case WildernessAgility.WILDERNESS_LOG_BALANCE_OBJECT:
return 20;
case WildernessAgility.WILDERNESS_ROCKS_OBJECT:
return 0;
case BarbarianAgility.BARBARIAN_LOG_OBJECT:
case BarbarianAgility.BARBARIAN_WALL_OBJECT:
return 14;
case WerewolfAgility.WEREWOLF_PIPES_OBJECT:
return 15;
case WerewolfAgility.WEREWOLF_SKULL_OBJECT:
return 25;
case WerewolfAgility.WEREWOLF_HURDLE_OBJECT1:
case WerewolfAgility.WEREWOLF_HURDLE_OBJECT2:
case WerewolfAgility.WEREWOLF_HURDLE_OBJECT3:
return 20;
case BarbarianAgility.BARBARIAN_ROPE_SWING_OBJECT:
case BarbarianAgility.BARBARIAN_LEDGE_OBJECT:
return 22;
case WerewolfAgility.WEREWOLF_STEPPING_STONE_OBJECT:
return 50;
case PyramidAgility.PYRAMID_GAP_OBJECT:
case PyramidAgility.PYRAMID_GAP_2:
case PyramidAgility.PYRAMID_GAP_3:
case PyramidAgility.PYRAMID_GAP_4:
case PyramidAgility.PYRAMID_GAP_5:
return 52;
case PyramidAgility.PYRAMID_PLANK_OBJECT:
return 56;
case WerewolfAgility.WEREWOLF_SLING_OBJECT:
return 190;
case GnomeAgility.TREE_OBJECT:
case GnomeAgility.TREE_BRANCH_OBJECT:
return 5;
case GnomeAgility.LOG_OBJECT:
case GnomeAgility.PIPES1_OBJECT:
case GnomeAgility.PIPES2_OBJECT:
case GnomeAgility.NET2_OBJECT:
case GnomeAgility.NET1_OBJECT:
case GnomeAgility.ROPE_OBJECT:
return 7.5;
case PyramidAgility.PYRAMID_WALL_OBJECT:
case BarbarianAgility.BARBARIAN_NET_OBJECT:
return 8;
case WildernessAgility.WILDERNESS_PIPE_OBJECT:
return 12;
case WildernessAgility.WILDERNESS_SWING_ROPE_OBJECT:
case WildernessAgility.WILDERNESS_STEPPING_STONE_OBJECT:
case WildernessAgility.WILDERNESS_LOG_BALANCE_OBJECT:
return 20;
case WildernessAgility.WILDERNESS_ROCKS_OBJECT:
return 0;
case BarbarianAgility.BARBARIAN_LOG_OBJECT:
case BarbarianAgility.BARBARIAN_WALL_OBJECT:
return 14;
case WerewolfAgility.WEREWOLF_PIPES_OBJECT:
return 15;
case WerewolfAgility.WEREWOLF_SKULL_OBJECT:
return 25;
case WerewolfAgility.WEREWOLF_HURDLE_OBJECT1:
case WerewolfAgility.WEREWOLF_HURDLE_OBJECT2:
case WerewolfAgility.WEREWOLF_HURDLE_OBJECT3:
return 20;
case BarbarianAgility.BARBARIAN_ROPE_SWING_OBJECT:
case BarbarianAgility.BARBARIAN_LEDGE_OBJECT:
return 22;
case WerewolfAgility.WEREWOLF_STEPPING_STONE_OBJECT:
return 50;
case PyramidAgility.PYRAMID_GAP:
case PyramidAgility.PYRAMID_GAP_1:
case PyramidAgility.PYRAMID_GAP_2:
return 57;
case PyramidAgility.PYRAMID_JUMP:
return 22;
case PyramidAgility.LEDGE:
case PyramidAgility.LEDGE_2:
case PyramidAgility.LEDGE_3:
return 52;
case PyramidAgility.PYRAMID_PLANK_OBJECT:
return 57;
case WerewolfAgility.WEREWOLF_SLING_OBJECT:
return 190;
}
return -1;
}
@@ -288,49 +292,48 @@ public class Agility {
private int getLevelRequired(int objectId) {
switch (objectId) {
case PyramidAgility.PYRAMID_WALL_OBJECT:
case PyramidAgility.PYRAMID_STAIRCE_OBJECT:
case PyramidAgility.PYRAMID_PLANK_OBJECT:
case PyramidAgility.PYRAMID_GAP_OBJECT:
case PyramidAgility.PYRAMID_GAP_2:
case PyramidAgility.PYRAMID_GAP_3:
case PyramidAgility.PYRAMID_GAP_4:
case PyramidAgility.PYRAMID_GAP_5:
case PyramidAgility.LEDGE:
case PyramidAgility.LEDGE_2:
case PyramidAgility.LEDGE_3:
case PyramidAgility.PYRAMID_ROCKS:
return 30;
case BarbarianAgility.BARBARIAN_ROPE_SWING_OBJECT:
case BarbarianAgility.BARBARIAN_LOG_OBJECT:
case BarbarianAgility.BARBARIAN_NET_OBJECT:
case BarbarianAgility.BARBARIAN_LEDGE_OBJECT:
case BarbarianAgility.BARBARIAN_WALL_OBJECT:
return 35;
case PyramidAgility.PYRAMID_WALL_OBJECT:
case PyramidAgility.PYRAMID_STAIRCE_OBJECT:
case PyramidAgility.PYRAMID_PLANK_OBJECT:
case PyramidAgility.PYRAMID_GAP:
case PyramidAgility.PYRAMID_GAP_1:
case PyramidAgility.PYRAMID_GAP_2:
case PyramidAgility.PYRAMID_JUMP:
case PyramidAgility.LEDGE:
case PyramidAgility.LEDGE_2:
case PyramidAgility.LEDGE_3:
case PyramidAgility.PYRAMID_ROCKS:
return 30;
case BarbarianAgility.BARBARIAN_ROPE_SWING_OBJECT:
case BarbarianAgility.BARBARIAN_LOG_OBJECT:
case BarbarianAgility.BARBARIAN_NET_OBJECT:
case BarbarianAgility.BARBARIAN_LEDGE_OBJECT:
case BarbarianAgility.BARBARIAN_WALL_OBJECT:
return 35;
case ApeAtollAgility.APE_ATOLL_STEPPING_STONES_OBJECT:
case ApeAtollAgility.APE_ATOLL_TROPICAL_TREE_OBJECT:
case ApeAtollAgility.APE_ATOLL_MONKEYBARS_OBJECT:
case ApeAtollAgility.APE_ATOLL_SKULL_SLOPE_OBJECT:
case ApeAtollAgility.APE_ATOLL_SWINGROPE_OBJECT:
case ApeAtollAgility.APE_ATOLL_BIG_TROPICAL_TREE_OBJECT:
return 50;
case ApeAtollAgility.APE_ATOLL_STEPPING_STONES_OBJECT:
case ApeAtollAgility.APE_ATOLL_TROPICAL_TREE_OBJECT:
case ApeAtollAgility.APE_ATOLL_MONKEYBARS_OBJECT:
case ApeAtollAgility.APE_ATOLL_SKULL_SLOPE_OBJECT:
case ApeAtollAgility.APE_ATOLL_SWINGROPE_OBJECT:
case ApeAtollAgility.APE_ATOLL_BIG_TROPICAL_TREE_OBJECT:
return 50;
case WildernessAgility.WILDERNESS_PIPE_OBJECT:
case WildernessAgility.WILDERNESS_SWING_ROPE_OBJECT:
case WildernessAgility.WILDERNESS_STEPPING_STONE_OBJECT:
case WildernessAgility.WILDERNESS_ROCKS_OBJECT:
case WildernessAgility.WILDERNESS_LOG_BALANCE_OBJECT:
return 52;
case WildernessAgility.WILDERNESS_PIPE_OBJECT:
case WildernessAgility.WILDERNESS_SWING_ROPE_OBJECT:
case WildernessAgility.WILDERNESS_STEPPING_STONE_OBJECT:
case WildernessAgility.WILDERNESS_ROCKS_OBJECT:
case WildernessAgility.WILDERNESS_LOG_BALANCE_OBJECT:
return 52;
case WerewolfAgility.WEREWOLF_STEPPING_STONE_OBJECT:
case WerewolfAgility.WEREWOLF_HURDLE_OBJECT1:
case WerewolfAgility.WEREWOLF_HURDLE_OBJECT2:
case WerewolfAgility.WEREWOLF_HURDLE_OBJECT3:
case WerewolfAgility.WEREWOLF_PIPES_OBJECT:
case WerewolfAgility.WEREWOLF_SKULL_OBJECT:
case WerewolfAgility.WEREWOLF_SLING_OBJECT:
return 60;
case WerewolfAgility.WEREWOLF_STEPPING_STONE_OBJECT:
case WerewolfAgility.WEREWOLF_HURDLE_OBJECT1:
case WerewolfAgility.WEREWOLF_HURDLE_OBJECT2:
case WerewolfAgility.WEREWOLF_HURDLE_OBJECT3:
case WerewolfAgility.WEREWOLF_PIPES_OBJECT:
case WerewolfAgility.WEREWOLF_SKULL_OBJECT:
case WerewolfAgility.WEREWOLF_SLING_OBJECT:
return 60;
}
return -1;
}
@@ -342,54 +345,54 @@ public class Agility {
public int getAnimation(int objectId) {
switch (objectId) {
case GnomeAgility.LOG_OBJECT:
case WildernessAgility.WILDERNESS_LOG_BALANCE_OBJECT:
case BarbarianAgility.BARBARIAN_LOG_OBJECT:
case GnomeAgility.ROPE_OBJECT:
case 2332:
return LOG_EMOTE;
case 154:
case 4084:
case 9330:
case 9228:
case 5100:
case WildernessAgility.WILDERNESS_PIPE_OBJECT:
case WerewolfAgility.WEREWOLF_PIPES_OBJECT:
return PIPES_EMOTE;
case WildernessAgility.WILDERNESS_SWING_ROPE_OBJECT:
case BarbarianAgility.BARBARIAN_ROPE_SWING_OBJECT:
case WerewolfAgility.WEREWOLF_STEPPING_STONE_OBJECT:
return 3067;
case WildernessAgility.WILDERNESS_STEPPING_STONE_OBJECT:
return 1604; // 2588
case WildernessAgility.WILDERNESS_ROCKS_OBJECT:
case WerewolfAgility.WEREWOLF_SKULL_OBJECT:
case PyramidAgility.PYRAMID_ROCKS:
return 1148;
case BarbarianAgility.BARBARIAN_LEDGE_OBJECT:
case PyramidAgility.LEDGE:
case PyramidAgility.LEDGE_2:
case PyramidAgility.LEDGE_3:
return 756;
case BarbarianAgility.BARBARIAN_WALL_OBJECT:
case PyramidAgility.PYRAMID_WALL_OBJECT:
return WALL_EMOTE;
case ApeAtollAgility.APE_ATOLL_STEPPING_STONES_OBJECT:
return 3480;
case ApeAtollAgility.APE_ATOLL_MONKEYBARS_OBJECT:
return 3483;
case ApeAtollAgility.APE_ATOLL_SKULL_SLOPE_OBJECT:
return 3485;
case ApeAtollAgility.APE_ATOLL_BIG_TROPICAL_TREE_OBJECT:
return 3494;
case ApeAtollAgility.APE_ATOLL_SWINGROPE_OBJECT:
return 3482;
case WerewolfAgility.WEREWOLF_SLING_OBJECT:
return 744;
case WerewolfAgility.WEREWOLF_HURDLE_OBJECT1:
case WerewolfAgility.WEREWOLF_HURDLE_OBJECT2:
case WerewolfAgility.WEREWOLF_HURDLE_OBJECT3:
return 2750;
case GnomeAgility.LOG_OBJECT:
case WildernessAgility.WILDERNESS_LOG_BALANCE_OBJECT:
case BarbarianAgility.BARBARIAN_LOG_OBJECT:
case GnomeAgility.ROPE_OBJECT:
case 2332:
return LOG_EMOTE;
case 154:
case 4084:
case 9330:
case 9228:
case 5100:
case WildernessAgility.WILDERNESS_PIPE_OBJECT:
case WerewolfAgility.WEREWOLF_PIPES_OBJECT:
return PIPES_EMOTE;
case WildernessAgility.WILDERNESS_SWING_ROPE_OBJECT:
case BarbarianAgility.BARBARIAN_ROPE_SWING_OBJECT:
case WerewolfAgility.WEREWOLF_STEPPING_STONE_OBJECT:
return 3067;
case WildernessAgility.WILDERNESS_STEPPING_STONE_OBJECT:
return 1604; // 2588
case WildernessAgility.WILDERNESS_ROCKS_OBJECT:
case WerewolfAgility.WEREWOLF_SKULL_OBJECT:
case PyramidAgility.PYRAMID_ROCKS:
return 1148;
case BarbarianAgility.BARBARIAN_LEDGE_OBJECT:
case PyramidAgility.LEDGE:
case PyramidAgility.LEDGE_2:
case PyramidAgility.LEDGE_3:
return 756;
case BarbarianAgility.BARBARIAN_WALL_OBJECT:
case PyramidAgility.PYRAMID_WALL_OBJECT:
return WALL_EMOTE;
case ApeAtollAgility.APE_ATOLL_STEPPING_STONES_OBJECT:
return 3480;
case ApeAtollAgility.APE_ATOLL_MONKEYBARS_OBJECT:
return 3483;
case ApeAtollAgility.APE_ATOLL_SKULL_SLOPE_OBJECT:
return 3485;
case ApeAtollAgility.APE_ATOLL_BIG_TROPICAL_TREE_OBJECT:
return 3494;
case ApeAtollAgility.APE_ATOLL_SWINGROPE_OBJECT:
return 3482;
case WerewolfAgility.WEREWOLF_SLING_OBJECT:
return 744;
case WerewolfAgility.WEREWOLF_HURDLE_OBJECT1:
case WerewolfAgility.WEREWOLF_HURDLE_OBJECT2:
case WerewolfAgility.WEREWOLF_HURDLE_OBJECT3:
return 2750;
}
return -1;
}
@@ -405,9 +408,9 @@ public class Agility {
c.startAnimation(CLIMB_UP_MONKEY_EMOTE);
c.getPlayerAction().setAction(true);
c.getPlayerAction().canWalk(false);
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (c.disconnected) {
container.stop();
return;
@@ -418,9 +421,9 @@ public class Agility {
container.stop();
}
@Override
public void stop() {
}
public void stop() {
}
}, 2);
}
@@ -433,9 +436,9 @@ public class Agility {
c.startAnimation(CLIMB_UP_EMOTE);
c.getPlayerAction().setAction(true);
c.getPlayerAction().canWalk(false);
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (c.disconnected) {
stop();
return;
@@ -446,9 +449,9 @@ public class Agility {
container.stop();
}
@Override
public void stop() {
}
public void stop() {
}
}, 1);
}
@@ -461,9 +464,9 @@ public class Agility {
c.startAnimation(CLIMB_DOWN_EMOTE);
c.getPlayerAction().setAction(true);
c.getPlayerAction().canWalk(false);
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (c.disconnected) {
stop();
return;
@@ -474,9 +477,9 @@ public class Agility {
container.stop();
}
@Override
public void stop() {
}
public void stop() {
}
}, 1);
}
@@ -15,344 +15,348 @@ public class PyramidAgility {
public static final int PYRAMID_STAIRCE_OBJECT = 10857,
PYRAMID_WALL_OBJECT = 10865, PYRAMID_PLANK_OBJECT = 10868,
PYRAMID_GAP_OBJECT = 10863, PYRAMID_GAP_2 = 10885,
PYRAMID_GAP_3 = 10859, PYRAMID_GAP_4 = 10883,
PYRAMID_GAP_5 = 10862, LEDGE = 10860, LEDGE_2 = 10886,
LEDGE_3 = 10888, PYRAMID_ROCKS = 10852;
PYRAMID_GAP = 10884,PYRAMID_GAP_1 = 10882 ,PYRAMID_GAP_2 = 10861,
PYRAMID_JUMP = 10859, LEDGE = 10860, LEDGE_2 = 10886,
LEDGE_3 = 10888, PYRAMID_ROCKS = 10852; // pyramid
// course
// objects
public boolean pyramidCourse(int objectId) {
switch (objectId) {
case PYRAMID_STAIRCE_OBJECT:
if (c.getAgility().checkLevel(objectId)) {
return false;
}
if (c.getAgility().hotSpot(3357, 2832)
|| c.getAgility().hotSpot(3356, 2832)
|| c.getAgility().hotSpot(3355, 2830)
|| c.getAgility().hotSpot(3359, 2834)
|| c.getAgility().hotSpot(3358, 2834)
|| c.getAgility().hotSpot(3361, 2836)
|| c.getAgility().hotSpot(3360, 2836)) {
if (c.heightLevel == 0) {
c.getAgility().climbUp(c.getX(), c.getY() + 3, 1);
} else if (c.heightLevel == 1) {
c.getAgility().climbUp(c.getX(), c.getY() + 3, 2);
} else if (c.heightLevel == 2) {
c.getAgility().climbUp(c.getX(), c.getY() + 3, 3);
} else {
c.getAgility().climbUp(c.getX(), c.getY() - 8, 0);
c.getPacketSender()
.sendMessage(
"Congratulations you completed the pyramid course!");
case PYRAMID_STAIRCE_OBJECT:
if (c.getAgility().checkLevel(objectId)) {
return false;
}
}
return true;
if (c.getAgility().hotSpot(3357, 2832)
|| c.getAgility().hotSpot(3356, 2832)
|| c.getAgility().hotSpot(3354, 2830)
|| c.getAgility().hotSpot(3355, 2830)
|| c.getAgility().hotSpot(3359, 2834)
|| c.getAgility().hotSpot(3358, 2834)
|| c.getAgility().hotSpot(3361, 2836)
|| c.getAgility().hotSpot(3360, 2836)) {
if (c.heightLevel == 0) {
c.getAgility().climbUp(c.getX(), c.getY() + 3, 1);
} else if (c.heightLevel == 1) {
c.getAgility().climbUp(c.getX(), c.getY() + 3, 2);
} else if (c.heightLevel == 2) {
c.getAgility().climbUp(c.getX(), c.getY() + 3, 3);
} else {
c.getAgility().climbUp(c.getX() + 3, c.getY() - 6, 0);
c.getAgility().agilityProgress[5] = true;
c.getAgility().lapBonus = 30 + c.playerLevel[c.playerAgility] * 8;
c.getAgility().lapFinished();
c.getPacketSender()
.sendMessage(
"Congratulations you completed the pyramid course!");
}
}
return true;
case PYRAMID_ROCKS:
if (c.getAgility().checkLevel(objectId)) {
return false;
}
if (c.absX == 3349) {
c.getAgility().walk(-6, 0,
c.getAgility().getAnimation(objectId), -1);
c.getPacketSender().sendMessage(
"You leave the agility pyramid");
} else if (c.absX == 3343) {
c.getAgility()
.walk(6, 0, c.getAgility().getAnimation(3043), -1);
c.getPacketSender().sendMessage(
"You enter the agility pyramid");
}
return true;
case PYRAMID_ROCKS:
if (c.getAgility().checkLevel(objectId)) {
return false;
}
if (c.absX == 3349) {
c.getAgility().walk(-6, 0,
c.getAgility().getAnimation(objectId), -1);
c.getPacketSender().sendMessage(
"You leave the agility pyramid.");
} else if (c.absX == 3343) {
//Problem: Animation isn't working properly. Solution: Replaced it by forced move. Looks smooth.
//c.getAgility().walk(6, 0, c.getAgility().getAnimation(1603), -1);
c.getPlayerAssistant().movePlayer(3349, c.absY, 0);
c.getPacketSender().sendMessage(
"You enter the agility pyramid.");
}
return true;
case LEDGE:
case LEDGE_2:
case LEDGE_3:
if (c.getAgility().checkLevel(objectId)) {
return false;
}
if (c.getAgility().hotSpot(3363, 2851)) {
c.getAgility().walk(5, 0,
c.getAgility().getAnimation(objectId), -1);
} else if (c.getAgility().hotSpot(3364, 2832)) {
c.getAgility().walk(-5, 0,
c.getAgility().getAnimation(objectId), -1);
} else if (c.getAgility().hotSpot(3372, 2841)) {
c.getAgility().walk(0, -5,
c.getAgility().getAnimation(objectId), -1);
} else if (c.getAgility().hotSpot(3359, 2842)) {
c.getAgility().walk(0, 5,
c.getAgility().getAnimation(objectId), -1);
}
return true;
case LEDGE:
case LEDGE_2:
case LEDGE_3:
if (c.getAgility().checkLevel(objectId)) {
return false;
}
if (c.getAgility().hotSpot(3363, 2851)) {
c.getAgility().walk(5, 0,
c.getAgility().getAnimation(objectId), -1);
} else if (c.getAgility().hotSpot(3364, 2832)) {
c.getAgility().walk(-5, 0,
c.getAgility().getAnimation(objectId), -1);
} else if (c.getAgility().hotSpot(3372, 2841)) {
c.getAgility().walk(0, -5,
c.getAgility().getAnimation(objectId), -1);
} else if (c.getAgility().hotSpot(3359, 2842)) {
c.getAgility().walk(0, 5,
c.getAgility().getAnimation(objectId), -1);
}
c.getPlayerAssistant().addSkillXP(c.getAgility().getXp(objectId), c.playerAgility);
return true;
case PyramidAgility.PYRAMID_WALL_OBJECT:
if (c.getAgility().checkLevel(objectId)) {
return false;
}
if (c.getAgility().hotSpot(3354, 2848)
|| c.getAgility().hotSpot(3355, 2848)) {
c.getAgility().walk(0, 2,
c.getAgility().getAnimation(objectId), -1);
c.getPlayerAssistant().addSkillXP(
c.getAgility().getXp(objectId), c.playerAgility);
}
if (c.getAgility().hotSpot(3371, 2834)
|| c.getAgility().hotSpot(3371, 2833)) {
c.getAgility().walk(-2, 0,
c.getAgility().getAnimation(objectId), -1);
c.getPlayerAssistant().addSkillXP(
c.getAgility().getXp(objectId), c.playerAgility);
}
if (c.getAgility().hotSpot(3359, 2838)
|| c.getAgility().hotSpot(3358, 2838)) {
c.getAgility().walk(0, 2,
c.getAgility().getAnimation(objectId), -1);
c.getPlayerAssistant().addSkillXP(
c.getAgility().getXp(objectId), c.playerAgility);
}
return true;
case PyramidAgility.PYRAMID_WALL_OBJECT:
if (c.getAgility().checkLevel(objectId)) {
return false;
}
if (c.getAgility().hotSpot(3354, 2848)
|| c.getAgility().hotSpot(3355, 2848)) {
c.getAgility().walk(0, 2,
c.getAgility().getAnimation(objectId), -1);
c.getPlayerAssistant().addSkillXP(
c.getAgility().getXp(objectId), c.playerAgility);
}
if (c.getAgility().hotSpot(3371, 2834)
|| c.getAgility().hotSpot(3371, 2833)) {
c.getAgility().walk(-2, 0,
c.getAgility().getAnimation(objectId), -1);
c.getPlayerAssistant().addSkillXP(
c.getAgility().getXp(objectId), c.playerAgility);
}
if (c.getAgility().hotSpot(3359, 2838)
|| c.getAgility().hotSpot(3358, 2838)) {
c.getAgility().walk(0, 2,
c.getAgility().getAnimation(objectId), -1);
c.getPlayerAssistant().addSkillXP(
c.getAgility().getXp(objectId), c.playerAgility);
}
return true;
case PYRAMID_GAP_OBJECT:
case PYRAMID_GAP_2:
case PYRAMID_GAP_3:
case PYRAMID_GAP_4:
case PYRAMID_GAP_5:
if (c.getAgility().checkLevel(objectId)) {
return false;
}
if (c.getAgility().hotSpot(3363, 2851)) {
c.getAgility().walk(1, 0,
c.getAgility().getAnimation(objectId), -1);
c.getPlayerAssistant().addSkillXP(
c.getAgility().getXp(objectId), c.playerAgility);
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (c.disconnected) {
case PYRAMID_GAP:
case PYRAMID_GAP_1:
case PYRAMID_GAP_2:
case PYRAMID_JUMP:
if (c.getAgility().checkLevel(objectId)) {
return false;
}
if (c.getAgility().hotSpot(3363, 2851)) {
c.getAgility().walk(1, 0,
c.getAgility().getAnimation(objectId), -1);
c.getPlayerAssistant().addSkillXP(
c.getAgility().getXp(objectId), c.playerAgility);
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (c.disconnected) {
container.stop();
return;
}
c.getPlayerAssistant().movePlayer(3368, 2851, 1);
container.stop();
return;
}
c.getPlayerAssistant().movePlayer(3368, 2851, 1);
container.stop();
}
@Override
@Override
public void stop() {
}
}, 1);
}
if (c.getAgility().hotSpot(3372, 2832)
|| c.getAgility().hotSpot(3372, 2831)) {
c.getAgility().walk(-1, 0,
c.getAgility().getAnimation(objectId), -1);
c.getPlayerAssistant().addSkillXP(
c.getAgility().getXp(objectId), c.playerAgility);
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (c.disconnected) {
container.stop();
return;
}
c.getPlayerAssistant().movePlayer(3367, c.absY, 1);// was
// 2832
container.stop();
}
@Override
public void stop() {
}
}, 1);
}
if (c.getAgility().hotSpot(3364, 2832)) {
c.getAgility().walk(-1, 0,
c.getAgility().getAnimation(objectId), -1);
c.getPlayerAssistant().addSkillXP(
c.getAgility().getXp(objectId), c.playerAgility);
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (c.disconnected) {
container.stop();
return;
}
c.getPlayerAssistant().movePlayer(3359, 2832, 1);
container.stop();
}
@Override
public void stop() {
}
}, 1);
}
if (c.getAgility().hotSpot(3357, 2836)) {
c.getAgility().walk(0, 5,
c.getAgility().getAnimation(objectId), -1);
c.getPlayerAssistant().addSkillXP(
c.getAgility().getXp(objectId), c.playerAgility);
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (c.disconnected) {
container.stop();
return;
}
c.getPlayerAssistant().movePlayer(3357, 2841, 2);
container.stop();
}
@Override
public void stop() {
}
}, 1);
}
if (c.getAgility().hotSpot(3357, 2846)) {
c.getAgility().walk(0, 3,
c.getAgility().getAnimation(objectId), -1);
c.getPlayerAssistant().addSkillXP(
c.getAgility().getXp(objectId), c.playerAgility);
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (c.disconnected) {
container.stop();
return;
}
c.getPlayerAssistant().movePlayer(3357, 2849, 2);
container.stop();
}
@Override
public void stop() {
}
}, 1);
}
if (c.getAgility().hotSpot(3359, 2849)
|| c.getAgility().hotSpot(3359, 2850)) {
c.getAgility().walk(5, 0,
c.getAgility().getAnimation(objectId), -1);
c.getPlayerAssistant().addSkillXP(
c.getAgility().getXp(objectId), c.playerAgility);
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (c.disconnected) {
container.stop();
return;
}
c.getPlayerAssistant().movePlayer(3364, c.absY, 2);
container.stop();
}
@Override
public void stop() {
}
}, 1);
}
if (c.getAgility().hotSpot(3366, 2834)) {
c.getAgility().walk(-1, 0,
c.getAgility().getAnimation(objectId), -1);
c.getPlayerAssistant().addSkillXP(
c.getAgility().getXp(objectId), c.playerAgility);
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (c.disconnected) {
container.stop();
return;
}
c.getPlayerAssistant().movePlayer(3363, 2834, 2);
container.stop();
}
@Override
public void stop() {
}
}, 1);
}
if (c.getAgility().hotSpot(3359, 2842)) {
c.getAgility().walk(0, 1,
c.getAgility().getAnimation(objectId), -1);
c.getPlayerAssistant().addSkillXP(
c.getAgility().getXp(objectId), c.playerAgility);
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (c.disconnected) {
container.stop();
return;
}
c.getPlayerAssistant().movePlayer(3359, 2847, 3);
container.stop();
}
@Override
public void stop() {
}
}, 1);
}
if (c.getAgility().hotSpot(3370, 2843)) {
c.getAgility().walk(0, -1,
c.getAgility().getAnimation(objectId), -1);
c.getPlayerAssistant().addSkillXP(
c.getAgility().getXp(objectId), c.playerAgility);
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (c.disconnected) {
container.stop();
return;
}
c.getPlayerAssistant().movePlayer(3370, 2838, 3);
container.stop();
}
@Override
public void stop() {
}
}, 1);
}
if (c.getAgility().hotSpot(3372, 2841)) {
c.getAgility().walk(0, -1,
c.getAgility().getAnimation(objectId), -1);
c.getPlayerAssistant().addSkillXP(
c.getAgility().getXp(objectId), c.playerAgility);
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (c.disconnected) {
container.stop();
return;
}
c.getPlayerAssistant().movePlayer(3372, 2836, 2);
container.stop();
}
@Override
public void stop() {
}
}, 1);
}
return true;
case PYRAMID_PLANK_OBJECT:
if (c.getAgility().checkLevel(objectId)) {
return false;
}
if (c.getAgility().hotSpot(3375, 2845)) {
c.getAgility().walk(0, -6,
c.getAgility().getAnimation(objectId), -1);
c.getPlayerAssistant().addSkillXP(
c.getAgility().getXp(objectId), c.playerAgility);
}
if (c.getAgility().hotSpot(3370, 2835)) {
c.getAgility().walk(-6, 0,
c.getAgility().getAnimation(objectId), -1);
c.getPlayerAssistant().addSkillXP(
c.getAgility().getXp(objectId), c.playerAgility);
}
return true;
}
}, 1);
}
if (c.getAgility().hotSpot(3372, 2832) || c.getAgility().hotSpot(3372, 2831)) {
c.getAgility().walk(-1, 0,
c.getAgility().getAnimation(1603), -1);
c.getPlayerAssistant().addSkillXP(c.getAgility().getXp(objectId), c.playerAgility);
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (c.disconnected) {
container.stop();
return;
}
c.getPlayerAssistant().movePlayer(3367, c.absY, 1);
container.stop();
}
@Override
public void stop() {
}
}, 1);
}
if (c.getAgility().hotSpot(3364, 2832)) {
c.getAgility().walk(-1, 0,
c.getAgility().getAnimation(objectId), -1);
c.getPlayerAssistant().addSkillXP(
c.getAgility().getXp(objectId), c.playerAgility);
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (c.disconnected) {
container.stop();
return;
}
c.getPlayerAssistant().movePlayer(3359, 2832, 1);
container.stop();
}
@Override
public void stop() {
}
}, 1);
}
if (c.getAgility().hotSpot(3357, 2836) || c.getAgility().hotSpot(3356, 2836)) {
c.getAgility().walk(0, 5,
c.getAgility().getAnimation(objectId), -1);
c.getPlayerAssistant().addSkillXP(
c.getAgility().getXp(objectId), c.playerAgility);
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (c.disconnected) {
container.stop();
return;
}
c.getPlayerAssistant().movePlayer(c.absX, 2841, 2);
container.stop();
}
@Override
public void stop() {
}
}, 1);
}
if (c.getAgility().hotSpot(3357, 2846) || c.getAgility().hotSpot(3356, 2846)) {
c.getAgility().walk(0, 3,
c.getAgility().getAnimation(objectId), -1);
c.getPlayerAssistant().addSkillXP(
c.getAgility().getXp(objectId), c.playerAgility);
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (c.disconnected) {
container.stop();
return;
}
c.getPlayerAssistant().movePlayer(c.absX, 2849, 2);
container.stop();
}
@Override
public void stop() {
}
}, 1);
}
if (c.getAgility().hotSpot(3359, 2849)
|| c.getAgility().hotSpot(3359, 2850)) {
c.getAgility().walk(5, 0,
c.getAgility().getAnimation(objectId), -1);
c.getPlayerAssistant().addSkillXP(
c.getAgility().getXp(objectId), c.playerAgility);
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (c.disconnected) {
container.stop();
return;
}
c.getPlayerAssistant().movePlayer(3364, c.absY, 2);
container.stop();
}
@Override
public void stop() {
}
}, 1);
}
if (c.getAgility().hotSpot(3366, 2834) || c.getAgility().hotSpot(3366, 2833)) {
c.getAgility().walk(0, 0,
c.getAgility().getAnimation(10859), -1);
c.getPlayerAssistant().addSkillXP(
c.getAgility().getXp(objectId), c.playerAgility);
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (c.disconnected) {
container.stop();
return;
}
c.getPlayerAssistant().movePlayer(3363, c.absY, 2);
container.stop();
}
@Override
public void stop() {
}
}, 1);
}
if (c.getAgility().hotSpot(3359, 2842)) {
c.getAgility().walk(0, 1,
c.getAgility().getAnimation(objectId), -1);
c.getPlayerAssistant().addSkillXP(
c.getAgility().getXp(objectId), c.playerAgility);
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (c.disconnected) {
container.stop();
return;
}
c.getPlayerAssistant().movePlayer(3359, 2847, 3);
container.stop();
}
@Override
public void stop() {
}
}, 1);
}
if (c.getAgility().hotSpot(3370, 2843) || c.getAgility().hotSpot(3371, 2843)) {
c.getAgility().walk(0, -1,
c.getAgility().getAnimation(objectId), -1);
c.getPlayerAssistant().addSkillXP(
c.getAgility().getXp(objectId), c.playerAgility);
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (c.disconnected) {
container.stop();
return;
}
c.getPlayerAssistant().movePlayer(c.absX, 2840, 3);
container.stop();
}
@Override
public void stop() {
}
}, 1);
}
if (c.getAgility().hotSpot(3372, 2841)) {
c.getAgility().walk(0, -1,
c.getAgility().getAnimation(objectId), -1);
c.getPlayerAssistant().addSkillXP(
c.getAgility().getXp(objectId), c.playerAgility);
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (c.disconnected) {
container.stop();
return;
}
c.getPlayerAssistant().movePlayer(3372, 2836, 2);
container.stop();
}
@Override
public void stop() {
}
}, 1);
}
return true;
case PYRAMID_PLANK_OBJECT:
if (c.getAgility().checkLevel(objectId)) {
return false;
}
if (c.getAgility().hotSpot(3375, 2845) || c.getAgility().hotSpot(3375, 2846)) {
c.getAgility().walk(0, -6,
c.getAgility().getAnimation(2295), -1);
c.getPlayerAssistant().addSkillXP(
c.getAgility().getXp(objectId), c.playerAgility);
}
if (c.getAgility().hotSpot(3370, 2835) || c.getAgility().hotSpot(3371, 2835)) {
c.getAgility().walk(-6, 0,
c.getAgility().getAnimation(2295), -1);
c.getPlayerAssistant().addSkillXP(
c.getAgility().getXp(objectId), c.playerAgility);
}
return true;
}
return false;
}
@@ -21,97 +21,109 @@ public class WildernessAgility {
public boolean wildernessCourse(final int objectId) {
switch (objectId) {
case WILDERNESS_PIPE_OBJECT: // pipe
if (c.getAgility().checkLevel(objectId)) {
return false;
}
if (c.getAgility().hotSpot(3004, 3937)) {
c.getAgility().walk(0, 13,
c.getAgility().getAnimation(objectId), 748);
} else if (c.absX == 3004 && c.absY > 3937 && c.absY < 3950) {
c.getPlayerAssistant().movePlayer(3004, 3950, 0);
}
c.getPlayerAssistant().addSkillXP(c.getAgility().getXp(objectId), c.playerAgility);
c.getAgility().resetAgilityProgress();
c.getAgility().agilityProgress[0] = true;
return true;
case WILDERNESS_SWING_ROPE_OBJECT:
if (c.getAgility().checkLevel(objectId)) {
return false;
}
if (c.getAgility().hotSpot(3005, 3953)) {
c.getAgility().walk(0, 1,
c.getAgility().getAnimation(objectId), -1);
if (c.getAgility().agilityProgress[0] == true) {
c.getAgility().agilityProgress[1] = true;
case WILDERNESS_PIPE_OBJECT: // pipe
if (c.getAgility().checkLevel(objectId)) {
return false;
}
if ((c.absX >= 3003 && c.absX <= 3006) && (c.absY >= 3945 && c.absY <= 3954)) {
return false;
}
if (c.getAgility().hotSpot(3004, 3937)) {
c.getAgility().walk(0, 13,
c.getAgility().getAnimation(objectId), -1);
} else if ((c.absX >= 3003 && c.absX <= 3005) && (c.absY > 3937 && c.absY < 3950)) {
c.getPlayerAssistant().movePlayer(3004, 3950, 0);
}
c.getPlayerAssistant().addSkillXP(c.getAgility().getXp(objectId), c.playerAgility);
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (c.disconnected) {
container.stop();
return;
}
c.getPlayerAssistant().movePlayer(3005, 3958, 0);
container.stop();
c.getAgility().resetAgilityProgress();
c.getAgility().agilityProgress[0] = true;
return true;
case WILDERNESS_SWING_ROPE_OBJECT:
if (c.getAgility().checkLevel(objectId)) {
return false;
}
if (c.getAgility().hotSpot(3005, 3953) || ((c.absX >= 3004 && c.absX <= 3006) && (c.absY > 3950 && c.absY < 3953))) {
c.getAgility().walk(0, 1,
c.getAgility().getAnimation(objectId), -1);
if (c.getAgility().agilityProgress[0] == true) {
c.getAgility().agilityProgress[1] = true;
}
@Override
c.getPlayerAssistant().addSkillXP(c.getAgility().getXp(objectId), c.playerAgility);
CycleEventHandler.getSingleton().addEvent(c, new CycleEvent() {
@Override
public void execute(CycleEventContainer container) {
if (c.disconnected) {
container.stop();
return;
}
c.getPlayerAssistant().movePlayer(3005, 3958, 0);
container.stop();
}
@Override
public void stop() {
// TODO Auto-generated method stub
}
}, 1);
}
return true;
case WILDERNESS_STEPPING_STONE_OBJECT:
if (c.getAgility().checkLevel(objectId)) {
return false;
}
if (c.getAgility().hotSpot(3002, 3960)) {
c.getAgility().walk(-6, 0,
c.getAgility().getAnimation(objectId), -1);
} else if (c.absX > 2996 && c.absX < 3002 && c.absY == 3960) {
c.getPlayerAssistant().movePlayer(2996, 3960, 0);
}
c.getPlayerAssistant().addSkillXP(c.getAgility().getXp(objectId), c.playerAgility);
c.getAgility().steppingStone = 6;
c.getAgility().steppingStoneTimer = 2;
c.getAgility().steppingStone--;
if (c.getAgility().agilityProgress[2] == true) {
c.getAgility().agilityProgress[3] = true;
}
return true;
case WILDERNESS_LOG_BALANCE_OBJECT:
if (c.getAgility().checkLevel(objectId)) {
return false;
}
if (c.getAgility().hotSpot(3002, 3945)) {
c.getAgility().walk(-8, 0,
c.getAgility().getAnimation(objectId), -1);
if (c.getAgility().agilityProgress[3] == true) {
c.getAgility().agilityProgress[5] = true;
}
}, 1);
}
return true;
case WILDERNESS_STEPPING_STONE_OBJECT:
if (c.getAgility().checkLevel(objectId)) {
return false;
}
if (c.getAgility().hotSpot(3002, 3960)) {
c.getAgility().walk(-6, 0,
c.getAgility().getAnimation(objectId), -1);
} else if (c.absX > 2996 && c.absX < 3002 && c.absY == 3960) {
c.getPlayerAssistant().movePlayer(2996, 3960, 0);
}
c.getPlayerAssistant().addSkillXP(c.getAgility().getXp(objectId), c.playerAgility);
} else if (c.absX > 2994 && c.absX < 3002 && c.absY == 3945) {
c.getPlayerAssistant().movePlayer(2994, 3945, 0);
}
return true;
c.getAgility().steppingStone = 6;
c.getAgility().steppingStoneTimer = 2;
c.getAgility().steppingStone--;
if (c.getAgility().agilityProgress[2] == true) {
c.getAgility().agilityProgress[3] = true;
}
return true;
case WILDERNESS_ROCKS_OBJECT:
if (c.getAgility().checkLevel(objectId)) {
return false;
}
c.getAgility().walk(0, -4, c.getAgility().getAnimation(objectId), -1);
if (c.getAgility().agilityProgress[5] == true) {
c.getPlayerAssistant().addSkillXP(c.getAgility().getXp(objectId), c.playerAgility);
c.getAgility().lapBonus = 2400 / 30;
c.getAgility().lapFinished();
} else {
c.getPlayerAssistant().addSkillXP(c.getAgility().getXp(objectId), c.playerAgility);
}
return true;
case WILDERNESS_LOG_BALANCE_OBJECT:
if (c.getAgility().checkLevel(objectId)) {
return false;
}
if (c.getAgility().hotSpot(3002, 3945) || ((c.absX >= 3001 && c.absX <= 3002) && (c.absY >= 3944 && c.absY <= 3946))) {
if (c.absY != 3945)
{
c.getPlayerAssistant().movePlayer(2994, ((3945 - c.absY) + c.absY), 0);
}
else
{
c.getAgility().walk(-8, 0,
c.getAgility().getAnimation(objectId), -1);
}
if (c.getAgility().agilityProgress[3] == true) {
c.getAgility().agilityProgress[5] = true;
}
c.getPlayerAssistant().addSkillXP(c.getAgility().getXp(objectId), c.playerAgility);
} else if (c.absX > 2994 && c.absX < 3002 && c.absY == 3945) {
c.getPlayerAssistant().movePlayer(2994, 3945, 0);
}
return true;
case WILDERNESS_ROCKS_OBJECT:
if (c.getAgility().checkLevel(objectId)) {
return false;
}
c.getAgility().walk(0, -4, c.getAgility().getAnimation(objectId), -1);
if (c.getAgility().agilityProgress[5] == true) {
c.getPlayerAssistant().addSkillXP(c.getAgility().getXp(objectId), c.playerAgility);
c.getAgility().lapBonus = 2400 / 30;
c.getAgility().lapFinished();
} else {
c.getPlayerAssistant().addSkillXP(c.getAgility().getXp(objectId), c.playerAgility);
}
return true;
}
return false;
}