46 lines
943 B
Python
46 lines
943 B
Python
#!/usr/bin/env python
|
|
|
|
from typing import Union
|
|
|
|
class CtrlMessage:
|
|
pass
|
|
|
|
class GameMessage:
|
|
pass
|
|
|
|
class SysMessage:
|
|
pass
|
|
|
|
class PacketFlags7():
|
|
CONTROL = False
|
|
RESEND = False
|
|
COMPRESSION = False
|
|
CONNLESS = False
|
|
|
|
class PacketFlags6():
|
|
TOKEN = False
|
|
CONTROL = False
|
|
RESEND = False
|
|
COMPRESSION = False
|
|
CONNLESS = False
|
|
|
|
class Header:
|
|
def __init__(self) -> None:
|
|
self.flags: PacketFlags7 = PacketFlags7()
|
|
self.size: int = 0
|
|
self.seq: int = 0 # TODO: seq or ack?
|
|
self.token: bytes = b'\xff\xff\xff\xff'
|
|
self.num_chunks: int = 0
|
|
|
|
class TwPacket:
|
|
def __init__(self) -> None:
|
|
self.header: Header = Header()
|
|
self.messages: list[Union[CtrlMessage, GameMessage, SysMessage]] = []
|
|
self.messages.append(GameMessage())
|
|
|
|
def __str__(self):
|
|
return str(self.__class__) + ": " + str(self.__dict__)
|
|
|
|
pck = TwPacket()
|
|
print(pck)
|