From 75c2f1f1998ea5b424ae86c2d64869e33e505523 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期三, 05 三月 2025 17:23:27 +0800
Subject: [PATCH] 10410 【bt】【英文】海外各版本包整理(优化重置境界返还境界丹个数:改为返还到玩家等级对应可升级到的境界等级累计所需个数;)
---
ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldMineArea.py | 24 ++++++++++++------------
1 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldMineArea.py b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldMineArea.py
index c576759..e22fe79 100644
--- a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldMineArea.py
+++ b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldMineArea.py
@@ -944,12 +944,12 @@
# 拉物品
if msgType == "Pull":
- __DoPullItem(playerID, curPlayer, dataMsg)
+ ret = __DoPullItem(playerID, curPlayer, dataMsg)
# 刷新福地物品
elif msgType == "MineItemRefresh":
playerID, isSuper = dataMsg
- __DoMineItemRefresh(playerID, curPlayer, isSuper=isSuper)
+ __DoMineItemRefresh(playerID, curPlayer, isSuper=isSuper, queryType=99, queryValue=isSuper)
# 地图结算奖励OK
elif msgType == "MineAreaAwardGetOK":
@@ -1063,7 +1063,7 @@
__RefreshMineItemSpeed(mineItemData, True)
SyncMineAreaItemInfo(areaPlayerID, [itemIndex], notifyPlayerIDListEx)
- return
+ return [areaPlayerID]
def __DoCancelPull(playerID, areaPlayerID, itemIndex, reason=""):
## 取消拉取
@@ -1105,7 +1105,7 @@
MapServer_QueryPlayerResult(curPlayer, "MineAreaCancelPull", [areaPlayerID, reason])
return
-def __DoMineItemRefresh(areaPlayerID, areaPlayer=None, isSys=False, isSuper=False, isNotify=True, refreshIndexList=None, setPosition=None, setItemLV=None, setMineID=None):
+def __DoMineItemRefresh(areaPlayerID, areaPlayer=None, isSys=False, isSuper=False, isNotify=True, refreshIndexList=None, setPosition=None, setItemLV=None, setMineID=None, queryType=0, queryValue=0):
'''刷新福地物品
@param areaPlayerID: 福地玩家ID,可能是假人
@param areaPlayer: 福地玩家实例
@@ -1204,7 +1204,7 @@
GameWorld.DebugLog(" index=%s,randMineID=%s,position=%s,mineType=%s,itemLV=%s" % (index, randMineID, position, mineType, itemLV), areaPlayerID)
if isNotify and refreshDict:
- SyncMineAreaItemInfo(areaPlayerID, refreshDict.keys())
+ SyncMineAreaItemInfo(areaPlayerID, refreshDict.keys(), queryType=queryType, queryValue=queryValue)
return refreshDict
#// B0 33 福地查看 #tagCGMineAreaView
@@ -1254,7 +1254,7 @@
return
-def SyncMineAreaItemInfo(areaPlayerID, mineIndexList, notifyPlayerIDListEx=None):
+def SyncMineAreaItemInfo(areaPlayerID, mineIndexList, notifyPlayerIDListEx=None, queryType=0, queryValue=0):
'''某个福地物品变更时同步,会同步给相关玩家
@param areaPlayerID: 福地玩家ID,可能是假人
@param mineIndexList: 需要同步的矿物索引
@@ -1295,7 +1295,7 @@
if not notifyPlayerIDList:
return
- clientPack = __GetMineAreaInfoPack([[areaPlayerID, mineIndexList]])
+ clientPack = __GetMineAreaInfoPack([[areaPlayerID, mineIndexList]], queryType=queryType, queryValue=queryValue)
# 去重同步
playerManager = GameWorld.GetPlayerManager()
for playerID in set(notifyPlayerIDList):
@@ -1495,7 +1495,7 @@
itemCount = ipyData.GetItemCount()
itemLV = ipyData.GetItemLV()
awardItemDict[itemID] = awardItemDict.get(itemID, 0) + itemCount
- awardInfoList.append([GUID, awardTime, workerCount, areaPlayerID, mineID, itemLV, itemID, itemCount])
+ awardInfoList.append([awardTime, workerCount, areaPlayerID, mineID, itemLV, itemID, itemCount])
# 通知地图玩家给物品
curPlayer.SetDict(MineAreaAwardGetTick, tick)
@@ -1505,17 +1505,17 @@
def __DoMineAreaAwardGetOK(curPlayer, dataMsg):
playerID = curPlayer.GetPlayerID()
- GUIDList, awardItemList = dataMsg
+ _, awardItemList = dataMsg
curPlayer.SetDict(MineAreaAwardGetTick, 0)
awardMgr = PyDataManager.GetDBPyMineAreaAwardManager()
awardDict = awardMgr.playerAreaAwardDict.get(playerID, {})
if not awardDict:
return
+ GameWorld.DebugLog("福地结算奖励OK: %s" % len(awardDict), playerID)
- for GUID in GUIDList:
- awardDict.pop(GUID, None)
-
+ awardMgr.playerAreaAwardDict[playerID] = {}
+
SyncMineAwardAward(curPlayer, 1, awardItemList)
return
--
Gitblit v1.8.0