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/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerPrestigeSys.py |   27 ++++++++++++++++++++++-----
 1 files changed, 22 insertions(+), 5 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerPrestigeSys.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerPrestigeSys.py
index 1e9ab83..da793b3 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerPrestigeSys.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerPrestigeSys.py
@@ -92,12 +92,29 @@
     # 返还境界丹
     returnItemID = IpyGameDataPY.GetFuncCfg("RealmLvUP", 1)
     returnCount = 0
-    itemCntList = IpyGameDataPY.GetFuncEvalCfg("RealmVersion", 1)
-    for rLV, needCnt in enumerate(itemCntList):
-        if rLV > realmLV:
+    lvToRealmLV = -1 # 重置后当前玩家等级对应可提升到的境界等级
+    playerLV = curPlayer.GetLV()
+    ipyDataMgr = IpyGameDataPY.IPY_Data()
+    for index in range(ipyDataMgr.GetRealmCount()):
+        realmIpyData = ipyDataMgr.GetRealmByIndex(index)
+        lvToRealmLV = realmIpyData.GetLv()
+        if playerLV < realmIpyData.GetLVMax():
             break
-        returnCount += needCnt
-    GameWorld.Log("境界等级: realmLV=%s,returnItemID=%s,returnCount=%s" % (realmLV, returnItemID, returnCount), playerID)
+        
+    # 返还到可升级到的境界等级前一级
+    for index in range(ipyDataMgr.GetRealmLVUPTaskCount()):
+        taskIpyData = ipyDataMgr.GetRealmLVUPTaskByIndex(index)
+        if taskIpyData.GetLv() >= lvToRealmLV:
+            break
+        taskType = taskIpyData.GetTaskType()
+        if taskType != RealmTaskType_LVUPItem:
+            continue
+        needValueList = taskIpyData.GetNeedValueList()
+        needValueA = GetRealmTaskNeedValue(needValueList, 0)
+        returnCount += needValueA
+        
+    GameWorld.Log("境界等级: realmLV=%s,playerLV=%s,lvToRealmLV=%s,returnItemID=%s,returnCount=%s" 
+                  % (realmLV, playerLV, lvToRealmLV, returnItemID, returnCount), playerID)
     
     # 重置灵根点,扣除赠送灵根点
     linggenPointDel = 0

--
Gitblit v1.8.0