@@ -100,33 +100,10 @@ public void register() {
100100 map (Types .STRING ); // Channel
101101 handlerSoftFail (wrapper -> {
102102 final String channel = wrapper .get (Types .STRING , 0 );
103- if (channel .equals ("MC|TrList" )) {
104- wrapper .passthrough (Types .INT ); // Window id
105-
106- int size ;
107- if (wrapper .isReadable (Types .BYTE , 0 )) {
108- size = wrapper .passthrough (Types .BYTE );
109- } else {
110- size = wrapper .passthrough (Types .UNSIGNED_BYTE );
111- }
112-
113- final ItemRewriter <?> itemRewriter = protocol .getItemRewriter ();
114-
115- for (int i = 0 ; i < size ; i ++) {
116- wrapper .write (Types .ITEM1_8 , itemRewriter .handleItemToClient (wrapper .user (), wrapper .read (Types .ITEM1_8 ))); // Buy item 1
117- wrapper .write (Types .ITEM1_8 , itemRewriter .handleItemToClient (wrapper .user (), wrapper .read (Types .ITEM1_8 ))); // Buy item 3
118-
119- final boolean has3Items = wrapper .passthrough (Types .BOOLEAN );
120- if (has3Items ) {
121- wrapper .write (Types .ITEM1_8 , itemRewriter .handleItemToClient (wrapper .user (), wrapper .read (Types .ITEM1_8 ))); // Buy item 2
122- }
123-
124- wrapper .passthrough (Types .BOOLEAN ); //Unavailable
125- wrapper .passthrough (Types .INT ); //Uses
126- wrapper .passthrough (Types .INT ); //Max Uses
127- }
128- } else if (channel .equals ("MC|BOpen" )) {
103+ if (channel .equals ("MC|BOpen" )) {
129104 wrapper .read (Types .VAR_INT );
105+ } else if (channel .equals ("MC|TrList" )) {
106+ protocol .getItemRewriter ().handleTradeList (wrapper );
130107 }
131108 });
132109 }
0 commit comments