Files
neonsr/game_server/handlers/GetCurSceneInfoCsReq.py
Naruse ec8972d5d6 init
2025-04-15 19:36:05 +08:00

25 lines
824 B
Python

import betterproto
from game_server.net.session import PlayerSession
from game_server.game.motion.motion_info import Motion
from rail_proto.lib import (
GetCurSceneInfoCsReq,
GetCurSceneInfoScRsp,
SceneEntityMoveScNotify
)
async def handle(session: PlayerSession, msg: GetCurSceneInfoCsReq) -> betterproto.Message:
session.pending_notify(
SceneEntityMoveScNotify(
entry_id=session.player.scene_manager.entry_id,
motion=Motion(
x=session.player.data.pos.x,
y=session.player.data.pos.y,
z=session.player.data.pos.z,
rotY=session.player.data.rot.y,
).ToProto()
)
)
return GetCurSceneInfoScRsp(
retcode=0,
scene=session.player.scene_manager.ToProto(session=session)
)