From de44f98f2a8a2b0c12d3482162f1e30e796d7b94 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期四, 08 一月 2026 16:27:02 +0800
Subject: [PATCH] 129 【战斗】战斗系统-服务端(优化伤害计算公式参数输出;)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py |   58 ++++++++++++++++------------------------------------------
 1 files changed, 16 insertions(+), 42 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py
index b7fb12e..44d4907 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py
@@ -53,6 +53,7 @@
 import PlayerActivity
 import ChNetSendPack
 import PlayerState
+import PlayerBeauty
 import PlayerOnline
 import PlayerTask
 import PlayerMail
@@ -2812,6 +2813,7 @@
             for itemID, upperCnt in DailyBootyUpperList:
                 if upperCnt <= 0:
                     continue
+                upperCnt = GetBootyUpper(curPlayer, itemID, upperCnt)
                 if curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_BootyDropToday % itemID) >= upperCnt:
                     continue
                 unXiantaoCntBooty = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_UnXiantaoCntBooty % itemID)
@@ -2856,6 +2858,20 @@
         
     DataRecordPack.DR_UseMoney(curPlayer, eventName, type_Price, price, infoDict) # 流向
     return
+
+def GetBootyUpper(curPlayer, itemID, baseUpper):
+    ## 战利品掉落上限
+    dropUpper = baseUpper
+    addPer = 0
+    addPer += PlayerBeauty.GetBeautyEffInfo(curPlayer, PlayerBeauty.EffType_BootyPer)[0] # 战利品上限提高百分比
+    
+    # 其他功能增加上限,可扩展
+    
+    if addPer:
+        dropUpper = int(baseUpper * (100 + addPer) / 100.0)
+        GameWorld.DebugLogEx("提高战利品掉落上限: itemID=%s,baseUpper=%s,addPer=%s,dropUpper=%s", itemID, baseUpper, addPer, dropUpper)
+        
+    return dropUpper
 
 ## 付款以后后续操作(金子)
 #  @param curPlayer 玩家实例
@@ -4512,48 +4528,6 @@
     #    atkInterval *= 100
     
     return atkInterval
-
-##玩家增加真气
-# @param curPlayer 玩家
-# @param value 增加数值
-# @param canOverbrim 可否溢出(默认不行) 
-# @param isSysMsg 是否系统提示(默认需要) 
-# @return None
-def PlayerAddZhenQi(curPlayer, addValue, canOverbrim=False, isSysMsg=True, eventName="unknown", eventData=""):
-    if addValue <= 0:
-        return True
-    
-    curZhenQi = GetZhenQi(curPlayer)  # 当前真气
-    
-    value = curZhenQi + addValue
-    
-    if value == curZhenQi:
-        #真气值没有改变
-        return False
-    SetZhenQi(curPlayer, value)
-    return True
-
-
-##玩家减少真气
-# @param curPlayer 玩家
-# @param lostValue 减少数值
-# @return None
-def PlayerLostZhenQi(curPlayer, lostValue, eventName="unknown", eventData=""):
-    if lostValue <= 0:
-        return True
-    
-    curZhenQi = GetZhenQi(curPlayer)  # 当前真气
-    
-    value = max(0, curZhenQi - lostValue)
-    if value < 0:
-        GameWorld.ErrLog("curZhenQi = %s, lostValue = %s" % (curZhenQi, lostValue))
-        return False
-    SetZhenQi(curPlayer, value)
-    return True
-
-## SP真气值 - 暂废弃 ExAttr7、ExAttr8 改为专精选择通知,用于前端表现其他玩家的不同专精特效
-def GetZhenQi(curPlayer): return 0
-def SetZhenQi(curPlayer, totalZhenQi): return
 
 #===============================================================================
 # #@warning: ExAttr6~ExAttr10, 新增2个布尔默认参数, 是否通知客户端, 是否通知GameServer, 默认值为False

--
Gitblit v1.8.0