mirror of
https://github.com/2006-Scape/2006Scape.git
synced 2026-07-04 08:39:05 +00:00
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:
@@ -845,7 +845,6 @@ public class PlayerAssistant {
|
||||
public void processTeleport() {
|
||||
player.teleportToX = player.teleX;
|
||||
player.teleportToY = player.teleY;
|
||||
player.heightLevel = player.teleHeight;
|
||||
if (player.teleEndAnimation > 0) {
|
||||
player.startAnimation(player.teleEndAnimation);
|
||||
}
|
||||
@@ -859,7 +858,7 @@ public class PlayerAssistant {
|
||||
if(player.heightLevel != h) {
|
||||
player.refresh = true;
|
||||
}
|
||||
player.heightLevel = h;
|
||||
player.teleHeight = h;
|
||||
player.getPlayerAssistant().requestUpdates();
|
||||
}
|
||||
|
||||
@@ -1165,53 +1164,60 @@ public class PlayerAssistant {
|
||||
|| itemId == 995) {
|
||||
return;
|
||||
}
|
||||
boolean canAlch = true;
|
||||
switch (spellId) {
|
||||
case 1162: // low alch
|
||||
player.getPacketSender().sendShowTab(6);
|
||||
if (player.inTrade) {
|
||||
player.getPacketSender().sendMessage("You can't alch while in a trade!");
|
||||
return;
|
||||
}
|
||||
if (System.currentTimeMillis() - player.alchDelay > 1000) {
|
||||
if (!player.getCombatAssistant().checkMagicReqs(49)) {
|
||||
break;
|
||||
if (System.currentTimeMillis() - player.alchDelay <= 1000) {
|
||||
return;
|
||||
}
|
||||
if (!player.getCombatAssistant().checkMagicReqs(49)) {
|
||||
return;
|
||||
}
|
||||
if (Boundary.isIn(player, Boundary.MAGE_TRAINING_ARENA)) {
|
||||
player.getMageTrainingArena().alchItem(itemId, spellId);
|
||||
return;
|
||||
}
|
||||
canAlch = true;
|
||||
for (int i : ItemConstants.ITEM_UNALCHABLE) {
|
||||
if (itemId == i) {
|
||||
player.getPacketSender().sendMessage("You can't alch that item!");
|
||||
canAlch = false;
|
||||
return;
|
||||
}
|
||||
boolean canAlch = true;
|
||||
for (int i : ItemConstants.ITEM_UNALCHABLE) {
|
||||
if (itemId == i) {
|
||||
player.getPacketSender().sendMessage("You can't alch that item!");
|
||||
canAlch = false;
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (canAlch) {
|
||||
int value = (int) Math.floor(player.getShopAssistant().getItemShopValue(itemId) * 0.4);
|
||||
String itemName = ItemAssistant.getItemName(itemId).toLowerCase();
|
||||
if (player.getPlayerAssistant().isPlayer()) {
|
||||
GameLogger.writeLog(player.playerName, "alchemy", player.playerName + " cast Low Alchemy on " + itemName + " for " + GameLogger.formatCurrency(value) + " coins");
|
||||
}
|
||||
if (canAlch) {
|
||||
int value = (int) Math.floor(player.getShopAssistant().getItemShopValue(itemId) * 0.4);
|
||||
String itemName = ItemAssistant.getItemName(itemId).toLowerCase();
|
||||
if (player.getPlayerAssistant().isPlayer()) {
|
||||
GameLogger.writeLog(player.playerName, "alchemy", player.playerName + " cast Low Alchemy on " + itemName + " for " + GameLogger.formatCurrency(value) + " coins");
|
||||
}
|
||||
player.getItemAssistant().deleteItem(itemId, slot, 1);
|
||||
//855 - 858
|
||||
if (itemId > 854 && itemId < 857) {
|
||||
player.getItemAssistant().addItem(995, 512);
|
||||
} else if (itemId > 856 && itemId < 859) {
|
||||
player.getItemAssistant().addItem(995, 320);
|
||||
} else if (itemId > 860 && itemId < 863) {
|
||||
player.getItemAssistant().addItem(995, 640);
|
||||
} else if (itemId > 858 && itemId < 861) {
|
||||
player.getItemAssistant().addItem(995, 1024);
|
||||
} else {
|
||||
player.getItemAssistant().addItem(995, value);
|
||||
}
|
||||
player.startAnimation(MagicData.MAGIC_SPELLS[49][2]);
|
||||
player.gfx100(MagicData.MAGIC_SPELLS[49][3]);
|
||||
player.alchDelay = System.currentTimeMillis();
|
||||
player.getPacketSender().sendFrame106(6);
|
||||
addSkillXP(31, 6);
|
||||
player.getPacketSender().sendSound(
|
||||
SoundList.LOW_ALCHEMY, 100, 0);
|
||||
RandomEventHandler.addRandom(player);
|
||||
refreshSkill(6);
|
||||
player.getItemAssistant().deleteItem(itemId, slot, 1);
|
||||
//855 - 858
|
||||
if (itemId > 854 && itemId < 857) {
|
||||
player.getItemAssistant().addItem(995, 512);
|
||||
} else if (itemId > 856 && itemId < 859) {
|
||||
player.getItemAssistant().addItem(995, 320);
|
||||
} else if (itemId > 860 && itemId < 863) {
|
||||
player.getItemAssistant().addItem(995, 640);
|
||||
} else if (itemId > 858 && itemId < 861) {
|
||||
player.getItemAssistant().addItem(995, 1024);
|
||||
} else {
|
||||
player.getItemAssistant().addItem(995, value);
|
||||
}
|
||||
player.startAnimation(MagicData.MAGIC_SPELLS[49][2]);
|
||||
player.gfx100(MagicData.MAGIC_SPELLS[49][3]);
|
||||
player.alchDelay = System.currentTimeMillis();
|
||||
player.getPacketSender().sendShowTab(6);
|
||||
addSkillXP(31, 6);
|
||||
player.getPacketSender().sendSound(
|
||||
SoundList.LOW_ALCHEMY, 100, 0);
|
||||
RandomEventHandler.addRandom(player);
|
||||
refreshSkill(6);
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -1227,54 +1233,64 @@ public class PlayerAssistant {
|
||||
case 1180: // Lvl-4 enchant diamond
|
||||
case 1187: // Lvl-5 enchant dragonstone
|
||||
case 6003: // Lvl-6 enchant onyx
|
||||
player.getEnchanting().enchantItem(itemId, spellId);
|
||||
if (Boundary.isIn(player, Boundary.MAGE_TRAINING_ARENA)) {
|
||||
player.getMageTrainingArena().enchantItem(itemId, spellId);
|
||||
} else {
|
||||
player.getEnchanting().enchantItem(itemId, spellId);
|
||||
}
|
||||
break;
|
||||
|
||||
case 1178: // high alch
|
||||
player.getPacketSender().sendShowTab(6);
|
||||
if (player.inTrade) {
|
||||
player.getPacketSender().sendMessage("You can't alch while in a trade!");
|
||||
return;
|
||||
}
|
||||
if (System.currentTimeMillis() - player.alchDelay > 1000) {
|
||||
if (!player.getCombatAssistant().checkMagicReqs(50)) {
|
||||
break;
|
||||
if (System.currentTimeMillis() - player.alchDelay <= 1000) {
|
||||
return;
|
||||
}
|
||||
if (!player.getCombatAssistant().checkMagicReqs(50)) {
|
||||
break;
|
||||
}
|
||||
if (Boundary.isIn(player, Boundary.MAGE_TRAINING_ARENA)) {
|
||||
player.getMageTrainingArena().alchItem(itemId, spellId);
|
||||
return;
|
||||
}
|
||||
canAlch = true;
|
||||
for (int i : ItemConstants.ITEM_UNALCHABLE) {
|
||||
if (itemId == i) {
|
||||
player.getPacketSender().sendMessage("You can't alch that item!");
|
||||
canAlch = false;
|
||||
return;
|
||||
}
|
||||
boolean canAlch = true;
|
||||
for (int i : ItemConstants.ITEM_UNALCHABLE) {
|
||||
if (itemId == i) {
|
||||
player.getPacketSender().sendMessage("You can't alch that item!");
|
||||
canAlch = false;
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (canAlch) {
|
||||
int value = (int) Math.floor(player.getShopAssistant().getItemShopValue(itemId) * 0.75);
|
||||
String itemName = ItemAssistant.getItemName(itemId).toLowerCase();
|
||||
if (player.getPlayerAssistant().isPlayer()) {
|
||||
GameLogger.writeLog(player.playerName, "alchemy", player.playerName + " cast High Alchemy on " + itemName + " for" + GameLogger.formatCurrency(value) + " coins");
|
||||
}
|
||||
if (canAlch) {
|
||||
int value = (int) Math.floor(player.getShopAssistant().getItemShopValue(itemId) * 0.75);
|
||||
String itemName = ItemAssistant.getItemName(itemId).toLowerCase();
|
||||
if (player.getPlayerAssistant().isPlayer()) {
|
||||
GameLogger.writeLog(player.playerName, "alchemy", player.playerName + " cast High Alchemy on " + itemName + " for" + GameLogger.formatCurrency(value) + " coins");
|
||||
}
|
||||
player.getItemAssistant().deleteItem(itemId, slot, 1);
|
||||
if (itemId > 854 && itemId < 857) {
|
||||
player.getItemAssistant().addItem(995, 768);
|
||||
} else if (itemId > 856 && itemId < 859) {
|
||||
player.getItemAssistant().addItem(995, 480);
|
||||
} else if (itemId > 858 && itemId < 861) {
|
||||
player.getItemAssistant().addItem(995, 1536);
|
||||
} else if (itemId > 860 && itemId < 863) {
|
||||
player.getItemAssistant().addItem(995, 960);
|
||||
} else {
|
||||
player.getItemAssistant().addItem(995, (int) (player.getShopAssistant().getItemShopValue(itemId) * .75));
|
||||
}
|
||||
player.startAnimation(MagicData.MAGIC_SPELLS[50][2]);
|
||||
player.gfx100(MagicData.MAGIC_SPELLS[50][3]);
|
||||
player.alchDelay = System.currentTimeMillis();
|
||||
player.getPacketSender().sendFrame106(6);
|
||||
RandomEventHandler.addRandom(player);
|
||||
addSkillXP(65, 6);
|
||||
player.getPacketSender().sendSound(
|
||||
SoundList.HIGH_ALCHEMY, 100, 0);
|
||||
refreshSkill(6);
|
||||
player.getItemAssistant().deleteItem(itemId, slot, 1);
|
||||
if (itemId > 854 && itemId < 857) {
|
||||
player.getItemAssistant().addItem(995, 768);
|
||||
} else if (itemId > 856 && itemId < 859) {
|
||||
player.getItemAssistant().addItem(995, 480);
|
||||
} else if (itemId > 858 && itemId < 861) {
|
||||
player.getItemAssistant().addItem(995, 1536);
|
||||
} else if (itemId > 860 && itemId < 863) {
|
||||
player.getItemAssistant().addItem(995, 960);
|
||||
} else {
|
||||
player.getItemAssistant().addItem(995, (int) (player.getShopAssistant().getItemShopValue(itemId) * .75));
|
||||
}
|
||||
player.startAnimation(MagicData.MAGIC_SPELLS[50][2]);
|
||||
player.gfx100(MagicData.MAGIC_SPELLS[50][3]);
|
||||
player.alchDelay = System.currentTimeMillis();
|
||||
player.getPacketSender().sendShowTab(6);
|
||||
RandomEventHandler.addRandom(player);
|
||||
addSkillXP(65, 6);
|
||||
player.getPacketSender().sendSound(
|
||||
SoundList.HIGH_ALCHEMY, 100, 0);
|
||||
refreshSkill(6);
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user