RuneHive-Tarnish
Neural OSRS Enhancement Framework
Loading...
Searching...
No Matches
ChatBoxItemDialogue.java
1package com.osroyale.content.dialogue;
2
3import com.osroyale.net.packet.out.SendChatBoxInterface;
4import com.osroyale.net.packet.out.SendItemModelOnInterface;
5import com.osroyale.net.packet.out.SendMoveComponent;
6import com.osroyale.net.packet.out.SendString;
7import com.osroyale.game.world.entity.mob.player.Player;
8import com.osroyale.game.world.items.Item;
9import com.osroyale.game.world.items.ItemDefinition;
10
43
44public abstract class ChatBoxItemDialogue {
45 private final Player player;
46
47 protected ChatBoxItemDialogue(Player player) {
48 this.player = player;
49 }
50
51 public static void sendInterface(Player player, int interfaceId, Item item, int zoom) {
52 sendInterface(player, interfaceId, item.getId(), 0, 10, zoom);
53 }
54
55 public static void sendInterface(Player player, int interfaceId, int item, int zoom) {
56 sendInterface(player, interfaceId, item, 0, 10, zoom);
57 }
58
59 public static void sendInterface(Player player, int interfaceId, int item, int x, int y, int zoom) {
60 player.send(new SendChatBoxInterface(4429));
61 player.send(new SendMoveComponent(x, y, interfaceId));
62 player.send(new SendItemModelOnInterface(interfaceId, zoom, item));
63 player.send(new SendString("\\n \\n \\n \\n" + ItemDefinition.get(item).getName(), 2799));
64 }
65
66 public boolean clickButton(int button) {
67 switch (button) {
68 /* Option 1 */
69 case 2799:
70 firstOptionClick(player);
71 return true;
72
73 /* Option 5 */
74 case 2798:
75 secondOptionClick(player);
76 return true;
77
78 /* Option x */
79 case 1748:
80 thirdOptionClick(player);
81 return true;
82
83 /* Option all */
84 case 1747:
85 fourthOptionClick(player);
86 return true;
87 }
88 return false;
89 }
90
91 public abstract void firstOption(Player player);
92
93 public abstract void secondOption(Player player);
94
95 public abstract void thirdOption(Player player);
96
97 public abstract void fourthOption(Player player);
98
99 private void firstOptionClick(Player player) {
100 player.interfaceManager.close();
101 firstOption(player);
102 }
103
104 private void secondOptionClick(Player player) {
105 player.interfaceManager.close();
106 secondOption(player);
107 }
108
109 private void thirdOptionClick(Player player) {
110 player.interfaceManager.close();
111 thirdOption(player);
112 }
113
114 private void fourthOptionClick(Player player) {
115 player.interfaceManager.close();
116 fourthOption(player);
117 }
118
119}