Update mail state on ping

This commit is contained in:
Melledy committed 2025-10-30 08:28:40 -07:00
1 parent 7c5c0e21b7
commit 3a44ebbdc3
4 files changed
+90 -39

No files matched your search

+7 -39
View File
@@ -2,7 +2,6 @@ package emu.nebula.net;
import lombok.SneakyThrows;
import us.hebi.quickbuf.ProtoMessage;
import us.hebi.quickbuf.ProtoSink;
public abstract class NetHandler {
@@ -14,53 +13,22 @@ public abstract class NetHandler {
return true;
}
// Packet encoding helper functions
public byte[] encodeMsg(int msgId, byte[] packet) {
// Create data array
byte[] data = new byte[packet.length + 2];
// Encode msgId
short id = (short) msgId;
data[0] = (byte) (id >> 8);
data[1] = (byte) id;
// Copy packet to data array
System.arraycopy(packet, 0, data, 2, packet.length);
// Complete
return data;
return PacketHelper.encodeMsg(msgId, packet);
}
@SneakyThrows
public byte[] encodeMsg(int msgId, ProtoMessage<?> proto) {
// Create data array
byte[] data = new byte[proto.getCachedSize() + 2];
// Encode msgId
short id = (short) msgId;
data[0] = (byte) (id >> 8);
data[1] = (byte) id;
// Create proto sink
var output = ProtoSink.newInstance(data, 2, proto.getCachedSize());
// Copy packet to data array
proto.writeTo(output);
// Complete
return data;
return PacketHelper.encodeMsg(msgId, proto);
}
public byte[] encodeMsg(int msgId) {
// Create data array
byte[] data = new byte[2];
// Encode msgId
short id = (short) msgId;
data[0] = (byte) (id >> 8);
data[1] = (byte) id;
return data;
return PacketHelper.encodeMsg(msgId);
}
// Handler
public abstract byte[] handle(GameSession session, byte[] message) throws Exception;
@@ -0,0 +1,57 @@
package emu.nebula.net;
import lombok.SneakyThrows;
import us.hebi.quickbuf.ProtoMessage;
import us.hebi.quickbuf.ProtoSink;
public class PacketHelper {
public static byte[] encodeMsg(int msgId, byte[] packet) {
// Create data array
byte[] data = new byte[packet.length + 2];
// Encode msgId
short id = (short) msgId;
data[0] = (byte) (id >> 8);
data[1] = (byte) id;
// Copy packet to data array
System.arraycopy(packet, 0, data, 2, packet.length);
// Complete
return data;
}
@SneakyThrows
public static byte[] encodeMsg(int msgId, ProtoMessage<?> proto) {
// Create data array
byte[] data = new byte[proto.getCachedSize() + 2];
// Encode msgId
short id = (short) msgId;
data[0] = (byte) (id >> 8);
data[1] = (byte) id;
// Create proto sink
var output = ProtoSink.newInstance(data, 2, proto.getCachedSize());
// Copy packet to data array
proto.writeTo(output);
// Complete
return data;
}
public static byte[] encodeMsg(int msgId) {
// Create data array
byte[] data = new byte[2];
// Encode msgId
short id = (short) msgId;
data[0] = (byte) (id >> 8);
data[1] = (byte) id;
return data;
}
}