27 lines
632 B
Python
27 lines
632 B
Python
from __future__ import annotations
|
|
|
|
import logging
|
|
from typing import TYPE_CHECKING, Tuple
|
|
|
|
from sampy.network.game import Game
|
|
from sampy.network.query import Query
|
|
|
|
if TYPE_CHECKING:
|
|
from sampy.server import Server
|
|
|
|
|
|
class Protocol:
|
|
VERSION = "0.3.7"
|
|
|
|
@staticmethod
|
|
async def on_packet(server: Server, packet: bytes, addr: Tuple[str, int]) -> bool:
|
|
logging.debug("on_packet")
|
|
|
|
if await Query.on_packet(server, packet, addr):
|
|
return True
|
|
if await Game.on_packet(server, packet, addr):
|
|
return True
|
|
|
|
logging.debug("Unhandled: %r" % packet)
|
|
return False
|