Commit 70b1c22e8151a7d2b087cc92d465e3a3b9ea8b32

Authored by Mumfrey
1 parent 8e714482

don't pass handled packet events to packet handlers, they should implement the a…

…ppropriate interface instead
java/common/com/mumfrey/liteloader/core/PacketEvents.java
@@ -131,17 +131,17 @@ public abstract class PacketEvents implements InterfaceProvider @@ -131,17 +131,17 @@ public abstract class PacketEvents implements InterfaceProvider
131 131
132 private void handlePacket(PacketEventInfo<Packet> e, INetHandler netHandler, int packetId) 132 private void handlePacket(PacketEventInfo<Packet> e, INetHandler netHandler, int packetId)
133 { 133 {
134 - this.handlePacketEvent(e, netHandler, packetId);  
135 -  
136 - if (this.packetHandlers[packetId] == null || e.isCancelled()) 134 + if (this.handlePacketEvent(e, netHandler, packetId) || this.packetHandlers[packetId] == null || e.isCancelled())
137 { 135 {
138 return; 136 return;
139 } 137 }
140 138
141 - if (!this.packetHandlers[packetId].all().handlePacket(netHandler, e.getSource())) 139 + if (this.packetHandlers[packetId].all().handlePacket(netHandler, e.getSource()))
142 { 140 {
143 - e.cancel(); 141 + return;
144 } 142 }
  143 +
  144 + e.cancel();
145 } 145 }
146 146
147 /** 147 /**
@@ -149,46 +149,50 @@ public abstract class PacketEvents implements InterfaceProvider @@ -149,46 +149,50 @@ public abstract class PacketEvents implements InterfaceProvider
149 * @param netHandler 149 * @param netHandler
150 * @param packetId 150 * @param packetId
151 * @param packet 151 * @param packet
  152 + *
  153 + * @return true if the packet was handled by a local handler and shouldn't be forwarded to later handlers
152 */ 154 */
153 - protected void handlePacketEvent(PacketEventInfo<Packet> e, INetHandler netHandler, int packetId) 155 + protected boolean handlePacketEvent(PacketEventInfo<Packet> e, INetHandler netHandler, int packetId)
154 { 156 {
155 Packet packet = e.getSource(); 157 Packet packet = e.getSource();
156 158
157 if (packetId == this.loginSuccessPacketId) 159 if (packetId == this.loginSuccessPacketId)
158 { 160 {
159 this.handlePacket(e, netHandler, (S02PacketLoginSuccess)packet); 161 this.handlePacket(e, netHandler, (S02PacketLoginSuccess)packet);
160 - return; 162 + return true;
161 } 163 }
162 164
163 if (packetId == this.serverChatPacketId) 165 if (packetId == this.serverChatPacketId)
164 { 166 {
165 this.handlePacket(e, netHandler, (S02PacketChat)packet); 167 this.handlePacket(e, netHandler, (S02PacketChat)packet);
166 - return; 168 + return true;
167 } 169 }
168 170
169 if (packetId == this.clientChatPacketId) 171 if (packetId == this.clientChatPacketId)
170 { 172 {
171 this.handlePacket(e, netHandler, (C01PacketChatMessage)packet); 173 this.handlePacket(e, netHandler, (C01PacketChatMessage)packet);
172 - return; 174 + return true;
173 } 175 }
174 176
175 if (packetId == this.joinGamePacketId) 177 if (packetId == this.joinGamePacketId)
176 { 178 {
177 this.handlePacket(e, netHandler, (S01PacketJoinGame)packet); 179 this.handlePacket(e, netHandler, (S01PacketJoinGame)packet);
178 - return; 180 + return true;
179 } 181 }
180 182
181 if (packetId == this.serverPayloadPacketId) 183 if (packetId == this.serverPayloadPacketId)
182 { 184 {
183 this.handlePacket(e, netHandler, (S3FPacketCustomPayload)packet); 185 this.handlePacket(e, netHandler, (S3FPacketCustomPayload)packet);
184 - return; 186 + return true;
185 } 187 }
186 188
187 if (packetId == this.clientPayloadPacketId) 189 if (packetId == this.clientPayloadPacketId)
188 { 190 {
189 this.handlePacket(e, netHandler, (C17PacketCustomPayload)packet); 191 this.handlePacket(e, netHandler, (C17PacketCustomPayload)packet);
190 - return; 192 + return true;
191 } 193 }
  194 +
  195 + return false;
192 } 196 }
193 197
194 /** 198 /**