From 4e6d5af98a0e0810ddfe2cc0faaec2832f865bd6 Mon Sep 17 00:00:00 2001 From: hch <305670599@qq.com> Date: 星期二, 20 五月 2025 15:23:30 +0800 Subject: [PATCH] 15 卡牌服务端搭建 - 地图增加FindStr接口;玩家下线保存,python增加MapCallDB调用DB逻辑 --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py | 15 ++++++++++++++- 1 files changed, 14 insertions(+), 1 deletions(-) diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py index 5eb0616..09f53f7 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/ChPlayer.py @@ -175,11 +175,15 @@ import PlayerMail import DBDataMgr import GameServerRefresh +import IPY_ServerDefine +import CommFunc +from PyMongoDB import RecvPackToMapDB import datetime import time import math import re +import base64 #--------------------------------------------------------------------- #--------------------------------------------------------------------- @@ -3113,10 +3117,19 @@ except: import traceback GameWorld.RaiseException("玩家下线逻辑错误\r\n%s" % traceback.format_exc()) - + RecvPackToMapDB.MapCallDB(GetPackSaveData(curPlayer)) #调用底层使玩家下线 curPlayer.DoDisconnect(tick) +# 简化c++的保存数据封包 +def GetPackSaveData(curPlayer): + roleSaveData = base64.b64decode(curPlayer.GetPackData()) # base64加密了 + allData = "" + allData = CommFunc.WriteBYTE(allData, IPY_ServerDefine.gstUpdate) + allData = CommFunc.WriteString(allData, len(roleSaveData), roleSaveData) + return allData + + ##玩家正常下线 #@param curPlayer 玩家索引 #@param tick 时间戳 -- Gitblit v1.8.0