mirror of
https://github.com/2006-Scape/2006Scape.git
synced 2026-10-01 02:17:17 +00:00
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:
@@ -267,14 +267,18 @@ public class Agility {
|
||||
return 22;
|
||||
case WerewolfAgility.WEREWOLF_STEPPING_STONE_OBJECT:
|
||||
return 50;
|
||||
case PyramidAgility.PYRAMID_GAP_OBJECT:
|
||||
case PyramidAgility.PYRAMID_GAP:
|
||||
case PyramidAgility.PYRAMID_GAP_1:
|
||||
case PyramidAgility.PYRAMID_GAP_2:
|
||||
case PyramidAgility.PYRAMID_GAP_3:
|
||||
case PyramidAgility.PYRAMID_GAP_4:
|
||||
case PyramidAgility.PYRAMID_GAP_5:
|
||||
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 56;
|
||||
return 57;
|
||||
case WerewolfAgility.WEREWOLF_SLING_OBJECT:
|
||||
return 190;
|
||||
}
|
||||
@@ -291,11 +295,10 @@ public class Agility {
|
||||
case PyramidAgility.PYRAMID_WALL_OBJECT:
|
||||
case PyramidAgility.PYRAMID_STAIRCE_OBJECT:
|
||||
case PyramidAgility.PYRAMID_PLANK_OBJECT:
|
||||
case PyramidAgility.PYRAMID_GAP_OBJECT:
|
||||
case PyramidAgility.PYRAMID_GAP:
|
||||
case PyramidAgility.PYRAMID_GAP_1:
|
||||
case PyramidAgility.PYRAMID_GAP_2:
|
||||
case PyramidAgility.PYRAMID_GAP_3:
|
||||
case PyramidAgility.PYRAMID_GAP_4:
|
||||
case PyramidAgility.PYRAMID_GAP_5:
|
||||
case PyramidAgility.PYRAMID_JUMP:
|
||||
case PyramidAgility.LEDGE:
|
||||
case PyramidAgility.LEDGE_2:
|
||||
case PyramidAgility.LEDGE_3:
|
||||
|
||||
+38
-34
@@ -15,10 +15,11 @@ 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) {
|
||||
@@ -28,6 +29,7 @@ public class PyramidAgility {
|
||||
}
|
||||
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)
|
||||
@@ -40,7 +42,10 @@ public class PyramidAgility {
|
||||
} 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.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!");
|
||||
@@ -56,12 +61,13 @@ public class PyramidAgility {
|
||||
c.getAgility().walk(-6, 0,
|
||||
c.getAgility().getAnimation(objectId), -1);
|
||||
c.getPacketSender().sendMessage(
|
||||
"You leave the agility pyramid");
|
||||
"You leave the agility pyramid.");
|
||||
} else if (c.absX == 3343) {
|
||||
c.getAgility()
|
||||
.walk(6, 0, c.getAgility().getAnimation(3043), -1);
|
||||
//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");
|
||||
"You enter the agility pyramid.");
|
||||
}
|
||||
return true;
|
||||
|
||||
@@ -84,6 +90,7 @@ public class PyramidAgility {
|
||||
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:
|
||||
@@ -113,11 +120,10 @@ public class PyramidAgility {
|
||||
}
|
||||
return true;
|
||||
|
||||
case PYRAMID_GAP_OBJECT:
|
||||
case PYRAMID_GAP:
|
||||
case PYRAMID_GAP_1:
|
||||
case PYRAMID_GAP_2:
|
||||
case PYRAMID_GAP_3:
|
||||
case PYRAMID_GAP_4:
|
||||
case PYRAMID_GAP_5:
|
||||
case PYRAMID_JUMP:
|
||||
if (c.getAgility().checkLevel(objectId)) {
|
||||
return false;
|
||||
}
|
||||
@@ -142,12 +148,11 @@ public class PyramidAgility {
|
||||
}
|
||||
}, 1);
|
||||
}
|
||||
if (c.getAgility().hotSpot(3372, 2832)
|
||||
|| c.getAgility().hotSpot(3372, 2831)) {
|
||||
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);
|
||||
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) {
|
||||
@@ -155,8 +160,7 @@ public class PyramidAgility {
|
||||
container.stop();
|
||||
return;
|
||||
}
|
||||
c.getPlayerAssistant().movePlayer(3367, c.absY, 1);// was
|
||||
// 2832
|
||||
c.getPlayerAssistant().movePlayer(3367, c.absY, 1);
|
||||
container.stop();
|
||||
}
|
||||
@Override
|
||||
@@ -186,7 +190,7 @@ public class PyramidAgility {
|
||||
}
|
||||
}, 1);
|
||||
}
|
||||
if (c.getAgility().hotSpot(3357, 2836)) {
|
||||
if (c.getAgility().hotSpot(3357, 2836) || c.getAgility().hotSpot(3356, 2836)) {
|
||||
c.getAgility().walk(0, 5,
|
||||
c.getAgility().getAnimation(objectId), -1);
|
||||
c.getPlayerAssistant().addSkillXP(
|
||||
@@ -198,7 +202,7 @@ public class PyramidAgility {
|
||||
container.stop();
|
||||
return;
|
||||
}
|
||||
c.getPlayerAssistant().movePlayer(3357, 2841, 2);
|
||||
c.getPlayerAssistant().movePlayer(c.absX, 2841, 2);
|
||||
container.stop();
|
||||
}
|
||||
@Override
|
||||
@@ -207,7 +211,7 @@ public class PyramidAgility {
|
||||
}
|
||||
}, 1);
|
||||
}
|
||||
if (c.getAgility().hotSpot(3357, 2846)) {
|
||||
if (c.getAgility().hotSpot(3357, 2846) || c.getAgility().hotSpot(3356, 2846)) {
|
||||
c.getAgility().walk(0, 3,
|
||||
c.getAgility().getAnimation(objectId), -1);
|
||||
c.getPlayerAssistant().addSkillXP(
|
||||
@@ -219,7 +223,7 @@ public class PyramidAgility {
|
||||
container.stop();
|
||||
return;
|
||||
}
|
||||
c.getPlayerAssistant().movePlayer(3357, 2849, 2);
|
||||
c.getPlayerAssistant().movePlayer(c.absX, 2849, 2);
|
||||
container.stop();
|
||||
}
|
||||
@Override
|
||||
@@ -250,9 +254,9 @@ public class PyramidAgility {
|
||||
}
|
||||
}, 1);
|
||||
}
|
||||
if (c.getAgility().hotSpot(3366, 2834)) {
|
||||
c.getAgility().walk(-1, 0,
|
||||
c.getAgility().getAnimation(objectId), -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() {
|
||||
@@ -262,7 +266,7 @@ public class PyramidAgility {
|
||||
container.stop();
|
||||
return;
|
||||
}
|
||||
c.getPlayerAssistant().movePlayer(3363, 2834, 2);
|
||||
c.getPlayerAssistant().movePlayer(3363, c.absY, 2);
|
||||
container.stop();
|
||||
}
|
||||
@Override
|
||||
@@ -292,7 +296,7 @@ public class PyramidAgility {
|
||||
}
|
||||
}, 1);
|
||||
}
|
||||
if (c.getAgility().hotSpot(3370, 2843)) {
|
||||
if (c.getAgility().hotSpot(3370, 2843) || c.getAgility().hotSpot(3371, 2843)) {
|
||||
c.getAgility().walk(0, -1,
|
||||
c.getAgility().getAnimation(objectId), -1);
|
||||
c.getPlayerAssistant().addSkillXP(
|
||||
@@ -304,7 +308,7 @@ public class PyramidAgility {
|
||||
container.stop();
|
||||
return;
|
||||
}
|
||||
c.getPlayerAssistant().movePlayer(3370, 2838, 3);
|
||||
c.getPlayerAssistant().movePlayer(c.absX, 2840, 3);
|
||||
container.stop();
|
||||
}
|
||||
@Override
|
||||
@@ -340,15 +344,15 @@ public class PyramidAgility {
|
||||
if (c.getAgility().checkLevel(objectId)) {
|
||||
return false;
|
||||
}
|
||||
if (c.getAgility().hotSpot(3375, 2845)) {
|
||||
if (c.getAgility().hotSpot(3375, 2845) || c.getAgility().hotSpot(3375, 2846)) {
|
||||
c.getAgility().walk(0, -6,
|
||||
c.getAgility().getAnimation(objectId), -1);
|
||||
c.getAgility().getAnimation(2295), -1);
|
||||
c.getPlayerAssistant().addSkillXP(
|
||||
c.getAgility().getXp(objectId), c.playerAgility);
|
||||
}
|
||||
if (c.getAgility().hotSpot(3370, 2835)) {
|
||||
if (c.getAgility().hotSpot(3370, 2835) || c.getAgility().hotSpot(3371, 2835)) {
|
||||
c.getAgility().walk(-6, 0,
|
||||
c.getAgility().getAnimation(objectId), -1);
|
||||
c.getAgility().getAnimation(2295), -1);
|
||||
c.getPlayerAssistant().addSkillXP(
|
||||
c.getAgility().getXp(objectId), c.playerAgility);
|
||||
}
|
||||
|
||||
+16
-4
@@ -25,10 +25,14 @@ public class WildernessAgility {
|
||||
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), 748);
|
||||
} else if (c.absX == 3004 && c.absY > 3937 && c.absY < 3950) {
|
||||
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);
|
||||
@@ -39,7 +43,7 @@ public class WildernessAgility {
|
||||
if (c.getAgility().checkLevel(objectId)) {
|
||||
return false;
|
||||
}
|
||||
if (c.getAgility().hotSpot(3005, 3953)) {
|
||||
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) {
|
||||
@@ -87,9 +91,17 @@ public class WildernessAgility {
|
||||
if (c.getAgility().checkLevel(objectId)) {
|
||||
return false;
|
||||
}
|
||||
if (c.getAgility().hotSpot(3002, 3945)) {
|
||||
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;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user