Mage Training Arena and stuff (#504)

* Fixup door/stairs in mage training arena

* Fixup bedsheets, should be worn on head, not weapon slot

* [Mage Training Arena] spawn rewards guardian

* [Mage Training Arena] Add arena teleports (non functioning)

* Just adding some comments

* [Mage Training Arena] Basic mage training arena stuff

* [Mage Training Arena] Allow shop to open and show items correctly

* [Mage Training Arena] Show shop prices when clicked

* noclip

* [Mage Training Arena] Add 2nd option handler (filler)

* [Mage Training Arena] Be able to purchase stuff, lock bones to peaches

* Update MageArena.java

* [Mage Training Arena] setup boundary

* Readability

* Tidy up enchanting

* MageArena -> MageTrainingArena

* Create Alchemy.java

* Update RSInterface.java

* [Mage Training Arena] Spawn entrance npcs

* [Mage Training Arena] Initial Alchemy

* [Mage Training Arena]  Add comments

* [Mage Training Arena] Handle alchemy while in arena

* [Mage Training Arena] Show interface for alchemy room

* [Mage Training Arena] Display values, Search cupboards

* [Mage Training Arena] Don't allow the player to wear items from the Alchemy game

* [Mage Training Arena] Announce when items are changing

* Don't allow the player to bring any coins with them

* Sort by values

* [Mage Training Arena] Allow alching items etc

* Update method name

* Show magic tab after using alch even if can't alch

* [Mage Training Arena] Coin collector - temp

* [Mage Training Arena] Give player points, take items, add bonus xp, add bank items

* [Mage Training Arena] Remove items when player leaves the alchemy training area

* Fixup staffs for runes, Tidy up checks

Was missing all Mystic staff
This commit is contained in:
Danial
2021-10-01 10:25:48 +13:00
committed by GitHub
parent 8589277ece
commit bbe1587e20
23 changed files with 821 additions and 418 deletions
@@ -716,7 +716,7 @@ public class ObjectsActions {
"You pass through the energy barrier.");
player.getPlayerAssistant().movePlayer(player.absX, player.absY - 2, 0);
}
break;
break;
case 5262:
if (player.heightLevel == 0)
@@ -2629,6 +2629,54 @@ public class ObjectsActions {
player.getPlayerAssistant().walkTo(0, -1);
}
break;
case 10721:
if (player.absY == 3298)
player.getPlayerAssistant().movePlayer(player.absX, player.absY + 2, 0);
else if (player.absY == 3300)
player.getPlayerAssistant().movePlayer(player.absX, player.absY - 2, 0);
break;
case 10734: // Coin Collector
player.getMageTrainingArena().alchemy.collectCoins();
break;
case 10771:
player.getPlayerAssistant().movePlayer(3369, 3307, 1);
break;
case 10773:
player.getPlayerAssistant().movePlayer(3366, 3306, 0);
break;
case 10775:
player.getPlayerAssistant().movePlayer(3357, 3307, 1);
break;
case 10776:
player.getPlayerAssistant().movePlayer(3360, 3306, 0);
break;
case 10778:
// TODO: Require Pizazz progress hat equiped
player.getDialogueHandler().sendStatement("This area is currently closed.");
// player.getPlayerAssistant().startTeleport2(3336, 9718, 0); // Telekinetic floor 0
break;
case 10779:
// TODO: Require Pizazz progress hat equiped
player.getDialogueHandler().sendStatement("This area is currently closed.");
// player.getPlayerAssistant().startTeleport2(3363, 9639, 0); // Enchantment training
break;
case 10780:
// TODO: Require Pizazz progress hat equiped
if (player.getItemAssistant().playerHasItem(995)) {
player.getDialogueHandler().sendStatement("You cannot bring coins with you.");
return;
}
player.getPlayerAssistant().startTeleport2(3365, 9624, 2); // Alchemy training
break;
case 10781:
// TODO: Require Pizazz progress hat equiped
player.getDialogueHandler().sendStatement("This area is currently closed.");
// player.getPlayerAssistant().startTeleport2(3364, 9639, 1); // Graveyard training
break;
case 10782: // Leave mage training rooms
player.getPlayerAssistant().startTeleport2(3363, 3318, 0);
break;
case 2873:
if (player.getItemAssistant().hasFreeSlots(1))
player.getItemAssistant().addItem(2412, 1);
@@ -2685,6 +2733,16 @@ public class ObjectsActions {
if (objectX == 3678 && objectY == 2948)
player.getPlayerAssistant().movePlayer(3677, 2948, 0);
break;
case 10783:
case 10785:
case 10787:
case 10789:
case 10791:
case 10793:
case 10795:
case 10797:
player.getMageTrainingArena().alchemy.searchCupboard(objectType);
break;
}
}