SHOW:
|
|
- or go back to the newest paste.
1 | Index: Dev.VisualSkins.Visual.java | |
2 | =================================================================== | |
3 | --- Dev.VisualSkins.Visual.java (revision 384) | |
4 | +++ Dev.VisualSkins.Visual.java (working copy) | |
5 | ||
6 | + package Dev.VisualSkins; | |
7 | + | |
8 | + import net.sf.l2j.gameserver.handler.IItemHandler; | |
9 | + import net.sf.l2j.gameserver.model.actor.Playable; | |
10 | + import net.sf.l2j.gameserver.model.actor.Player; | |
11 | + import net.sf.l2j.gameserver.model.item.instance.ItemInstance; | |
12 | + import net.sf.l2j.gameserver.network.serverpackets.MagicSkillUse; | |
13 | + | |
14 | + /** | |
15 | + * @author COMBATE | |
16 | + * @author Juvenil Amaro | |
17 | + */ | |
18 | + public class Visual implements IItemHandler | |
19 | + { | |
20 | + @Override | |
21 | + public void useItem(Playable playable, ItemInstance item, boolean forceUse) | |
22 | + { | |
23 | + if (!(playable instanceof Player)) | |
24 | + return; | |
25 | + | |
26 | + Player player = (Player) playable; | |
27 | + int itemId = item.getItemId(); | |
28 | + switch(itemId) | |
29 | + { | |
30 | + case 26101: | |
31 | + case 26111: | |
32 | + case 26121: | |
33 | + player.broadcastPacket(new MagicSkillUse(player, 1410, 1, 10000, 10000)); | |
34 | + player.setVisual(player.getVisual() == 1 ? 0 : 1); | |
35 | + break; | |
36 | + case 26102: | |
37 | + case 26112: | |
38 | + case 26122: | |
39 | + player.setVisual(player.getVisual() == 2 ? 0 : 2); | |
40 | + break; | |
41 | + case 26103: | |
42 | + case 26113: | |
43 | + case 26123: | |
44 | + player.setVisual(player.getVisual() == 3 ? 0 : 3); | |
45 | + break; | |
46 | + case 26104: | |
47 | + case 26114: | |
48 | + case 26124: | |
49 | + player.setVisual(player.getVisual() == 4 ? 0 : 4); | |
50 | + break; | |
51 | + case 26105: | |
52 | + case 26115: | |
53 | + case 26125: | |
54 | + player.setVisual(player.getVisual() == 5 ? 0 : 5); | |
55 | + break; | |
56 | + case 23881: | |
57 | + player.setVisual(player.getVisual() == 6 ? 0 : 6); | |
58 | + break; | |
59 | + } | |
60 | + } | |
61 | + } | |
62 | + | |
63 | ||
64 | Index: net.sf.l2j.gameserver.model.actor.instance;Merchant.java | |
65 | =================================================================== | |
66 | --- net.sf.l2j.gameserver.model.actor.instance;Merchant.java (revision 384) | |
67 | +++ net.sf.l2j.gameserver.model.actor.instance;Merchant.java (working copy) | |
68 | ||
69 | + else if (currentCommand.startsWith("visualTest")) | |
70 | + { | |
71 | + if (player.getVisualTest() > 0) | |
72 | + { | |
73 | + player.sendMessage("You are already trying on a uniform, please wait till it finishes."); | |
74 | + return; | |
75 | + } | |
76 | + | |
77 | + player.broadcastPacket(new MagicSkillUse(player, 1410, 1, 1000, 1000)); | |
78 | + player.setDressMeEnabled(false); | |
79 | + int uniform = Integer.parseInt(command.substring(11)); | |
80 | + player.setVisualTest(uniform); | |
81 | + ThreadPool.schedule(() -> player.setVisualTest(0), 1000 * 15); | |
82 | + player.broadcastUserInfo(); | |
83 | + | |
84 | + | |
85 | + | |
86 | + } | |
87 | ||
88 | Index: net.sf.l2j.gameserver.network.serverpackets;UserInfo.java | |
89 | =================================================================== | |
90 | --- net.sf.l2j.gameserver.network.serverpackets;UserInfo.java (revision 384) | |
91 | +++ net.sf.l2j.gameserver.network.serverpackets;UserInfo.java (working copy) | |
92 | ||
93 | + writeD(_activeChar.visual_test_chest > 0 ? _activeChar.visual_test_chest : (_activeChar.visual_chest > 0 ? _activeChar.visual_chest : _activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_CHEST))); | |
94 | + | |
95 | + writeD(_activeChar.visual_test_hair > 0 ? _activeChar.visual_test_hair : (_activeChar.visual_hair > 0 ? _activeChar.visual_hair : _activeChar.getInventory().getPaperdollItemId(Inventory.PAPERDOLL_HAIR))); | |
96 | ||
97 | Index: net.sf.l2j.gameserver.model.actor;Player.java | |
98 | =================================================================== | |
99 | --- net.sf.l2j.gameserver.model.actor;Player.java (revision 384) | |
100 | +++ net.sf.l2j.gameserver.model.actor;Player.java (working copy) | |
101 | ||
102 | + private int visual = 0; | |
103 | + private int visualTest = 0; | |
104 | + | |
105 | + // Testing | |
106 | + public int visual_test_hair = 0; | |
107 | + public int visual_test_chest = 0; | |
108 | + | |
109 | + public int visual_hair = 0; | |
110 | + public int visual_chest = 0; | |
111 | + | |
112 | + public void setVisualTest(int val) | |
113 | + { | |
114 | + // HARDCODED FOR NOW | |
115 | + switch(val) | |
116 | + { | |
117 | + case 0: | |
118 | + visual_test_hair = 0; | |
119 | + visual_test_chest = 0; | |
120 | + break; | |
121 | + | |
122 | + case 1: // Draconic | |
123 | + visual_test_hair = 26201; | |
124 | + visual_test_chest = 26101; | |
125 | + break; | |
126 | + case 2: | |
127 | + visual_test_hair = 26202; | |
128 | + visual_test_chest = 26102; | |
129 | + break; | |
130 | + case 3: | |
131 | + visual_test_hair = 26203; | |
132 | + visual_test_chest = 26103; | |
133 | + break; | |
134 | + case 4: | |
135 | + visual_test_hair = 26204; | |
136 | + visual_test_chest = 26104; | |
137 | + break; | |
138 | + case 5: | |
139 | + visual_test_hair = 26205; | |
140 | + visual_test_chest = 26105; | |
141 | + break; | |
142 | + case 6: | |
143 | + visual_test_hair = 0; | |
144 | + visual_test_chest = 23881; | |
145 | + break; | |
146 | + } | |
147 | + | |
148 | + visualTest = val; | |
149 | + broadcastUserInfo(); | |
150 | + } | |
151 | + | |
152 | + public int getVisualTest() | |
153 | + { | |
154 | + return visualTest; | |
155 | + } | |
156 | + | |
157 | + public void setVisual(int val) | |
158 | + { | |
159 | + // HARDCODED FOR NOW | |
160 | + switch(val) | |
161 | + { | |
162 | + case 0: | |
163 | + visual_hair = 0; | |
164 | + visual_chest = 0; | |
165 | + break; | |
166 | + | |
167 | + case 1: | |
168 | + visual_hair = 26201; | |
169 | + visual_chest = 26101; | |
170 | + break; | |
171 | + case 2: | |
172 | + visual_hair = 26202; | |
173 | + visual_chest = 26102; | |
174 | + break; | |
175 | + case 3: | |
176 | + visual_hair = 26203; | |
177 | + visual_chest = 26103; | |
178 | + break; | |
179 | + case 4: | |
180 | + visual_hair = 26204; | |
181 | + visual_chest = 26104; | |
182 | + break; | |
183 | + case 5: | |
184 | + visual_hair = 26205; | |
185 | + visual_chest = 26105; | |
186 | + break; | |
187 | + case 6: | |
188 | + visual_hair = 0; | |
189 | + visual_chest = 23881; | |
190 | + break; | |
191 | + } | |
192 | + | |
193 | + visual = val; | |
194 | + broadcastUserInfo(); | |
195 | + } | |
196 | + | |
197 | + public int getVisual() | |
198 | + { | |
199 | + return visual; | |
200 | + } | |
201 | + | |
202 | ||
203 | Index: net.sf.l2j.gameserver.handler;ItemHandler.java | |
204 | =================================================================== | |
205 | --- net.sf.l2j.gameserver.handler;ItemHandler.java(revision 384) | |
206 | +++ net.sf.l2j.gameserver.handler;ItemHandler.java (working copy) | |
207 | ||
208 | + registerHandler(new Visual()); | |
209 | ||
210 | Index: data/html/merchant | |
211 | =================================================================== | |
212 | --- data/html/merchant (revision 384) | |
213 | +++ data/html/merchant (working copy) | |
214 | ||
215 | + <html> | |
216 | + <title>Beauty Shop</title> | |
217 | + <body> | |
218 | + <center> | |
219 | + <table cellpadding=-15 cellspacing=0> | |
220 | + <tr> | |
221 | + <td width=20></td> | |
222 | + <td><img src="TestLogo2.LogoTest2" width=210 height=145></td> | |
223 | + </tr> | |
224 | + </table> | |
225 | + <img src="L2UI.SquareGray" width=295 height=2> | |
226 | + <table width=295 bgcolor="000000"> | |
227 | + <tr> | |
228 | + <td align=center><font color="CCCC66">You can try the Accesory before you buy it for 15 Seconds!</font></td> | |
229 | + </tr> | |
230 | + <tr> | |
231 | + <td align=center><font color="CCCC66">Choose which accesory you want before you pay for it!</font></td> | |
232 | + </tr> | |
233 | + <tr></tr> | |
234 | + <tr> | |
235 | + <td align=center><button value="Try White Assassin" action="bypass -h npc_%objectId%_visualTest 3" width=204 height=19 back="eola.btn_over" fore="eola.btn"> | |
236 | + </td> | |
237 | + </tr> | |
238 | + <tr> | |
239 | + <td align=center><button value="Try Dark Assassin" action="bypass -h npc_%objectId%_visualTest 4" width=204 height=19 back="eola.btn_over" fore="eola.btn"></td> | |
240 | + </tr> | |
241 | + <tr> | |
242 | + <td align=center><button value="Try Dark Killer" action="bypass -h npc_%objectId%_visualTest 2" width=204 height=19 back="eola.btn_over" fore="eola.btn"></td> | |
243 | + </tr> | |
244 | + <tr> | |
245 | + <td align=center><button value="Try Beleth Costume" action="bypass -h npc_%objectId%_visualTest 5" width=204 height=19 back="eola.btn_over" fore="eola.btn"></td> | |
246 | + </tr> | |
247 | + <tr> | |
248 | + <td align=center><button value="Try Draconic Suit" action="bypass -h npc_%objectId%_visualTest 1" width=204 height=19 back="eola.btn_over" fore="eola.btn"></td> | |
249 | + </tr> | |
250 | + <tr> | |
251 | + <td align=center><button value="Try Anakim Costume" action="bypass -h npc_%objectId%_visualTest 6" width=204 height=19 back="eola.btn_over" fore="eola.btn"></td> | |
252 | + </tr> | |
253 | + </table> | |
254 | + <img src="L2UI.SquareGray" width=295 height=2> | |
255 | + <br> | |
256 | + <button value="Buy Uniforms" action="bypass -h npc_%objectId%_multisell 3259" width=204 height=19 back="eola.btn_over" fore="eola.btn"> | |
257 | + | |
258 | + <br> | |
259 | + <br1> | |
260 | + <button value="Back" action="bypass -h npc_%objectId%_Chat 0" width=204 height=19 back="eola.btn_over" fore="eola.btn"> | |
261 | + | |
262 | + <br> | |
263 | + | |
264 | + </center> | |
265 | + </body> | |
266 | + </html> | |
267 | + |