Untitled
unknown
java
4 years ago
31 kB
16
Indexable
package com.rs.game.player.content;
import java.util.concurrent.ConcurrentHashMap;
import com.rs.Settings;
import com.rs.cache.loaders.ItemDefinitions;
import com.rs.cache.loaders.NPCDefinitions;
import com.rs.game.npc.Drop;
import com.rs.game.player.Inventory;
import com.rs.game.player.Player;
import com.rs.game.player.content.achievementsystem.AchievementList;
import com.rs.game.player.content.clans.ClansManager;
import com.rs.game.player.content.interfaces.GeneralTeleports.GeneralTeleportingGroups;
import com.rs.game.player.rebirth.data.RebirthSkillsData.RebirthPerks10;
import com.rs.utils.Colors;
import com.rs.utils.NPCDrops;
import com.rs.utils.Utils;
public class InterfaceManager {
public static final int FIXED_WINDOW_ID = 548;
public static final int RESIZABLE_WINDOW_ID = 746;
public static final int CHAT_BOX_TAB = 13;
public static final int FIXED_SCREEN_TAB_ID = 47;
public static final int RESIZABLE_SCREEN_TAB_ID = 70;
public static final int FIXED_INV_TAB_ID = 175;
public static final int RESIZABLE_INV_TAB_ID = 151;
private Player player;
private int windowsPane;
private final ConcurrentHashMap<Integer, int[]> openedinterfaces = new ConcurrentHashMap<Integer, int[]>();
// private final ConcurrentHashMap<Integer, Integer> openedinterfacesb = new
// ConcurrentHashMap<Integer, Integer>();
public boolean resizableScreen;
public static int INTER_275_TITLE = 1;
public static int INTER_275_START_BODY = 10;
public static int INTER_275_END_BODY = 309;
public static final int DUNG_SMITHING_INTERFACE = 934;
public void clear275Body() {
for (int i = INTER_275_START_BODY; i <= INTER_275_END_BODY; i++) {
player.getPackets().sendIComponentText(275, i, "");
}
}
// new combat styles 1503
public void sendFullScreenInterfaces() {
player.getPackets().sendWindowsPane(746, 0);
sendTab(63, 752); // chatbox
sendRightSideScreenTabs();
sendTab(57, 745);
sendTab(67, 754);
sendTab(238, 748); // hp bar
sendTab(239, 749); // prayer bar
sendTab(240, 750); // run bar
sendTab(241, 747); // hide run?
player.getPackets().sendInterface(true, 752, 9, 137);
sendCombatStyles();
sendTaskSystem();
sendSkills();
sendInventory();
sendEquipment();
sendPrayerBook();
sendMagicBook();
sendTab(163, 550); // friend list
sendTab(164, 1109); // 551 ignore now friendchat
sendTab(165, 1110); // 589 old clan chat now new clan chat
sendSettings();
sendEmotes();
sendQuests();
sendTab(168, 187); // music
sendTab(resizableScreen ? 169 : 194, 34); // notes
sendTab(172, 182); // logout
sendSquealOfFortuneTab();
}
public void sendFixedInterfaces() {
player.getPackets().sendWindowsPane(548, 0);
sendTab(171, 752);
sendRightSideScreenTabs();
sendTab(43, 745);
sendTab(45, 754);
sendTab(167, 747);
sendTab(163, 748);
sendTab(164, 749);
sendTab(165, 750);
player.getPackets().sendInterface(true, 752, 9, 137);
player.getPackets().sendInterface(true, 548, 9, 167);
sendMagicBook();
sendPrayerBook();
sendEquipment();
sendInventory();
sendTab(189, 1109);// 551 ignore now friendchat
sendTab(190, 1110);// 589 old clan chat now new clan chat
sendTab(188, 550);// friend list
sendTab(193, 187);// music
sendTab(resizableScreen ? 169 : 194, 34); // notes
sendTab(197, 182);
sendSkills();
sendEmotes();
sendSettings();
sendTaskSystem();
sendQuests();
sendCombatStyles();
sendSquealOfFortuneTab();
}
/**
* Overrides the "Report" button.
*/
public void sendRightSideScreenTabs() {
sendTab(resizableScreen ? 64 : 56, 751);
sendIComponentText(751, 16, "<shad=000000>"
+ (player.getCombatDefinitions().isSheathe() ? Colors.GREEN : Colors.RED) + "Sheathe</col></shad>");
}
public void sendTaskSystem() {
sendTab(resizableScreen ? 155 : 180, 930);
TaskTab.sendTab(player);
}
public void sendQuests() {
sendTab(resizableScreen ? 157 : 182, 3060);
}
public boolean isResizableScreen() {
return resizableScreen;
}
public InterfaceManager(Player player) {
this.player = player;
}
public void sendTab(int tabId, int interfaceId) {
player.getPackets().sendInterface(true, resizableScreen ? RESIZABLE_WINDOW_ID : FIXED_WINDOW_ID, tabId,
interfaceId);
}
public void sendChatBoxInterface(int interfaceId) {
player.getPackets().sendInterface(true, 752, CHAT_BOX_TAB, interfaceId);
}
public void sendChatBoxInterfaceClipped(int interfaceId) {
player.getPackets().sendInterface(false, 752, CHAT_BOX_TAB, interfaceId);
}
public void closeChatBoxInterface() {
player.getPackets().closeInterface(CHAT_BOX_TAB);
}
public void sendOverlay(int interfaceId, boolean fullScreen) {
sendTab(resizableScreen ? fullScreen ? 52 : 52 : 30, interfaceId);
}
public void closeSecondaryOverlay() {
player.getPackets().closeInterface(resizableScreen ? 41 : 31);
}
public void sendSecondaryOverlay(int id) {
sendTab(resizableScreen ? 41 : 31, id);
}
public void closeOverlay(boolean fullScreen) {
player.getPackets().closeInterface(resizableScreen ? fullScreen ? 52 : 52 : 30);
}
public void closeOverlay(boolean fullScreen, int id) {
player.getPackets().closeInterface(isResizableScreen() ? fullScreen ? 1 : 11 : id);
}
public void sendInterface(int interfaceId) {
player.getPackets().sendInterface(false, resizableScreen ? RESIZABLE_WINDOW_ID : FIXED_WINDOW_ID,
resizableScreen ? RESIZABLE_SCREEN_TAB_ID : FIXED_SCREEN_TAB_ID, interfaceId);
}
public static int getComponentUId(int interfaceId, int componentId) {
return interfaceId << 16 | componentId;
}
public final void sendInterfaces() {
if (player.getDisplayMode() == 2 || player.getDisplayMode() == 3) {
resizableScreen = true;
sendFullScreenInterfaces();
} else {
resizableScreen = false;
sendFixedInterfaces();
}
player.getSkills().sendInterfaces();
player.getCombatDefinitions().sendUnlockAttackStylesButtons();
player.getMusicsManager().unlockMusicPlayer();
player.getEmotesManager().unlockEmotesBook();
player.getInventory().unlockInventoryOptions();
player.getPrayer().unlockPrayerBookButtons();
ClansManager.unlockBanList(player);
if (player.getFamiliar() != null && player.isRunning()) {
player.getFamiliar().unlock();
}
player.getControlerManager().sendInterfaces();
}
public void replaceRealChatBoxInterface(int interfaceId) {
player.getPackets().sendInterface(true, 752, 11, interfaceId);
}
public void closeReplacedRealChatBoxInterface() {
player.getPackets().closeInterface(752, 11);
}
public void sendWindowPane() {
player.getPackets().sendWindowsPane(resizableScreen ? 746 : 548, 0);
}
public void sendSquealOfFortuneTab() {
player.getSquealOfFortune().sendSpinCounts();
// this config used in cs2 to tell current extra tab type (0 - none, 1 -
// sof, 2 - armies minigame tab)
player.getPackets().sendGlobalConfig(823, 1);
sendTab(resizableScreen ? 162 : 187, 1139);
}
public void sendXPPopup() {
sendTab(resizableScreen ? 83 : 51, 1213); // xp
}
public void sendXPDisplay() {
sendXPDisplay(1215);
}
public void sendXPDisplay(int interfaceId) {
int rez = 244, fixed = 53;
if (interfaceId == 1214) {
rez = RESIZABLE_SCREEN_TAB_ID;
fixed = FIXED_SCREEN_TAB_ID;
}
sendTab(resizableScreen ? rez : fixed, interfaceId);
}
public void closeXPPopup() {
player.getPackets().closeInterface(resizableScreen ? 83 : 51);
}
public void closeXPDisplay() {
player.getPackets().closeInterface(resizableScreen ? 244 : 53);
}
public void sendEquipment() {
sendTab(resizableScreen ? 159 : 184, 387);
}
public void closeInterface(int one, int two) {
player.getPackets().closeInterface(resizableScreen ? two : one);
}
public void closeEquipment() {
player.getPackets().closeInterface(resizableScreen ? 159 : 184);
}
public void sendInventory() {
sendTab(resizableScreen ? 158 : 183, Inventory.INVENTORY_INTERFACE);
}
public void closeInventory() {
player.getPackets().closeInterface(resizableScreen ? 158 : 183);
}
public void closeSkills() {
player.getPackets().closeInterface(resizableScreen ? 156 : 181);
}
public void closeCombatStyles() {
player.getPackets().closeInterface(resizableScreen ? 154 : 179);
}
public void sendCombatStyles() {
sendTab(resizableScreen ? 154 : 179, 884);
}
public void sendSkills() {
sendTab(resizableScreen ? 156 : 181, 320);
}
public void refreshSkills() {
// player.getPackets().sendIComponentText(320, 151, "DIVINATION: " +
// player.getSkills().getTotalLevel());
}
public void sendSettings() {
sendSettings(261);
}
public void closeSettings() {
player.getPackets().closeInterface(resizableScreen ? 166 : 191);
}
public void sendSettings(int interfaceId) {
sendTab(resizableScreen ? 166 : 191, interfaceId);
}
public void sendPrayerBook() {
sendTab(resizableScreen ? 160 : 185, 271);
}
public void closePrayerBook() {
player.getPackets().closeInterface(resizableScreen ? 160 : 185);
}
public void sendMagicBook() {
sendTab(resizableScreen ? 161 : 186, player.getCombatDefinitions().getSpellBook());
}
public void closeMagicBook() {
player.getPackets().closeInterface(resizableScreen ? 161 : 186);
}
public void sendEmotes() {
sendTab(resizableScreen ? 167 : 192, 590);
}
public void closeEmotes() {
player.getPackets().closeInterface(resizableScreen ? 167 : 192);
}
public boolean addInterface(int windowId, int tabId, int childId) {
if (openedinterfaces.containsKey(tabId)) {
player.getPackets().closeInterface(tabId);
}
openedinterfaces.put(tabId, new int[] { childId, windowId });
return openedinterfaces.get(tabId)[0] == childId;
}
public boolean containsInterface(int tabId, int childId) {
if (childId == windowsPane) {
return true;
}
if (!openedinterfaces.containsKey(tabId)) {
return false;
}
return openedinterfaces.get(tabId)[0] == childId;
}
public int getTabWindow(int tabId) {
if (!openedinterfaces.containsKey(tabId)) {
return FIXED_WINDOW_ID;
}
return openedinterfaces.get(tabId)[1];
}
public boolean containsInterface(int childId) {
if (childId == windowsPane) {
return true;
}
for (int[] value : openedinterfaces.values()) {
if (value[0] == childId) {
return true;
}
}
return false;
}
public boolean containsTab(int tabId) {
return openedinterfaces.containsKey(tabId);
}
public void removeAll() {
openedinterfaces.clear();
}
public boolean containsScreenInter() {
return containsTab(resizableScreen ? RESIZABLE_SCREEN_TAB_ID : FIXED_SCREEN_TAB_ID);
}
public void closeScreenInterface() {
player.getPackets().closeInterface(resizableScreen ? RESIZABLE_SCREEN_TAB_ID : FIXED_SCREEN_TAB_ID);
}
public boolean containsInventoryInter() {
return containsTab(resizableScreen ? RESIZABLE_INV_TAB_ID : FIXED_INV_TAB_ID);
}
public void closeInventoryInterface() {
player.getPackets().closeInterface(resizableScreen ? RESIZABLE_INV_TAB_ID : FIXED_INV_TAB_ID);
}
public boolean containsChatBoxInter() {
return containsTab(CHAT_BOX_TAB);
}
public boolean removeTab(int tabId) {
return openedinterfaces.remove(tabId) != null;
}
public void sendFadingInterface(int backgroundInterface) {
if (hasRezizableScreen()) {
player.getPackets().sendInterface(true, RESIZABLE_WINDOW_ID, 34, backgroundInterface);
} else {
player.getPackets().sendInterface(true, FIXED_WINDOW_ID, 0, backgroundInterface);
}
}
public void closeFadingInterface() {
if (hasRezizableScreen()) {
player.getPackets().closeInterface(34);
} else {
player.getPackets().closeInterface(0);
}
}
public void sendScreenInterface(int backgroundInterface, int interfaceId) {
player.getInterfaceManager().closeScreenInterface();
if (hasRezizableScreen()) {
player.getPackets().sendInterface(false, RESIZABLE_WINDOW_ID, 40, backgroundInterface);
player.getPackets().sendInterface(false, RESIZABLE_WINDOW_ID, 41, interfaceId);
} else {
player.getPackets().sendInterface(false, FIXED_WINDOW_ID, 200, backgroundInterface);
player.getPackets().sendInterface(false, FIXED_WINDOW_ID, 201, interfaceId);
}
player.setCloseInterfacesEvent(new Runnable() {
@Override
public void run() {
if (hasRezizableScreen()) {
player.getPackets().closeInterface(40);
player.getPackets().closeInterface(41);
} else {
player.getPackets().closeInterface(200);
player.getPackets().closeInterface(201);
}
}
});
}
public void sendFullscreenInterfaceSingle(int interfaceId) {
player.getInterfaceManager().closeScreenInterface();
if (hasRezizableScreen()) {
player.getPackets().sendInterface(true, RESIZABLE_WINDOW_ID, 49, interfaceId);
} else {
player.getPackets().sendInterface(true, FIXED_WINDOW_ID, 295, interfaceId);
}
player.setCloseInterfacesEvent(new Runnable() {
@Override
public void run() {
if (hasRezizableScreen()) {
player.getPackets().closeInterface(49);
} else {
player.getPackets().closeInterface(295);
}
}
});
}
public boolean hasRezizableScreen() {
return resizableScreen;
}
public void setWindowsPane(int windowsPane) {
this.windowsPane = windowsPane;
}
public int getWindowsPane() {
return windowsPane;
}
public void gazeOrbOfOculus() {
player.getPackets().sendWindowsPane(475, 0);
player.getPackets().sendInterface(true, 475, 57, 751);
player.getPackets().sendInterface(true, 475, 55, 752);
player.setCloseInterfacesEvent(new Runnable() {
@Override
public void run() {
player.getPackets().sendWindowsPane(player.getInterfaceManager().hasRezizableScreen() ? 746 : 548, 0);
player.getPackets().sendResetCamera();
}
});
}
public int openGameTab(int tabId) {
player.getPackets().sendGlobalConfig(168, tabId);
int lastTab = 4;
return lastTab;
}
public void sendSquealOfFortune() {
sendTab(resizableScreen ? 119 : 179, 1139);
player.getPackets().sendGlobalConfig(823, 1);
}
public void setWindowInterface(int componentId, int interfaceId) {
player.getPackets().sendInterface(true, resizableScreen ? RESIZABLE_WINDOW_ID : FIXED_WINDOW_ID, componentId,
interfaceId);
}
public void sendInventoryInterface(int childId) {
player.getPackets().sendInterface(false, resizableScreen ? RESIZABLE_WINDOW_ID : FIXED_WINDOW_ID,
resizableScreen ? RESIZABLE_INV_TAB_ID : FIXED_INV_TAB_ID, childId);
}
public void sendSquealOverlay() {
sendTab(isResizableScreen() ? 0 : 10, 1252);
}
public void closeSquealOverlay() {
player.getPackets().closeInterface(isResizableScreen() ? 0 : 10);
}
/**
* Sends an interface with the possible NPC's that drop a mentioned item.
*
* @param defs The Item Definitions.
*/
public void sendItemDrops(ItemDefinitions defs) {
int i = 0;
String dropEntry = "";
player.getInterfaceManager().sendInterface(275);
sendIComponentText(275, 1, "Drops: <col=9900FF><shad=000000>" + defs.name + "</col></shad>");
for (i = 10; i < 310; i++) {
sendIComponentText(275, i, "");
}
i = 0;
for (int n = 0; n < Utils.getNPCDefinitionsSize(); n++) {
NPCDefinitions def = NPCDefinitions.getNPCDefinitions(n);
Drop[] drops = NPCDrops.getDrops(def.getId());
if (drops != null) {
for (Drop drop : drops) {
if (drop.getItemId() == 0) {
continue;
}
ItemDefinitions itemDefs = ItemDefinitions.getItemDefinitions(drop.getItemId());
if (itemDefs.getId() != defs.getId() || !itemDefs.name.contains(defs.name)
|| !itemDefs.name.equalsIgnoreCase(defs.name)) {
continue;
}
if (def == null || def.getName().toLowerCase().contains("null")) {
continue;
}
StringBuilder sb = new StringBuilder("").append(def.name).append(": ").append(itemDefs.name)
.append(drop.getMaxAmount() == 1 ? ("")
: drop.getMinAmount() == drop.getMaxAmount() ? (" (" + drop.getMaxAmount() + ")")
: (" (" + drop.getMinAmount() + "-" + drop.getMaxAmount() + ")"))
.append(" [").append((int) drop.getRate()).append("% Chance]");
dropEntry = sb.toString();
if (i < 300) {
sendIComponentText(275, 10 + i, dropEntry);
}
dropEntry = "";
i++;
}
}
}
}
/**
* Guid Interface
*/
private void sendText(int line, String message) {
player.getPackets().sendIComponentText(275, line, "<shad=000000>" + message);
}
public void displayRanks() {
for (int i = 0; i < 309; i++) {
player.getPackets().sendIComponentText(275, i, "");
}
sendText(1, Colors.RED + Settings.SERVER_NAME);
sendText(10, Colors.CYAN + "");
sendText(11, Colors.RED + "");
sendText(12, "");
player.getInterfaceManager().sendInterface(275);
}
/**
* Sends an interface with the possible item drops from the mentioned NPC
*
* @param defs The NPC Definitions.
*/
public void sendNPCDrops(NPCDefinitions defs) {
int i = 0;
String dropEntry = "";
player.getInterfaceManager().sendInterface(275);
sendIComponentText(275, 1, "Drops: <col=9900FF><shad=000000>" + defs.name + "</col></shad>");
for (i = 10; i < 310; i++) {
sendIComponentText(275, i, "");
}
i = 0;
Drop[] drops = NPCDrops.getDrops(defs.getId());
if (drops != null) {
for (Drop drop : drops) {
if (drop.getItemId() == 0) {
continue;
}
ItemDefinitions itemDefs = ItemDefinitions.getItemDefinitions(drop.getItemId());
StringBuilder sb = new StringBuilder("").append(itemDefs.name)
.append(drop.getMaxAmount() == 1 ? ("")
: drop.getMinAmount() == drop.getMaxAmount() ? (" (" + drop.getMaxAmount() + ")")
: (" (" + drop.getMinAmount() + "-" + drop.getMaxAmount() + ")"))
.append(" [").append((int) drop.getRate()).append("% Chance]");
dropEntry = sb.toString();
if (i < 300) {
sendIComponentText(275, 10 + i, dropEntry);
}
dropEntry = "";
i++;
}
}
}
/**
* Just a shortener.
*
* @param interfaceId The interface ID.
* @param componentId The component ID.
* @param text The text to display.
*/
private void sendIComponentText(int interfaceId, int componentId, String text) {
player.getPackets().sendIComponentText(interfaceId, componentId, text);
}
public void sendHelpInterface() {
player.getPackets().sendIComponentText(1245, 330,
Colors.GREEN + Settings.SERVER_NAME + " </col>- " + Colors.RED + Settings.WEBSITE);
player.getPackets().sendIComponentText(1245, 13,
"Welcome to <col=0033CC>" + Settings.SERVER_NAME + "</col>; Owner = <col=990000>Jessica</col>.");
player.getPackets().sendIComponentText(1245, 14, "How to teleport to bosses/skilling/training areas:");
player.getPackets().sendIComponentText(1245, 15, "");
player.getPackets().sendIComponentText(1245, 16,
"You can teleport all around " + Settings.SERVER_NAME + " by using the Quest Tab button");
player.getPackets().sendIComponentText(1245, 17, "");
player.getPackets().sendIComponentText(1245, 18, "Basic Money Making methods:");
player.getPackets().sendIComponentText(1245, 19,
"One of the easiest and most reliable money sources is Voting!");
player.getPackets().sendIComponentText(1245, 20, "");
player.getPackets().sendIComponentText(1245, 20,
"By doing ::vote you can receive up to 2m Gold for every vote book.");
player.getPackets().sendIComponentText(1245, 21,
"Another quick way of making money would be the Thieving Stalls at ::home");
player.getPackets().sendIComponentText(1245, 22, "The main money making source is by defeating bosses though!");
player.getPackets().sendIComponentText(1245, 23, "You can sell ALL of your items on the Grand Exchange.");
player.getInterfaceManager().sendInterface(1245);
}
public void sendTrainingTeleport() {
player.getInterfaceManager().sendInterface(813);
player.getPackets().sendItemOnIComponent(813, 33, 30005, 1);
player.getPackets().sendIComponentText(813, 80, Colors.GREEN + "KingScape"); // Title
player.getPackets().sendIComponentText(813, 15, "Where would you like to go, " + player.getDisplayName() + "?"); // Desc
player.getPackets().sendIComponentText(813, 29, Colors.GREEN + "Training I"); // Boss Teleports
player.getPackets().sendIComponentText(813, 52, Colors.WHITE + "Rock Crabs");
player.getPackets().sendIComponentText(813, 53, Colors.WHITE + "Glacor Cave");
player.getPackets().sendIComponentText(813, 54, Colors.WHITE + "");
player.getPackets().sendIComponentText(813, 55, Colors.WHITE + "");
player.getPackets().sendIComponentText(813, 56, Colors.WHITE + "");
player.getPackets().sendIComponentText(813, 60, Colors.WHITE + "");
player.getPackets().sendIComponentText(813, 57, Colors.WHITE + "");
player.getPackets().sendIComponentText(813, 58, Colors.WHITE + "");
player.getPackets().sendIComponentText(813, 107, Colors.RED + "");
}
public void sendPvPTeleport() {
player.getInterfaceManager().sendInterface(813);
player.getPackets().sendItemOnIComponent(813, 33, 30005, 1);
player.getPackets().sendIComponentText(813, 80, Colors.GREEN + "KingScape"); // Title
player.getPackets().sendIComponentText(813, 15, "Where would you like to go, " + player.getDisplayName() + "?"); // Desc
player.getPackets().sendIComponentText(813, 29, Colors.GREEN + "PvP I"); // Boss Teleports
player.getPackets().sendIComponentText(813, 52, Colors.WHITE + "Edgeville");
player.getPackets().sendIComponentText(813, 53, Colors.WHITE + "Gate");
player.getPackets().sendIComponentText(813, 54, Colors.WHITE + "");
player.getPackets().sendIComponentText(813, 55, Colors.WHITE + "");
player.getPackets().sendIComponentText(813, 56, Colors.WHITE + "");
player.getPackets().sendIComponentText(813, 60, Colors.WHITE + "");
player.getPackets().sendIComponentText(813, 57, Colors.WHITE + "");
player.getPackets().sendIComponentText(813, 58, Colors.WHITE + "");
player.getPackets().sendIComponentText(813, 107, Colors.RED + "");
}
public void sendMinigamesInterface() {
player.getInterfaceManager().sendInterface(1412);
player.getPackets().sendIComponentText(1412, 25, "MINIGAMES"); // Title
player.getPackets().sendIComponentText(1412, 36, "Barrows");
player.getPackets().sendIComponentText(1412, 44, "Clan Wars");
player.getPackets().sendIComponentText(1412, 52, "Pest Control");
player.getPackets().sendIComponentText(1412, 60, "Dungeoneering Old");
player.getPackets().sendIComponentText(1412, 68, "Dungeoneering New");
player.getPackets().sendIComponentText(1412, 76, "Fight Kiln");
player.getPackets().sendIComponentText(1412, 84, "Fight Caves");
player.getPackets().sendIComponentText(1412, 92, "Recipe For Disaster");
player.getPackets().sendIComponentText(1412, 164, "Duel Arena");
player.getPackets().sendIComponentText(1412, 180, "Warriors Guild");
player.getPackets().sendIComponentText(1412, 100, "Soul Wars");
player.getPackets().sendIComponentText(1412, 108, "Dominion Tower");
player.getPackets().sendIComponentText(1412, 116, "Livid Farm");
player.getPackets().sendIComponentText(1412, 124, "Nomads Requiem");
player.getPackets().sendIComponentText(1412, 132, "Artisans Workshop");
player.getPackets().sendIComponentText(1412, 140, "Runespan");
player.getPackets().sendIComponentText(1412, 148, "Puro-Puro");
player.getPackets().sendIComponentText(1412, 156, Colors.RED + "");
player.getPackets().sendIComponentText(1412, 172, Colors.RED + "");
player.getPackets().sendIComponentText(1412, 188, Colors.RED + "");
}
/* starts: handles new teleports system in quest tab */
public static int getPlayerInterfaceSelected() {
return playerSelected813;
}
public static int setPlayerInterfaceSelected(int value) {
return playerSelected813 = value;
}
public static int playerSelected813 = 0;
// ends:
// *Handle Smithing New Interface*//
public static int getPlayerInterfaceSelected2() {
return playerSelected934;
}
public static int setPlayerInterfaceSelected2(int value) {
return playerSelected934 = value;
}
public static int playerSelected934 = 0;
// end:
public void openDungTab() {
this.openGameTab(3);
}
public void sendDungPartyInterface() {
sendTab(this.resizableScreen ? 114 : 174, 939);
player.getPackets().sendGlobalConfig(234, 3);
}
public void closeDungPartyInterface() {
sendTab(resizableScreen ? 114 : 174, 939);
// sendTab(resizableScreen ? 114 : 174, 506);
player.getPackets().sendGlobalConfig(234, 0);
QuestPanel.sendTab(player);
}
public void sendDungPartyTab(int interfaceId) {
sendTab(this.resizableScreen ? 114 : 174, interfaceId);
player.getPackets().sendGlobalConfig(234, 3);
}
public void sendSlayerList() {
player.closeInterfaces();
// Placefolder for banned monster names
String tasks[] = { "", "", "", "", "", "" };
sendInterface(161);
// Static information to paste over the interface
player.getPackets().sendIComponentText(161, 19, "" + player.getSlayer().getSlayerPoints());
player.getPackets().sendIComponentText(161, 23, "Reset your current slayer task");
player.getPackets().sendIComponentText(161, 26,
"(" + (player.Rebirth().isActivatedSecondPerk(RebirthPerks10.SLAYER) ? " FREE! )" : 10 + " points)"));
player.getPackets().sendIComponentText(161, 27,
"(" + (player.Rebirth().isActivatedSecondPerk(RebirthPerks10.SLAYER) ? 120 : 160) + " points)");
// Check if player has any banned tasks
if (player.getSlayer().getBannedAssignments().size() > 0) {
for (int i = 0; i < player.getSlayer().getBannedAssignments().size(); i++) {
if (player.getSlayer().getBannedAssignments().get(i) != null) {
tasks[i] = player.getSlayer().getBannedAssignments().get(i).getTaskName()
.charAt(player.getSlayer().getBannedAssignments().get(i).getTaskName().length() - 1) == 's'
? player.getSlayer().getBannedAssignments().get(i).getTaskName()
: player.getSlayer().getBannedAssignments().get(i).getTaskName() + "s";
} else {
// player.banTask(false, i);
}
}
}
for (int i = 0; i < tasks.length; i++) {
player.getPackets().sendIComponentText(161, 31 + i,
tasks[i] == "" ? " No task has been banned!"
: Colors.GOLDEN + " * " + tasks[i]);
}
}
public void sendBossKillLog() {
player.closeInterfaces();
String names[] = {
/* GWD Bosses */
"General Graardor", "Kree'arra", "K'ril Tsutsaroth", "Commander Zilyana", "Nex",
/* Dagannoth Kings */
"Dagannoth Prime", "Dagannoth Rex", "Dagannoth Supreme",
/* Kalphites and Black dragons */
"King Black Dragon", "Queen Black Dragon", "Kalphite Queen", "Kalphite King",
/* High-level bosses and Chaos */
"Araxxor", "Vorago", "Corporeal Beast", "Chaos Elemental", "Glacor", "Tormented Demon",
/* Legios */
"Legio Primus", "Legio Secundus", "Legio Tertius", "Legio Quartus", "Legio Quintus", "Legio Sextus", };
sendInterface(227);
player.getPackets().sendIComponentText(227, 2, Colors.DARK_RED + Colors.SHAD + "Boss kill-log</col>");
player.getPackets().sendIComponentText(227, 3, Colors.SALMON + Colors.SHAD
+ Utils.formatPlayerNameForDisplay(player.getUsername()) + "'s killed bosses");
for (int i = 0; i < names.length; i++) {
player.getPackets().sendIComponentText(227, 5 + i, Colors.LPURPLE + Colors.SHAD + names[i] + ":</col> "
+ (player.increaseKillStatistics(names[i].toLowerCase(), false) == 0 ? Colors.DARK_RED + "none"
: Colors.LIME + "")
+ " slain " + (player.increaseKillStatistics(names[i].toLowerCase(), false) == 0 ? "yet!"
: player.increaseKillStatistics(names[i].toLowerCase(), false) + " total!"));
}
// fill the rest of the space with blank
for (int i = 0; i < 54 - (5 + names.length); i++) {
player.getPackets().sendIComponentText(227, 5 + names.length + i, "");
}
}
public void openGeneralTeleportsInterface() {
sendInterface(3083);
GeneralTeleportingGroups.updateInterface(player, 65);
player.getPackets().sendIComponentText(3083, 16, Settings.SERVER_NAME + " general teleports");
player.setCloseInterfacesEvent(new Runnable() {
@Override
public void run() {
player.setCloseInterfacesEvent(null);
player.closeInterfaces();
player.currentTeleportLocation = 0;
}
});
}
public void sendTaskComplete(AchievementList achievement) {
int TasksLeft = AchievementList.getTotalSize() - player.getAchievements().getTotalCompleted();
player.getInterfaceManager().sendTab(player.getInterfaceManager().isResizableScreen() ? 51 : 5, 1055);
player.getPackets().sendHideIComponent(1055, 0, false);
player.getPackets().sendIComponentSprite(1055, 13, 700);
player.getPackets().sendRunScript(3970);
player.getPackets().sendRunScript(3969);
player.getPackets().sendRunScript(3968);
player.getPackets().sendIComponentText(1055, 15, Colors.GREEN + achievement.getName() + "</col>"
+ "<br><col=ffc800>" + TasksLeft + "</col> tasks to go!");
}
public void sendTabInterfaces(boolean hidden) {
if (hidden) {
player.getInterfaceManager().closeCombatStyles();
player.getInterfaceManager().closeSkills();
player.getInterfaceManager().closeInventory();
player.getInterfaceManager().closeEquipment();
player.getInterfaceManager().closePrayerBook();
player.getInterfaceManager().closeMagicBook();
player.getInterfaceManager().closeEmotes();
} else {
player.getInterfaceManager().sendTaskSystem();
player.getInterfaceManager().sendQuests();
player.getInterfaceManager().sendCombatStyles();
player.getCombatDefinitions().sendUnlockAttackStylesButtons();
player.getInterfaceManager().sendQuests();
player.getInterfaceManager().sendSkills();
player.getInterfaceManager().sendInventory();
player.getInventory().unlockInventoryOptions();
player.getInterfaceManager().sendEquipment();
player.getInterfaceManager().sendPrayerBook();
player.getPrayer().unlockPrayerBookButtons();
player.getInterfaceManager().sendMagicBook();
player.getInterfaceManager().sendEmotes();
player.getEmotesManager().unlockEmotesBook();
}
}
}Editor is loading...