From 26958aff1b844a743a805b4f9075bee800b72a46 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期二, 04 十一月 2025 14:35:37 +0800
Subject: [PATCH] 332 【主界面】座骑系统-服务端
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/CrossPlayerData.py | 56 ++------------------------------------------------------
1 files changed, 2 insertions(+), 54 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/CrossPlayerData.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/CrossPlayerData.py
index a78b1b6..1eb6bd8 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/CrossPlayerData.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/CrossPlayerData.py
@@ -21,9 +21,7 @@
import base64
import ChConfig
import PyGameData
-import PlayerDienstgrad
import IpyGameDataPY
-import PlayerHorse
import PlayerPet
import traceback
import ShareDefine
@@ -36,9 +34,7 @@
MergeData_Skill, # 只处理ID
MergeData_Buff, # 即时发送
CrossData_PetState, # 即时发送 宠物出战
-CrossData_HorseChange, # 即时发送 骑乘坐骑变更
-CrossData_RideHorse, # 即时发送 上下马
-) = range(0, 7)
+) = range(0, 5)
## 写数据类型定义
(
@@ -50,8 +46,6 @@
CrossDataInfo = {
CrossData_PetState:[[WDT_DWORD, WDT_BYTE, WDT_BYTE], lambda curObj, valueList:PlayerPet.CrossServer_DoChangePetState(curObj, valueList)],
- CrossData_HorseChange:[[WDT_DWORD], lambda curObj, valueList:PlayerHorse.CrossServer_ChangeHorse(curObj, valueList)],
- CrossData_RideHorse:[[WDT_BYTE], lambda curObj, valueList:PlayerHorse.CrossServer_RideHorse(curObj, valueList)],
}
# 影响跨服战力属性列表
@@ -211,7 +205,7 @@
return
# 不需要处理的跨服地图
- if crossMapID in [ChConfig.Def_FBMapID_CrossRealmPK]:
+ if crossMapID in []:
return
if not IpyGameDataPY.GetFuncCfg("CrossSyncPlayerData", 1):
@@ -225,7 +219,6 @@
PyGameData.g_crossRegPlayerAttrDict.pop(playerID, None)
PyGameData.g_crossSyncTickDict.pop(playerID, None)
PyGameData.g_crossPlayerDictChangeInfo.pop(playerID, None)
- PyGameData.g_crossPlayerDienstgradChangeInfo.pop(playerID, None)
PyGameData.g_crossPlayerItemsChangeInfo.pop(playerID, None)
PyGameData.g_crossPlayerSkillsChangeInfo.pop(playerID, None)
GameWorld.DebugLog("清除同步跨服数据的临时缓存", playerID)
@@ -296,16 +289,6 @@
# curItem2 = curPack.GetAt(2)
# curItem2.AssignItem(curSingleItem)
#===============================================================================
-
-def OnDienstgradChange(curPlayer, dienstgradID, state):
- ## 称号变更
- if not IsNeedProcessCrossPlayer(curPlayer):
- return
- playerID = curPlayer.GetPlayerID()
- dienstgradStateDict = PyGameData.g_crossPlayerDienstgradChangeInfo.get(playerID, {})
- dienstgradStateDict[dienstgradID] = state
- PyGameData.g_crossPlayerDienstgradChangeInfo[playerID] = dienstgradStateDict
- return
def OnPlayerFightPowerChange(curPlayer):
## 玩家战力变更时
@@ -347,7 +330,6 @@
data = CommFunc.WriteBYTE(data, MergeData_Player)
data = __WriteSyncPlayerAttrData(curPlayer, data) # 玩家属性
data = __WriteSyncPlayerDictData(curPlayer, data) # 字典
- data = __WriteSyncPlayerDienstgradData(curPlayer, data) # 称号
data = __WriteSyncPlayerItems(curPlayer, data)# 物品
data = __WriteSyncPlayerSkills(curPlayer, data)# 技能
@@ -371,7 +353,6 @@
pos = __ReadSyncPlayerAttrData(curPlayer, pdata, pos) # 玩家属性
pos = __ReadSyncPlayerDictData(curPlayer, pdata, pos) # 字典
- pos = __ReadSyncPlayerDienstgradData(curPlayer, pdata, pos) # 称号
pos = __ReadSyncPlayerItems(curPlayer, pdata, pos) # 物品
pos = __ReadSyncPlayerSkills(curPlayer, pdata, pos)# 技能
@@ -461,39 +442,6 @@
PlayerControl.NomalDictSetProperty(curPlayer, key, value, dType)
GameWorld.DebugLog(" key=%s, value=%s, dType=%s" % (key, value, dType))
- return pos
-
-def __WriteSyncPlayerDienstgradData(curPlayer, data):
- ## 写入需要同步的玩家称号
- playerID = curPlayer.GetPlayerID()
- if playerID not in PyGameData.g_crossPlayerDienstgradChangeInfo:
- return CommFunc.WriteBYTE(data, 0)
- changeDienstgradDict = PyGameData.g_crossPlayerDienstgradChangeInfo.pop(playerID)
-
- count = len(changeDienstgradDict)
- GameWorld.DebugLog("变更的玩家称号个数: %s" % count)
- data = CommFunc.WriteBYTE(data, count)
- for dienstgradID, state in changeDienstgradDict.items():
- data = CommFunc.WriteDWORD(data, dienstgradID)
- data = CommFunc.WriteBYTE(data, state)
- GameWorld.DebugLog(" dienstgradID=%s, state=%s" % (dienstgradID, state))
-
- return data
-
-def __ReadSyncPlayerDienstgradData(curPlayer, pdata, pos):
- ## 读取同步的玩家称号
- pdata = base64.b64decode(pdata)
- count, pos = CommFunc.ReadBYTE(pdata, pos)
- GameWorld.DebugLog("变更的玩家称号个数: %s" % count)
- for _ in xrange(count):
- dienstgradID, pos = CommFunc.ReadDWORD(pdata, pos)
- state, pos = CommFunc.ReadBYTE(pdata, pos)
- GameWorld.DebugLog(" dienstgradID=%s, state=%s" % (dienstgradID, state))
- if state:
- PlayerDienstgrad.PlayerAddDienstgrad(curPlayer, dienstgradID, isRefreshAttr=False)
- else:
- PlayerDienstgrad.PlayerDelDienstgrad(curPlayer, dienstgradID, False)
-
return pos
def __WriteSyncPlayerItems(curPlayer, data):
--
Gitblit v1.8.0