import betterproto from game_server.net.session import PlayerSession from game_server.resource import ResourceManager from game_server.resource.configdb.challenge_maze_config import ChallengeMazeConfig from rail_proto.lib import ( GetChallengeCsReq, GetChallengeScRsp, Challenge ) async def handle(session: PlayerSession, msg: GetChallengeCsReq) -> betterproto.Message: return GetChallengeScRsp( retcode=0, challenge_list=[ Challenge( challenge_id=challenge.ID ) for challenge in ResourceManager.instance().values(ChallengeMazeConfig) ] )