Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package org.brutality.model.content.presets;
- import java.util.HashMap;
- import java.util.Map;
- import java.util.logging.Logger;
- import org.brutality.model.items.GameItem;
- import org.brutality.model.items.ItemDefinition;
- import org.brutality.model.players.Player;
- import org.brutality.model.players.skills.Skill;
- /**
- * Class for pre-made gear which players can spawn.
- *
- * @author
- *
- */
- public class PremadeGear {
- // IIF YOUR ARE HERE YOU CAN QUICKLY FILL IN THESE STATS
- public static final int[][] PURE_MELEE_STATS = new int[][] {
- { Skill.ATTACK.getId(), 60 },
- { Skill.STRENGTH.getId(), 99 },
- { Skill.DEFENCE.getId(), 1 },
- { Skill.HITPOINTS.getId(), 99 },
- { Skill.RANGED.getId(), 70 },
- { Skill.MAGIC.getId(), 99 },
- { Skill.PRAYER.getId(), 52 },
- };
- public static final int[][] PURE_RANGE_STATS = new int[][] {
- { Skill.ATTACK.getId(), 1 },
- { Skill.STRENGTH.getId(), 1 },
- { Skill.DEFENCE.getId(), 1 },
- { Skill.HITPOINTS.getId(), 99 },
- { Skill.RANGED.getId(), 99 },
- { Skill.MAGIC.getId(), 99 },
- { Skill.PRAYER.getId(), 52 },
- };
- public static final int[][] PURE_HYBRID_STATS = new int[][] {
- { Skill.ATTACK.getId(), 60 },
- { Skill.STRENGTH.getId(), 99 },
- { Skill.DEFENCE.getId(), 1 },
- { Skill.HITPOINTS.getId(), 99 },
- { Skill.RANGED.getId(), 99 },
- { Skill.MAGIC.getId(), 99 },
- { Skill.PRAYER.getId(), 52 },
- };
- public static final int[][] MAIN_MELEE_STATS = new int[][] {
- { Skill.ATTACK.getId(), 99 },
- { Skill.STRENGTH.getId(), 99 },
- { Skill.DEFENCE.getId(), 99 },
- { Skill.HITPOINTS.getId(), 99 },
- { Skill.RANGED.getId(), 99 },
- { Skill.MAGIC.getId(), 99 },
- { Skill.PRAYER.getId(), 99 },
- };
- public static final int[][] MAIN_RANGE_STATS = new int[][] {
- { Skill.ATTACK.getId(), 99 },
- { Skill.STRENGTH.getId(), 99 },
- { Skill.DEFENCE.getId(), 99 },
- { Skill.HITPOINTS.getId(), 99 },
- { Skill.RANGED.getId(), 99 },
- { Skill.MAGIC.getId(), 99 },
- { Skill.PRAYER.getId(), 99 },
- };
- public static final int[][] MAIN_HYBRID_STATS = new int[][] {
- { Skill.ATTACK.getId(), 99 },
- { Skill.STRENGTH.getId(), 99 },
- { Skill.DEFENCE.getId(), 99 },
- { Skill.HITPOINTS.getId(), 99 },
- { Skill.RANGED.getId(), 99 },
- { Skill.MAGIC.getId(), 99 },
- { Skill.PRAYER.getId(), 99 },
- };
- public static final int[][] ZERKER_MELEE_STATS = new int[][] {
- { Skill.ATTACK.getId(), 75 },
- { Skill.STRENGTH.getId(), 99 },
- { Skill.DEFENCE.getId(), 45 },
- { Skill.HITPOINTS.getId(), 99 },
- { Skill.RANGED.getId(), 1 },
- { Skill.MAGIC.getId(), 99 },
- { Skill.PRAYER.getId(), 52 },
- };
- /**
- * Holds all the gear data.
- *
- * @author Daniel
- *
- */
- public enum GearData {
- // pure melee stats
- // 1 attack
- // 1 str
- // 1 def
- // 1 hp
- // 1 magic
- // 1 range
- PURE_MELEE("Pure Melee", "Oldschool-PK", 224178, new GameItem[] { new GameItem(2436), new GameItem(2440), new GameItem(3024), new GameItem(3024), new GameItem(5698), new GameItem(385), new GameItem(385), new GameItem(3144), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(3144), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(3144), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(3144), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(385) }, new GameItem[] { new GameItem(1153), new GameItem(4373), new GameItem(1725), new GameItem(4587), new GameItem(1115), new GameItem(3842), new GameItem(1067), new GameItem(7458), new GameItem(3105), new GameItem(2550) }, PURE_MELEE_STATS ),
- PURE_RANGE("Pure Range", "Oldschool-PK", 224179, new GameItem[] { new GameItem(9185), new GameItem(9144, 100), new GameItem(385), new GameItem(3144), new GameItem(3844), new GameItem(385), new GameItem(385), new GameItem(3144), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(3144), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(2444), new GameItem(6685), new GameItem(3024), new GameItem(3024) }, new GameItem[] { new GameItem(658), new GameItem(10499), new GameItem(1712), new GameItem(861), new GameItem(6107), new GameItem(2497), new GameItem(7458), new GameItem(628), new GameItem(2550), new GameItem(892, 150) }, PURE_RANGE_STATS),
- PURE_HYBRID("Pure Hybrid", "Oldschool-PK", 224180, new GameItem[] { new GameItem(10499), new GameItem(9185), new GameItem(4587), new GameItem(385), new GameItem(2497), new GameItem(1725), new GameItem(5698), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(3144), new GameItem(3144), new GameItem(3144), new GameItem(6685), new GameItem(2436), new GameItem(2440), new GameItem(3024), new GameItem(3024), new GameItem(2444), new GameItem(560, 500), new GameItem(555, 750), new GameItem(565, 500) }, new GameItem[] { new GameItem(662), new GameItem(2412), new GameItem(1712), new GameItem(4675), new GameItem(6107), new GameItem(3840), new GameItem(6107), new GameItem(7458), new GameItem(632), new GameItem(2550), new GameItem(9144, 100) }, PURE_HYBRID_STATS),
- MAIN_MELEE("Main Melee", "Oldschool-PK", 224182, new GameItem[] { new GameItem(2436), new GameItem(2440), new GameItem(2442), new GameItem(3024), new GameItem(3024), new GameItem(5698), new GameItem(385), new GameItem(3144), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(3144), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(3144), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(3144), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(560, 500), new GameItem(557, 500), new GameItem(9075, 500), }, new GameItem[] { new GameItem(10828), new GameItem(4345), new GameItem(1725), new GameItem(4587), new GameItem(1127), new GameItem(1201), new GameItem(1079), new GameItem(7462), new GameItem(4131), new GameItem(2550), }, MAIN_MELEE_STATS),
- MAIN_RANGE("Main Range", "Oldschool-PK", 224183, new GameItem[] { new GameItem(2444), new GameItem(2442), new GameItem(3024), new GameItem(3024), new GameItem(9185), new GameItem(9144, 100), new GameItem(3122), new GameItem(3144), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(3144), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(3144), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(3144), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(560, 500), new GameItem(557, 500), new GameItem(9075, 500), }, new GameItem[] { new GameItem(10828), new GameItem(10499), new GameItem(1712), new GameItem(861), new GameItem(2503), new GameItem(1079), new GameItem(7462), new GameItem(3105), new GameItem(2550), new GameItem(892, 150), }, MAIN_RANGE_STATS),
- MAIN_HYBRID("Main Hybrid", "Oldschool-PK", 224184, new GameItem[] { new GameItem(4587), new GameItem(1725), new GameItem(1149), new GameItem(1127), new GameItem(2503), new GameItem(1201), new GameItem(4131), new GameItem(4585), new GameItem(385), new GameItem(1215), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(3024), new GameItem(3024), new GameItem(3024), new GameItem(560, 500), new GameItem(6685), new GameItem(6685), new GameItem(6685), new GameItem(555, 500), new GameItem(2436), new GameItem(2440), new GameItem(2442), new GameItem(565, 500), }, new GameItem[] { new GameItem(10828), new GameItem(2412), new GameItem(1712), new GameItem(4675), new GameItem(4101), new GameItem(3842), new GameItem(4093), new GameItem(7462), new GameItem(2579), new GameItem(2550), }, MAIN_HYBRID_STATS),
- ZERKER_MELEE("Zeker Melee", "Oldschool-PK", 224186, new GameItem[] { new GameItem(1215), new GameItem(385), new GameItem(385), new GameItem(3144), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(3144), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(3144), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(3144), new GameItem(385), new GameItem(385), new GameItem(385), new GameItem(560, 500), new GameItem(385), new GameItem(3024), new GameItem(3024), new GameItem(9075, 500), new GameItem(2436), new GameItem(2442), new GameItem(2440), new GameItem(557, 500), }, new GameItem[] { new GameItem(3751), new GameItem(4319), new GameItem(1725), new GameItem(4587), new GameItem(1127), new GameItem(1201), new GameItem(1079), new GameItem(7460), new GameItem(3105), new GameItem(2550), }, ZERKER_MELEE_STATS),
- // these require no stats
- FOOD("Food", "Oldschool-PK", 224188, new GameItem[] { new GameItem(386, 1000), new GameItem(7061, 1000), new GameItem(3145, 1000) }, new GameItem[] {}),
- POTION("Potions", "Oldschool-PK", 224189, new GameItem[] { new GameItem(2436, 1000), new GameItem(2440, 1000), new GameItem(2442, 1000), new GameItem(2444, 1000), new GameItem(3040, 1000), new GameItem(3024, 1000), new GameItem(6685, 1000), }, new GameItem[] {}),
- RUNES("Runes", "Oldschool-PK", 224190, new GameItem[] { new GameItem(554, 1000), new GameItem(555, 1000), new GameItem(556, 1000), new GameItem(557, 1000), new GameItem(558, 1000), new GameItem(559, 1000), new GameItem(560, 1000), new GameItem(561, 1000), new GameItem(562, 1000), new GameItem(563, 1000), new GameItem(564, 1000), new GameItem(565, 1000), new GameItem(9075, 1000) }, new GameItem[] {}),
- BARRAGE_RUNES("Barrage Runes", "Oldschool-PK", 224191, new GameItem[] { new GameItem(565, 500), new GameItem(560, 500), new GameItem(555, 500), }, new GameItem[] {}),
- VENGEANCE_RUNES("Vengeance Runes", "Oldschool-PK", 224192, new GameItem[] { new GameItem(9075, 500), new GameItem(560, 500), new GameItem(557, 500), }, new GameItem[] {}),
- /* Custom */
- ASAP_BRIDDIN("ASAP Briddin", "ASAP (Nuncers)", -7998, new GameItem[] { new GameItem(5698), new GameItem(1127), new GameItem(3144), new GameItem(2442), new GameItem(4587), new GameItem(1079), new GameItem(3144), new GameItem(3024), new GameItem(6969), new GameItem(10386), new GameItem(3144), new GameItem(3024), new GameItem(6969), new GameItem(6969), new GameItem(6969), new GameItem(3040), new GameItem(6969), new GameItem(6969), new GameItem(6969), new GameItem(2440), new GameItem(6969), new GameItem(6969), new GameItem(6969), new GameItem(2436), new GameItem(555, 10000), new GameItem(560, 10000), new GameItem(565, 10000), new GameItem(6969), }, new GameItem[] { new GameItem(10828), new GameItem(2412), new GameItem(1704), new GameItem(4675), new GameItem(4101), new GameItem(12612), new GameItem(4113), new GameItem(7462), new GameItem(3105), new GameItem(2550) }),
- PLACE_HOLDER("Hybridderino", "ReallyABlunt", -7997, new GameItem[] { new GameItem(1127), new GameItem(4587), new GameItem(10370), new GameItem(391), new GameItem(4585), new GameItem(1201), new GameItem(10828), new GameItem(2436), new GameItem(391), new GameItem(2659), new GameItem(5698), new GameItem(2440), new GameItem(391), new GameItem(391), new GameItem(3024), new GameItem(3040), new GameItem(391), new GameItem(391), new GameItem(3024), new GameItem(6685), new GameItem(391), new GameItem(391), new GameItem(391), new GameItem(6685), new GameItem(566, 3000), new GameItem(565, 3000), new GameItem(560, 3000), new GameItem(555, 3000) }, new GameItem[] { new GameItem(4109), new GameItem(2414), new GameItem(1704), new GameItem(4675), new GameItem(4101), new GameItem(12612), new GameItem(4113), new GameItem(7462), new GameItem(3105), new GameItem(2550) }),
- // PLACE_HOLDER("", "", -7998, new GameItem[] { }, new GameItem[] { }),
- ;
- public static GearData forButton(int button) {
- return gear.get(Integer.valueOf(button));
- }
- private final String name;
- private final String author;
- private final int button;
- private final GameItem[] inventory;
- private final GameItem[] equipment;
- private int[][] stats;
- private GearData(String name, String author, int button, GameItem[] inventory, GameItem[] equipment) {
- this(name, author, button, inventory, equipment, null);
- }
- private GearData(String name, String author, int button, GameItem[] inventory, GameItem[] equipment, int[][] stats) {
- this.name = name;
- this.author = author;
- this.button = button;
- this.inventory = inventory;
- this.equipment = equipment;
- this.stats = stats;
- }
- public int[][] getStats() {
- return stats;
- }
- public String getAuthor() {
- return author;
- }
- public GameItem[] getEquipment() {
- return equipment;
- }
- public GameItem[] getInventory() {
- return inventory;
- }
- public String getName() {
- return name;
- }
- }
- /**
- * The single logger for this class.
- */
- private static final Logger logger = Logger.getLogger(PremadeGear.class.getName());
- /**
- * Map which will hold the gear data.
- */
- private static Map<Integer, GearData> gear = new HashMap<Integer, GearData>();
- /**
- * Declares all the gear data into the map.
- */
- static {
- for (final GearData data : GearData.values()) {
- gear.put(data.button, data);
- }
- logger.info("Loaded a total of " + gear.size() + " pre-made gear sets.");
- }
- /**
- * Opens the pre-made gear set interface.
- *
- * @param player
- */
- public static void open(Player player) {
- clickButton(player, player.getPremadeButton() == 0 ? -8014 : player.getPremadeButton());
- String[] text = {
- "<col=ff9040>Pure:",
- " Melee",
- " Range",
- " Hybrid",
- "<col=ff9040>Main:",
- " Melee",
- " Range",
- " Hybrid",
- "<col=ff9040>Zerker:",
- " Melee",
- "<col=ff9040>Misc:",
- " Food",
- " Potions",
- " Runes",
- " Barrage Runes",
- " Venge Runes",
- "<col=ff9040>Custom:",
- " ASAP Briddin",
- " Hybridderino",
- "",
- };
- for (int i = 57521; i < 57521 + text.length; i++) {
- player.getPA().sendFrame126(text[i - 57521], i);
- }
- player.getPA().showInterface(57500);
- }
- /**
- * Handles clicking buttons on the interface.
- *
- * @param player
- * @param button
- * @return
- */
- public static boolean clickButton(Player player, int button) {
- if (button == 224167) {
- spawn(player);
- return true;
- }
- final GearData gear = GearData.forButton(button);
- if (gear == null) {
- return false;
- }
- player.setPremadeButton(button);
- player.getPA().sendFrame126(gear.name, 57506);
- player.getPA().sendFrame126("</col>Author: <col=D94C4C>" + gear.getAuthor(), 57507);
- send(player, 57509, gear.inventory);
- GameItem[] temp = new GameItem[15];
- GameItem[] ordered = new GameItem[15];
- for (int index = 0, slot = 0; index < 15; index++) {
- if (slot >= gear.getEquipment().length) {
- continue;
- }
- if (index == 0 || index == 2 || index == 9 || index == 11) {
- continue;
- }
- final GameItem item = gear.getEquipment()[slot++];
- temp[ItemDefinition.forId(item.getId()).getEquipmentSlot()] = item;
- }
- ordered[1] = temp[Player.playerHat];
- ordered[3] = temp[Player.playerCape];
- ordered[4] = temp[Player.playerAmulet];
- ordered[5] = temp[Player.playerArrows];
- ordered[6] = temp[Player.playerWeapon];
- ordered[7] = temp[Player.playerChest];
- ordered[8] = temp[Player.playerShield];
- ordered[10] = temp[Player.playerLegs];
- ordered[12] = temp[Player.playerHands];
- ordered[13] = temp[Player.playerFeet];
- ordered[14] = temp[Player.playerRing];
- send(player, 57510, ordered);
- /*player.setSidebarInterface(6, 29999); // lunar
- player.playerMagicBook = 2;
- player.getPA().resetAutocast();
- player.getItems().updateInventory();
- player.getPA().requestUpdates();
- player.getCombat().resetPrayers();
- player.vengOn = false;*/
- temp = null;
- ordered = null;
- return true;
- }
- private static void send(Player player, int interfaceId, GameItem[] items) {
- if (player.getOutStream() != null && player != null) {
- player.getOutStream().createFrameVarSizeWord(53);
- player.getOutStream().writeWord(interfaceId);
- player.getOutStream().writeWord(items.length);
- for (int i = 0; i < items.length; i++) {
- GameItem item = items[i] == null ? new GameItem(-1, 0) : items[i];
- if (item.getAmount() > 254) {
- player.getOutStream().writeByte(255);
- player.getOutStream().writeDWord_v2(item.getAmount());
- } else {
- player.getOutStream().writeByte(item.getAmount());
- }
- player.getOutStream().writeWordBigEndianA(item.getId() + 1);
- }
- player.getOutStream().endFrameVarSizeWord();
- player.flushOutStream();
- }
- }
- /**
- * Handles spawning the gear.
- *
- * @param player
- */
- public static void spawn(Player player) {
- final GearData gear = GearData.forButton(player.getPremadeButton());
- if (gear == null) {
- return;
- }
- boolean banked = false;
- // set to banking so we can deposit
- player.isBanking = true;
- for (int index = 0; index < player.playerItems.length; index++) {
- GameItem item = new GameItem(player.playerItems[index], player.playerItemsN[index]);
- if (item.getId() > 0) {
- player.getItems().addToBank(item.getId() - 1, item.getAmount(), false);
- banked = true;
- }
- }
- // items deposited
- player.isBanking = false;
- if (gear.getEquipment().length != 0) {
- player.isBanking = true;
- for (int index = 0; index < player.playerEquipment.length; index++) {
- GameItem item = new GameItem(player.playerEquipment[index], player.playerEquipmentN[index]);
- if (item.getId() > 0) {
- player.getItems().addEquipmentToBank(item.getId(), index, item.getAmount(), true);
- banked = true;
- }
- }
- player.isBanking = false;
- for (GameItem item : gear.getEquipment()) {
- if (item == null) {
- continue;
- }
- player.getItems().wearItem(item.getId(), item.getAmount(), ItemDefinition.forId(item.getId()).getEquipmentSlot());
- }
- }
- int slot = 0;
- for (GameItem i : gear.getInventory()) {
- player.playerItems[slot] = i.getId()+1;
- player.playerItemsN[slot++] = i.getAmount();
- }
- player.getItems().resetItems(3214);
- player.getItems().getBonus();
- int[][] skills = gear.getStats();
- if(skills != null) {
- for(int i = 0; i < skills.length; i++) {
- int skillId = skills[i][0];
- int level = skills[i][1];
- player.playerLevel[skillId] = level;
- player.playerXP[skillId] = player.getPlayerAssistant().getXPForLevel(level + 1);
- player.getPA().refreshSkill(skillId);
- }
- }
- // ready now
- for (int i = 0; i < 7; i++) {
- player.getPA().setSkillLevel(i, player.playerLevel[i], player.playerXP[i]);
- player.getPA().refreshSkill(i);
- }
- for (int p = 0; p < player.PRAYER.length; p++) { // reset prayer glows
- player.prayerActive[p] = false;
- player.getPA().sendFrame36(player.PRAYER_GLOW[p], 0);
- }
- player.getItems().resetBonus();
- player.getItems().getBonus();
- player.getItems().writeBonus();
- if (banked) {
- player.sendMessage("Your carried items have been banked.");
- }
- player.sendMessage("You have spawned the '" + gear.getName() + "' pre-made set.");
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement