RuneHive-Game
Loading...
Searching...
No Matches
com.runehive.content.overrides.Overrides Class Reference
Collaboration diagram for com.runehive.content.overrides.Overrides:

Public Member Functions

void addOverride (int itemId)
Item get (int slot)
FightType getFightType (Item item)
boolean handleButtons (int button)
boolean hasOverride (int slot)
void openInterface ()
record OverridePreset (Item... items)
 Overrides (Player player)
void removeOverride (int itemId)

Public Attributes

List< Integer > allOverrides = new ArrayList<>()
Map< Integer, ItemcurrentOverrides = new HashMap<>()
Map< String, OverridePresetpresets = new HashMap<>()

Package Attributes

final int AMULET_CONTAINER = 60133
final int AMULET_SLOT_BTN = -5413
final int BODY_CONTAINER = 60135
final int BODY_SLOT_BTN = -5410
final int BOOTS_CONTAINER = 60139
final int BOOTS_SLOT_BTN = -5407
final Map< Integer, Integer > buttons = new HashMap<>()
final int CAPE_CONTAINER = 60132
final int CAPE_SLOT_BTN = -5414
EquipmentType filter = EquipmentType.NOT_WIELDABLE
String filterName = "All"
final int GLOVES_CONTAINER = 60138
final int GLOVES_SLOT_BTN = -5406
final int HEAD_CONTAINER = 60131
final int HEAD_SLOT_BTN = -5415
final int INFO_BTN = -5286
final int INFO_CLOSE_BTN = -5270
final int INFO_GO_BACK_BTN = -5267
final int INFO_INTERFACE = 60260
final int LEGS_CONTAINER = 60137
final int LEGS_SLOT_BTN = -5408
final int MANAGE_BTN = -5395
boolean managingOverrides = false
final int OPEN_OVERRIDE_BTN = 27659
final int OVERRIDE_INTERFACE = 60106
final Map< Integer, String > presetButtons = new HashMap<>()
final int SAVE_PRESET_BTN = -5422
final int SHIELD_CONTAINER = 60136
final int SHIELD_SLOT_BTN = -5409
final int VIEW_ALL_BTN = -5428
final int VIEW_PRESET_BTN = -5417
final int WEAPON_CONTAINER = 60134
final int WEAPON_SLOT_BTN = -5411

Private Member Functions

void createPreset (String presetName)
void deleteOverride (Item item)
void deletePreset (String presetName)
int determineContainer (int itemId)
void drawPresets ()
void drawText ()
void equipOverride (Item item)
boolean hasShieldOverride ()
boolean hasWeaponOverride ()
void loadContainers ()
void loadPreset (String presetName)
void manageItemDialogue (Item item)
void manageModeDialogue ()
void managePresetDialogue (String presetName)
void removeAllOverrides ()
void renamePreset (String currentName, String newName)
void setFilter (EquipmentType equipmentType, String name)
SendConfig toggleConfig (int itemId, String toggle)
void wipeInterface ()

Private Attributes

final Player player

Detailed Description

Definition at line 16 of file Overrides.java.

Constructor & Destructor Documentation

◆ Overrides()

com.runehive.content.overrides.Overrides.Overrides ( Player player)

Definition at line 19 of file Overrides.java.

19 {
20 this.player = player;
21 }

References player.

Member Function Documentation

◆ addOverride()

void com.runehive.content.overrides.Overrides.addOverride ( int itemId)

Definition at line 87 of file Overrides.java.

87 {
88 final var item = new Item(itemId);
89 final var canEquipItem = item.isEquipable();
90 if (!canEquipItem) {
91 player.dialogueFactory.sendItem("Keepsake Overrides", "You can only keepsake equipable items.", itemId).execute();
92 return;
93 }
94 final var unallowedSlot = item.getEquipmentType() == EquipmentType.RING || item.getEquipmentType() == EquipmentType.ARROWS;
95 if (unallowedSlot) {
96 player.dialogueFactory.sendItem("Keepsake Overrides", "You cannot keepsake this item.", itemId).execute();
97 return;
98 }
99 if (allOverrides.contains(itemId)) {
100 player.dialogueFactory.sendItem("Keepsake Overrides", "You already have this as an override.", itemId).execute();
101 return;
102 }
103 if (allOverrides.size() > 44) {
104 player.dialogueFactory.sendItem("Keepsake Overrides", "You can only have 45 overrides.", itemId).execute();
105 return;
106 }
107 if (Area.inWilderness(player)) {
108 player.message("You can't do this in the wilderness.");
109 return;
110 }
111
112 player.dialogueFactory.sendStatement(
113 "Are you sure you want to keepsake the " + item.getName() + "?", "You will @red@not@bla@ be able to reclaim it.").sendOption(
114 "Yes, keepsake the " + item.getName(), () -> {
115 allOverrides.add(itemId);
116 player.inventory.remove(2399, 1);
117 player.inventory.remove(itemId, 1);
118 },
119 "Nevermind", () -> player.dialogueFactory.clear()).execute();
120 }

References allOverrides, com.runehive.game.world.items.containers.equipment.EquipmentType.ARROWS, com.runehive.game.world.position.Area.inWilderness(), player, and com.runehive.game.world.items.containers.equipment.EquipmentType.RING.

Here is the call graph for this function:

◆ createPreset()

void com.runehive.content.overrides.Overrides.createPreset ( String presetName)
private

Definition at line 232 of file Overrides.java.

232 {
233 if (presets.containsKey(presetName)) {
234 player.message("You already have a preset named " + presetName + ".");
235 return;
236 }
237 Item[] presetItems = new Item[11];
238 currentOverrides.forEach((k, v) -> presetItems[k] = v);
239
240 presets.put(presetName, new OverridePreset(presetItems));
241 drawText();
242 }

References currentOverrides, drawText(), OverridePreset(), player, and presets.

Here is the call graph for this function:

◆ deleteOverride()

void com.runehive.content.overrides.Overrides.deleteOverride ( Item item)
private

Definition at line 122 of file Overrides.java.

122 {
123 if (!allOverrides.contains(item.getId())) {
124 player.message("Error deleting override.");
125 return;
126 }
127
128 allOverrides.remove(Integer.valueOf(item.getId()));
129
130 //Remove override if it is currently equipped
131 if (currentOverrides.containsValue(item)) {
132 removeOverride(item.getId());
133 }
134
135 //Remove preset if it contains the deleted override
136 for (int i = 0; i < presets.size(); i++) {
137 final var preset = presets.get(presets.keySet().toArray()[i].toString());
138 if (Arrays.stream(preset.items).anyMatch(presetItem -> presetItem != null && presetItem.getId() == item.getId())) {
139 presets.remove(presets.keySet().toArray()[i].toString());
140 player.message("A preset has been deleted as it contained a deleted override.");
141 }
142 }
143
144 drawText();
145 }
final int getId()
Gets the identification of this item.
Definition Item.java:324

References allOverrides, currentOverrides, drawText(), com.runehive.game.world.items.Item.getId(), player, presets, and removeOverride().

Referenced by manageItemDialogue().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ deletePreset()

void com.runehive.content.overrides.Overrides.deletePreset ( String presetName)
private

Definition at line 276 of file Overrides.java.

276 {
277 if (!presets.containsKey(presetName)) {
278 player.message("Error deleting preset: " + presetName);
279 return;
280 }
281
282 presets.remove(presetName);
283 player.message("Preset deleted.");
284 drawText();
285 }

References drawText(), player, and presets.

Referenced by managePresetDialogue().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ determineContainer()

int com.runehive.content.overrides.Overrides.determineContainer ( int itemId)
private

Definition at line 474 of file Overrides.java.

474 {
475 final var equipmentSlot = new Item(itemId).getDefinition().getEquipmentType();
476 return switch (equipmentSlot) {
477 case HAT, HELM, MASK, FACE -> HEAD_CONTAINER;
478 case CAPE -> CAPE_CONTAINER;
479 case AMULET -> AMULET_CONTAINER;
480 case WEAPON -> WEAPON_CONTAINER;
481 case BODY, TORSO -> BODY_CONTAINER;
482 case SHIELD -> SHIELD_CONTAINER;
483 case LEGS -> LEGS_CONTAINER;
484 case GLOVES -> GLOVES_CONTAINER;
485 case BOOTS -> BOOTS_CONTAINER;
486 default -> -1;
487 };
488 }

References AMULET_CONTAINER, BODY_CONTAINER, BOOTS_CONTAINER, CAPE_CONTAINER, com.runehive.game.world.items.Item.getDefinition(), GLOVES_CONTAINER, HEAD_CONTAINER, LEGS_CONTAINER, SHIELD_CONTAINER, and WEAPON_CONTAINER.

Referenced by equipOverride(), loadContainers(), and removeOverride().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ drawPresets()

void com.runehive.content.overrides.Overrides.drawPresets ( )
private

Definition at line 71 of file Overrides.java.

71 {
72 for (int i = 0; i < presets.size(); i++) {
73 final var presetName = presets.keySet().toArray()[i].toString();
74 player.send(new SendString(presetName, 60146 + (i * 2)));
75 presetButtons.put(-5391 + (i * 2), presetName);
76 }
77 }

References player, presetButtons, and presets.

Referenced by drawText().

Here is the caller graph for this function:

◆ drawText()

void com.runehive.content.overrides.Overrides.drawText ( )
private

Definition at line 48 of file Overrides.java.

48 {
49 wipeInterface();
50 player.send(new SendString(filterName + " Overrides", 60113));
51
52 if (filterName.equals("Preset")) {
53 drawPresets();
54 return;
55 }
56
57 int slot = 0;
58 for (int i = 0; i < allOverrides.size(); i++) {
59 final var equipmentSlot = new Item(allOverrides.get(i)).getDefinition().getEquipmentType().getNewItemDefName();
60 if (!Objects.equals(equipmentSlot, filter.getNewItemDefName()) && filter != EquipmentType.NOT_WIELDABLE) {
61 continue;
62 }
63
64 final var itemName = new Item(allOverrides.get(i)).getName();
65 player.send(new SendString(itemName, 60146 + (slot * 2)));
66 buttons.put(-5391 + (slot * 2), allOverrides.get(i));
67 slot++;
68 }
69 }

References allOverrides, buttons, drawPresets(), filter, filterName, com.runehive.game.world.items.Item.getDefinition(), com.runehive.game.world.items.Item.getName(), com.runehive.game.world.items.containers.equipment.EquipmentType.NOT_WIELDABLE, player, and wipeInterface().

Referenced by createPreset(), deleteOverride(), deletePreset(), openInterface(), renamePreset(), and setFilter().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ equipOverride()

void com.runehive.content.overrides.Overrides.equipOverride ( Item item)
private

Definition at line 437 of file Overrides.java.

437 {
438 player.send(toggleConfig(item.getId(), "off"));
439 player.send(new SendItemOnInterface(determineContainer(item.getId()), item));
440
441 final var equipmentType = item.getDefinition().getEquipmentType();
442 currentOverrides.remove(equipmentType.getSlot());
443 currentOverrides.put(equipmentType.getSlot(), item);
444 player.updateFlags.add(UpdateFlag.APPEARANCE);
445 player.equipment.updateAnimation();
446 }
ItemDefinition getDefinition()
Gets the item definition for the item identifier.
Definition Item.java:315

References com.runehive.game.world.entity.mob.UpdateFlag.APPEARANCE, currentOverrides, determineContainer(), com.runehive.game.world.items.Item.getDefinition(), com.runehive.game.world.items.Item.getId(), player, and toggleConfig().

Referenced by handleButtons(), loadPreset(), and manageItemDialogue().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ get()

Item com.runehive.content.overrides.Overrides.get ( int slot)

Definition at line 228 of file Overrides.java.

228 {
229 return currentOverrides.get(slot);
230 }

References currentOverrides.

Referenced by com.runehive.game.world.entity.combat.strategy.player.PlayerMeleeStrategy.getAttackAnimation(), and com.runehive.game.world.entity.combat.strategy.player.PlayerRangedStrategy.getAttackAnimation().

Here is the caller graph for this function:

◆ getFightType()

FightType com.runehive.content.overrides.Overrides.getFightType ( Item item)

Definition at line 287 of file Overrides.java.

287 {
288 WeaponInterface weapon = item == null ? null : item.getWeaponInterface();
289 if (weapon == null) weapon = WeaponInterface.UNARMED;
290
291 FightType[] oldTypes = player.getWeapon().getFightTypes();
292 FightType[] newTypes = weapon.getFightTypes();
293 FightType result = null;
294
295 for (int index = 0; index < oldTypes.length; index++) {
296 if (newTypes.length == index) {
297 break;
298 }
299
300 if (newTypes[index].getStyle().equals(FightStyle.DEFENSIVE)
301 && player.getCombat().getFightType().getStyle().equals(FightStyle.DEFENSIVE)) {
302 result = newTypes[index];
303 break;
304 }
305
306 if (oldTypes[index] == player.getCombat().getFightType()) {
307 boolean oldControlled = oldTypes[index].getStyle().equals(FightStyle.CONTROLLED);
308 boolean newControlled = newTypes[index].getStyle().equals(FightStyle.CONTROLLED);
309 if (newControlled != oldControlled) {
310 continue;
311 }
312 result = newTypes[index];
313 break;
314 }
315 }
316
317 if (result == null) {
318 if (player.getCombat().getFightType().getStyle().equals(FightStyle.DEFENSIVE)) {
319 result = newTypes[newTypes.length - 1];
320 } else {
321 result = newTypes[1];
322 }
323 }
324 return result;
325 }
WeaponInterface getWeaponInterface()
Definition Item.java:488
val index

References com.runehive.game.world.entity.combat.attack.FightStyle.CONTROLLED, com.runehive.game.world.entity.combat.attack.FightStyle.DEFENSIVE, com.runehive.game.world.entity.combat.weapon.WeaponInterface.getFightTypes(), com.runehive.game.world.entity.combat.attack.FightType.getStyle(), com.runehive.game.world.items.Item.getWeaponInterface(), player, and com.runehive.game.world.entity.combat.weapon.WeaponInterface.UNARMED.

Referenced by com.runehive.game.world.entity.combat.strategy.player.PlayerMeleeStrategy.getAttackAnimation(), and com.runehive.game.world.entity.combat.strategy.player.PlayerRangedStrategy.getAttackAnimation().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ handleButtons()

boolean com.runehive.content.overrides.Overrides.handleButtons ( int button)

Definition at line 327 of file Overrides.java.

327 {
328 if (presetButtons.containsKey(button)) {
329 final var presetName = presetButtons.get(button);
330 if (managingOverrides) {
331 managePresetDialogue(presetName);
332 return true;
333 }
334 loadPreset(presetName);
335 return true;
336 }
337 if (buttons.containsKey(button)) {
338 final var item = new Item(buttons.get(button));
339 if (managingOverrides) {
340 manageItemDialogue(item);
341 return true;
342 }
343 equipOverride(item);
344 return true;
345 }
346 switch (button) {
347 case INFO_BTN -> player.interfaceManager.open(INFO_INTERFACE);
348 case INFO_CLOSE_BTN -> player.interfaceManager.close();
349 case VIEW_ALL_BTN, INFO_GO_BACK_BTN, OPEN_OVERRIDE_BTN -> openInterface();
350 case HEAD_SLOT_BTN -> setFilter(EquipmentType.HELM, "Head");
351 case AMULET_SLOT_BTN -> setFilter(EquipmentType.AMULET, "Amulet");
352 case BODY_SLOT_BTN -> setFilter(EquipmentType.BODY, "Body");
353 case LEGS_SLOT_BTN -> setFilter(EquipmentType.LEGS, "Leg");
354 case BOOTS_SLOT_BTN -> setFilter(EquipmentType.BOOTS, "Boot");
355 case CAPE_SLOT_BTN -> setFilter(EquipmentType.CAPE, "Cape");
356 case WEAPON_SLOT_BTN -> setFilter(EquipmentType.WEAPON, "Weapon");
357 case GLOVES_SLOT_BTN -> setFilter(EquipmentType.GLOVES, "Glove");
358 case SHIELD_SLOT_BTN -> setFilter(EquipmentType.SHIELD, "Shield");
359 case VIEW_PRESET_BTN -> setFilter(EquipmentType.NOT_WIELDABLE, "Preset");
360 case MANAGE_BTN -> manageModeDialogue();
361
362 case SAVE_PRESET_BTN -> {
363 if (presets.size() > 4) {
364 player.message("You already have the maximum amount of presets saved.");
365 return true;
366 }
367 player.send(new SendInputMessage("Enter name for preset:", 30, this::createPreset));
368 return true;
369 }
370 }
371 return false;
372 }

References com.runehive.game.world.items.containers.equipment.EquipmentType.AMULET, AMULET_SLOT_BTN, com.runehive.game.world.items.containers.equipment.EquipmentType.BODY, BODY_SLOT_BTN, com.runehive.game.world.items.containers.equipment.EquipmentType.BOOTS, BOOTS_SLOT_BTN, buttons, com.runehive.game.world.items.containers.equipment.EquipmentType.CAPE, CAPE_SLOT_BTN, equipOverride(), com.runehive.game.world.items.containers.equipment.EquipmentType.GLOVES, GLOVES_SLOT_BTN, HEAD_SLOT_BTN, com.runehive.game.world.items.containers.equipment.EquipmentType.HELM, INFO_BTN, INFO_CLOSE_BTN, INFO_GO_BACK_BTN, INFO_INTERFACE, com.runehive.game.world.items.containers.equipment.EquipmentType.LEGS, LEGS_SLOT_BTN, loadPreset(), MANAGE_BTN, manageItemDialogue(), manageModeDialogue(), managePresetDialogue(), managingOverrides, com.runehive.game.world.items.containers.equipment.EquipmentType.NOT_WIELDABLE, OPEN_OVERRIDE_BTN, openInterface(), player, presetButtons, presets, SAVE_PRESET_BTN, setFilter(), com.runehive.game.world.items.containers.equipment.EquipmentType.SHIELD, SHIELD_SLOT_BTN, VIEW_ALL_BTN, VIEW_PRESET_BTN, com.runehive.game.world.items.containers.equipment.EquipmentType.WEAPON, and WEAPON_SLOT_BTN.

Here is the call graph for this function:

◆ hasOverride()

boolean com.runehive.content.overrides.Overrides.hasOverride ( int slot)

Definition at line 147 of file Overrides.java.

147 {
148 if (Area.inWilderness(player)) {
149 return false;
150 }
151 if (Area.inDuelArena(player)) {
152 return false;
153 }
154 if (!currentOverrides.containsKey(slot)) {
155 return false;
156 }
157
158 if (slot == Equipment.WEAPON_SLOT) {
159 return hasWeaponOverride();
160 /*if (player.equipment.get(Equipment.WEAPON_SLOT) != null) {
161 final var wornWeapon = player.equipment.get(Equipment.WEAPON_SLOT).getRangedDefinition();
162 final var overrideWeapon = currentOverrides.get(Equipment.WEAPON_SLOT).getRangedDefinition();
163 return (wornWeapon.isPresent() || overrideWeapon.isEmpty()) && (overrideWeapon.isPresent() || wornWeapon.isEmpty());
164 } else {
165 return true;
166 }*/
167 }
168
169 if (slot == Equipment.SHIELD_SLOT) {
170 return hasShieldOverride();
171 /* if (player.equipment.get(Equipment.WEAPON_SLOT) != null) {
172 final var wornWeapon = player.equipment.get(Equipment.WEAPON_SLOT);
173 if (currentOverrides.containsKey(Equipment.WEAPON_SLOT)) {
174 if (wornWeapon.getRangedDefinition().isPresent() && wornWeapon.isTwoHanded() && currentOverrides.get(Equipment.WEAPON_SLOT).getRangedDefinition().isEmpty()) {
175 return false;
176 }
177 return !currentOverrides.get(Equipment.WEAPON_SLOT).isTwoHanded();
178 }
179 return !wornWeapon.isTwoHanded();
180 } else if (currentOverrides.containsKey(Equipment.WEAPON_SLOT)) {
181 return !currentOverrides.get(Equipment.WEAPON_SLOT).isTwoHanded();
182 } else {
183 return true;
184 }*/
185 }
186
187 return currentOverrides.containsKey(slot);
188 }

References currentOverrides, hasShieldOverride(), hasWeaponOverride(), com.runehive.game.world.position.Area.inDuelArena(), com.runehive.game.world.position.Area.inWilderness(), player, com.runehive.game.world.items.containers.equipment.Equipment.SHIELD_SLOT, and com.runehive.game.world.items.containers.equipment.Equipment.WEAPON_SLOT.

Referenced by com.runehive.game.world.entity.combat.strategy.player.PlayerMeleeStrategy.getAttackAnimation(), com.runehive.game.world.entity.combat.strategy.player.PlayerRangedStrategy.getAttackAnimation(), and hasWeaponOverride().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ hasShieldOverride()

boolean com.runehive.content.overrides.Overrides.hasShieldOverride ( )
private

Definition at line 211 of file Overrides.java.

211 {
212 final var hasWeapon = player.equipment.get(Equipment.WEAPON_SLOT) != null;
213 final var weaponIs2h = hasWeapon && player.equipment.get(Equipment.WEAPON_SLOT).isTwoHanded();
214
215 final var hasOverrideWeapon = currentOverrides.containsKey(Equipment.WEAPON_SLOT);
216 final var overrideIs2h = hasOverrideWeapon && currentOverrides.get(Equipment.WEAPON_SLOT).isTwoHanded();
217
218 if (weaponIs2h) {
219 return false;
220 }
221 if (overrideIs2h) {
222 return false;
223 }
224
225 return currentOverrides.containsKey(Equipment.SHIELD_SLOT);
226 }

References currentOverrides, player, com.runehive.game.world.items.containers.equipment.Equipment.SHIELD_SLOT, and com.runehive.game.world.items.containers.equipment.Equipment.WEAPON_SLOT.

Referenced by hasOverride().

Here is the caller graph for this function:

◆ hasWeaponOverride()

boolean com.runehive.content.overrides.Overrides.hasWeaponOverride ( )
private

Definition at line 190 of file Overrides.java.

190 {
191 final var hasWeapon = player.equipment.get(Equipment.WEAPON_SLOT) != null;
192 final var weaponIs2h = hasWeapon && player.equipment.get(Equipment.WEAPON_SLOT).isTwoHanded();
193 final var weaponIsRanged = hasWeapon && player.equipment.get(Equipment.WEAPON_SLOT).getRangedDefinition().isPresent();
194
195 final var hasOverride = currentOverrides.containsKey(Equipment.WEAPON_SLOT);
196 final var overrideIs2h = hasOverride && currentOverrides.get(Equipment.WEAPON_SLOT).isTwoHanded();
197 final var overrideIsRanged = hasOverride && currentOverrides.get(Equipment.WEAPON_SLOT).getRangedDefinition().isPresent();
198
199 if (hasWeapon) {
200 if (weaponIs2h && !overrideIs2h || overrideIs2h && !weaponIs2h) {
201 return false;
202 }
203 if (weaponIsRanged && !overrideIsRanged || overrideIsRanged && !weaponIsRanged) {
204 return false;
205 }
206 }
207
208 return hasOverride;
209 }

References currentOverrides, hasOverride(), player, and com.runehive.game.world.items.containers.equipment.Equipment.WEAPON_SLOT.

Referenced by hasOverride().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ loadContainers()

void com.runehive.content.overrides.Overrides.loadContainers ( )
private

Definition at line 450 of file Overrides.java.

450 {
451 currentOverrides.forEach((slot, item) -> {
452 player.send(toggleConfig(item.getId(), "off"));
453 player.send(new SendItemOnInterface(determineContainer(item.getId()), item));
454 });
455 }

References currentOverrides, determineContainer(), player, and toggleConfig().

Referenced by openInterface().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ loadPreset()

void com.runehive.content.overrides.Overrides.loadPreset ( String presetName)
private

Definition at line 244 of file Overrides.java.

244 {
245 if (!presets.containsKey(presetName)) {
246 player.message("Error loading preset: " + presetName);
247 return;
248 }
249
250 removeAllOverrides();
251
252 for (Item item : presets.get(presetName).items) {
253 if (item == null) {
254 continue;
255 }
256 equipOverride(item);
257 }
258 }

References equipOverride(), player, presets, and removeAllOverrides().

Referenced by handleButtons(), and managePresetDialogue().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ manageItemDialogue()

void com.runehive.content.overrides.Overrides.manageItemDialogue ( Item item)
private

Definition at line 386 of file Overrides.java.

386 {
387 player.dialogueFactory.sendOption(
388 "Equip <col=255>" + item.getName()+"</col>", () -> equipOverride(item),
389
390 "@red@Delete " + item.getName(), () -> player.dialogueFactory.sendStatement(
391 "Are you sure you want to delete this override?", "The item will be @red@permanently lost@bla@.").sendOption(
392 "Yes, permanently delete " + item.getName(), () -> deleteOverride(item),
393 "Nevermind", () -> player.dialogueFactory.clear()),
394
395 "Nevermind", () -> player.dialogueFactory.clear()).execute();
396 }

References deleteOverride(), equipOverride(), com.runehive.game.world.items.Item.getName(), and player.

Referenced by handleButtons().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ manageModeDialogue()

void com.runehive.content.overrides.Overrides.manageModeDialogue ( )
private

Definition at line 374 of file Overrides.java.

374 {
375 player.dialogueFactory.sendOption(
376 "Toggle manage mode to " + (managingOverrides ? "@red@off@bla@" : "@gre@on@bla@"), () -> managingOverrides = !managingOverrides,
377
378 "What is manage mode?", () -> player.dialogueFactory.sendStatement(
379 "Manage mode allows you to manage your overrides and presets.",
380 "When manage mode is on, clicking an override or preset will",
381 "open a menu allowing you to equip, delete, or rename it."),
382
383 "Nevermind", () -> player.dialogueFactory.clear()).execute();
384 }

References managingOverrides, and player.

Referenced by handleButtons().

Here is the caller graph for this function:

◆ managePresetDialogue()

void com.runehive.content.overrides.Overrides.managePresetDialogue ( String presetName)
private

Definition at line 398 of file Overrides.java.

398 {
399 player.dialogueFactory.sendOption(
400 "Equip <col=255>" + presetName + "</col>", () -> loadPreset(presetName),
401
402 "Rename preset", () -> {
403 player.dialogueFactory.clear();
404 player.dialogueFactory.onAction(() -> player.send(new SendInputMessage("Enter new preset name:", 30, input -> renamePreset(presetName, input))));
405 },
406
407 "@red@Delete " + presetName, () -> player.dialogueFactory.sendStatement(
408 "Are you sure you want to delete this preset?").sendOption(
409 "Yes, delete " + presetName, () -> deletePreset(presetName),
410 "Nevermind", () -> player.dialogueFactory.clear()),
411
412 "Nevermind", () -> player.dialogueFactory.clear()).execute();
413 }

References deletePreset(), loadPreset(), player, and renamePreset().

Referenced by handleButtons().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ openInterface()

void com.runehive.content.overrides.Overrides.openInterface ( )

Definition at line 36 of file Overrides.java.

36 {
37 if (Area.inWilderness(player)) {
38 player.message("You can't do this in the wilderness.");
39 return;
40 }
41 filter = EquipmentType.NOT_WIELDABLE;
42 filterName = "All";
43 drawText();
44 loadContainers();
45 player.interfaceManager.open(OVERRIDE_INTERFACE);
46 }

References drawText(), filter, filterName, com.runehive.game.world.position.Area.inWilderness(), loadContainers(), com.runehive.game.world.items.containers.equipment.EquipmentType.NOT_WIELDABLE, OVERRIDE_INTERFACE, and player.

Referenced by handleButtons().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ OverridePreset()

record com.runehive.content.overrides.Overrides.OverridePreset ( Item... items)

Definition at line 23 of file Overrides.java.

23{}

Referenced by createPreset().

Here is the caller graph for this function:

◆ removeAllOverrides()

void com.runehive.content.overrides.Overrides.removeAllOverrides ( )
private

Definition at line 431 of file Overrides.java.

431 {
432 while (!currentOverrides.isEmpty()) {
433 removeOverride(currentOverrides.get(currentOverrides.keySet().iterator().next()).getId());
434 }
435 }

References currentOverrides, and removeOverride().

Referenced by loadPreset().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ removeOverride()

void com.runehive.content.overrides.Overrides.removeOverride ( int itemId)

Definition at line 421 of file Overrides.java.

421 {
422 player.send(toggleConfig(itemId, "on"));
423 player.send(new SendItemOnInterface(determineContainer(itemId), new Item(-1)));
424
425 final var equipmentType = new Item(itemId).getDefinition().getEquipmentType();
426 currentOverrides.remove(equipmentType.getSlot());
427 player.updateFlags.add(UpdateFlag.APPEARANCE);
428 player.equipment.updateAnimation();
429 }

References com.runehive.game.world.entity.mob.UpdateFlag.APPEARANCE, currentOverrides, determineContainer(), com.runehive.game.world.items.Item.getDefinition(), player, and toggleConfig().

Referenced by deleteOverride(), and removeAllOverrides().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ renamePreset()

void com.runehive.content.overrides.Overrides.renamePreset ( String currentName,
String newName )
private

Definition at line 260 of file Overrides.java.

260 {
261 if (!presets.containsKey(currentName)) {
262 player.message("Error renaming preset: " + currentName);
263 return;
264 }
265 if (presets.containsKey(newName)) {
266 player.message("You already have a preset named " + newName + ".");
267 return;
268 }
269
270 presets.put(newName, presets.get(currentName));
271 presets.remove(currentName);
272 player.message("Preset renamed to " + newName + ".");
273 drawText();
274 }

References drawText(), player, and presets.

Referenced by managePresetDialogue().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setFilter()

void com.runehive.content.overrides.Overrides.setFilter ( EquipmentType equipmentType,
String name )
private

Definition at line 415 of file Overrides.java.

415 {
416 filter = equipmentType;
417 filterName = name;
418 drawText();
419 }

References drawText(), filter, and filterName.

Referenced by handleButtons().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ toggleConfig()

SendConfig com.runehive.content.overrides.Overrides.toggleConfig ( int itemId,
String toggle )
private

Definition at line 457 of file Overrides.java.

457 {
458 final var configValue = toggle.equals("on") ? 0 : 1;
459 final var equipmentSlot = new Item(itemId).getDefinition().getEquipmentType();
460 return switch (equipmentSlot) {
461 case HAT, HELM, MASK, FACE -> new SendConfig(1300, configValue);
462 case CAPE -> new SendConfig(1301, configValue);
463 case AMULET -> new SendConfig(1302, configValue);
464 case WEAPON -> new SendConfig(1303, configValue);
465 case BODY, TORSO -> new SendConfig(1304, configValue);
466 case SHIELD -> new SendConfig(1305, configValue);
467 case LEGS -> new SendConfig(1306, configValue);
468 case BOOTS -> new SendConfig(1307, configValue);
469 case GLOVES -> new SendConfig(1308, configValue);
470 default -> null;
471 };
472 }

References com.runehive.game.world.items.Item.getDefinition().

Referenced by equipOverride(), loadContainers(), and removeOverride().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ wipeInterface()

void com.runehive.content.overrides.Overrides.wipeInterface ( )
private

Definition at line 79 of file Overrides.java.

79 {
80 for (int i = 0; i < allOverrides.size() + 1; i++) {
81 player.send(new SendString("", 60146 + (i * 2)));
82 }
83 buttons.clear();
84 presetButtons.clear();
85 }

References allOverrides, buttons, player, and presetButtons.

Referenced by drawText().

Here is the caller graph for this function:

Member Data Documentation

◆ allOverrides

List<Integer> com.runehive.content.overrides.Overrides.allOverrides = new ArrayList<>()

Definition at line 26 of file Overrides.java.

Referenced by addOverride(), deleteOverride(), drawText(), and wipeInterface().

◆ AMULET_CONTAINER

final int com.runehive.content.overrides.Overrides.AMULET_CONTAINER = 60133
package

Definition at line 494 of file Overrides.java.

Referenced by determineContainer().

◆ AMULET_SLOT_BTN

final int com.runehive.content.overrides.Overrides.AMULET_SLOT_BTN = -5413
package

Definition at line 507 of file Overrides.java.

Referenced by handleButtons().

◆ BODY_CONTAINER

final int com.runehive.content.overrides.Overrides.BODY_CONTAINER = 60135
package

Definition at line 492 of file Overrides.java.

Referenced by determineContainer().

◆ BODY_SLOT_BTN

final int com.runehive.content.overrides.Overrides.BODY_SLOT_BTN = -5410
package

Definition at line 508 of file Overrides.java.

Referenced by handleButtons().

◆ BOOTS_CONTAINER

final int com.runehive.content.overrides.Overrides.BOOTS_CONTAINER = 60139
package

Definition at line 497 of file Overrides.java.

Referenced by determineContainer().

◆ BOOTS_SLOT_BTN

final int com.runehive.content.overrides.Overrides.BOOTS_SLOT_BTN = -5407
package

Definition at line 510 of file Overrides.java.

Referenced by handleButtons().

◆ buttons

final Map<Integer, Integer> com.runehive.content.overrides.Overrides.buttons = new HashMap<>()
package

Definition at line 29 of file Overrides.java.

Referenced by drawText(), handleButtons(), and wipeInterface().

◆ CAPE_CONTAINER

final int com.runehive.content.overrides.Overrides.CAPE_CONTAINER = 60132
package

Definition at line 495 of file Overrides.java.

Referenced by determineContainer().

◆ CAPE_SLOT_BTN

final int com.runehive.content.overrides.Overrides.CAPE_SLOT_BTN = -5414
package

Definition at line 511 of file Overrides.java.

Referenced by handleButtons().

◆ currentOverrides

Map<Integer, Item> com.runehive.content.overrides.Overrides.currentOverrides = new HashMap<>()

◆ filter

EquipmentType com.runehive.content.overrides.Overrides.filter = EquipmentType.NOT_WIELDABLE
package

Definition at line 32 of file Overrides.java.

Referenced by drawText(), openInterface(), and setFilter().

◆ filterName

String com.runehive.content.overrides.Overrides.filterName = "All"
package

Definition at line 33 of file Overrides.java.

Referenced by drawText(), openInterface(), and setFilter().

◆ GLOVES_CONTAINER

final int com.runehive.content.overrides.Overrides.GLOVES_CONTAINER = 60138
package

Definition at line 496 of file Overrides.java.

Referenced by determineContainer().

◆ GLOVES_SLOT_BTN

final int com.runehive.content.overrides.Overrides.GLOVES_SLOT_BTN = -5406
package

Definition at line 513 of file Overrides.java.

Referenced by handleButtons().

◆ HEAD_CONTAINER

final int com.runehive.content.overrides.Overrides.HEAD_CONTAINER = 60131
package

Definition at line 491 of file Overrides.java.

Referenced by determineContainer().

◆ HEAD_SLOT_BTN

final int com.runehive.content.overrides.Overrides.HEAD_SLOT_BTN = -5415
package

Definition at line 506 of file Overrides.java.

Referenced by handleButtons().

◆ INFO_BTN

final int com.runehive.content.overrides.Overrides.INFO_BTN = -5286
package

Definition at line 502 of file Overrides.java.

Referenced by handleButtons().

◆ INFO_CLOSE_BTN

final int com.runehive.content.overrides.Overrides.INFO_CLOSE_BTN = -5270
package

Definition at line 503 of file Overrides.java.

Referenced by handleButtons().

◆ INFO_GO_BACK_BTN

final int com.runehive.content.overrides.Overrides.INFO_GO_BACK_BTN = -5267
package

Definition at line 504 of file Overrides.java.

Referenced by handleButtons().

◆ INFO_INTERFACE

final int com.runehive.content.overrides.Overrides.INFO_INTERFACE = 60260
package

Definition at line 501 of file Overrides.java.

Referenced by handleButtons().

◆ LEGS_CONTAINER

final int com.runehive.content.overrides.Overrides.LEGS_CONTAINER = 60137
package

Definition at line 493 of file Overrides.java.

Referenced by determineContainer().

◆ LEGS_SLOT_BTN

final int com.runehive.content.overrides.Overrides.LEGS_SLOT_BTN = -5408
package

Definition at line 509 of file Overrides.java.

Referenced by handleButtons().

◆ MANAGE_BTN

final int com.runehive.content.overrides.Overrides.MANAGE_BTN = -5395
package

Definition at line 505 of file Overrides.java.

Referenced by handleButtons().

◆ managingOverrides

boolean com.runehive.content.overrides.Overrides.managingOverrides = false
package

Definition at line 34 of file Overrides.java.

Referenced by handleButtons(), and manageModeDialogue().

◆ OPEN_OVERRIDE_BTN

final int com.runehive.content.overrides.Overrides.OPEN_OVERRIDE_BTN = 27659
package

Definition at line 518 of file Overrides.java.

Referenced by handleButtons().

◆ OVERRIDE_INTERFACE

final int com.runehive.content.overrides.Overrides.OVERRIDE_INTERFACE = 60106
package

Definition at line 500 of file Overrides.java.

Referenced by openInterface().

◆ player

◆ presetButtons

final Map<Integer, String> com.runehive.content.overrides.Overrides.presetButtons = new HashMap<>()
package

Definition at line 30 of file Overrides.java.

Referenced by drawPresets(), handleButtons(), and wipeInterface().

◆ presets

Map<String, OverridePreset> com.runehive.content.overrides.Overrides.presets = new HashMap<>()

◆ SAVE_PRESET_BTN

final int com.runehive.content.overrides.Overrides.SAVE_PRESET_BTN = -5422
package

Definition at line 516 of file Overrides.java.

Referenced by handleButtons().

◆ SHIELD_CONTAINER

final int com.runehive.content.overrides.Overrides.SHIELD_CONTAINER = 60136
package

Definition at line 499 of file Overrides.java.

Referenced by determineContainer().

◆ SHIELD_SLOT_BTN

final int com.runehive.content.overrides.Overrides.SHIELD_SLOT_BTN = -5409
package

Definition at line 514 of file Overrides.java.

Referenced by handleButtons().

◆ VIEW_ALL_BTN

final int com.runehive.content.overrides.Overrides.VIEW_ALL_BTN = -5428
package

Definition at line 517 of file Overrides.java.

Referenced by handleButtons().

◆ VIEW_PRESET_BTN

final int com.runehive.content.overrides.Overrides.VIEW_PRESET_BTN = -5417
package

Definition at line 515 of file Overrides.java.

Referenced by handleButtons().

◆ WEAPON_CONTAINER

final int com.runehive.content.overrides.Overrides.WEAPON_CONTAINER = 60134
package

Definition at line 498 of file Overrides.java.

Referenced by determineContainer().

◆ WEAPON_SLOT_BTN

final int com.runehive.content.overrides.Overrides.WEAPON_SLOT_BTN = -5411
package

Definition at line 512 of file Overrides.java.

Referenced by handleButtons().


The documentation for this class was generated from the following file: