From efc4f490488935020d1b58a451a396ee420de9da Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期三, 06 八月 2025 18:21:05 +0800
Subject: [PATCH] 129 【战斗】战斗系统-服务端(NPC、技能使用新表N.NPC表卡牌、J.技能表卡牌;重构战斗系统;优化战利品掉落;)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py |   26 ++++++++++++++++++--------
 1 files changed, 18 insertions(+), 8 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 b35b8c3..3ee73aa 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerControl.py
@@ -578,7 +578,7 @@
 #  @return 返回值无意义
 def ClearPyPlayerAction(curPlayer):
     #清除py自定义状态
-    PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_PyPlayerAction, 0)      
+    NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_PyPlayerAction, 0)      
     return
 
 #---------------------------------------------------------------------
@@ -2837,10 +2837,25 @@
     #轮回殿
     PlayerActLunhuidian.AddLunhuidianValue(curPlayer, PlayerActLunhuidian.AwardType_PayMoney, type_Price, price)
     if type_Price == ShareDefine.TYPE_Price_Xiantao:
+        # 累加未结算战锤 - 经验
         unXiantaoCntExp = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_UnXiantaoCntExp)
         NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_UnXiantaoCntExp, unXiantaoCntExp + price)
+        # 累加未结算战锤 - 装备
         unXiantaoCntEquip = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_UnXiantaoCntEquip)
         NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_UnXiantaoCntEquip, unXiantaoCntEquip + price)
+        # 累加未结算战锤 - 战利品
+        chapterID = GetMainLevelNowInfo(curPlayer)[0]
+        chapterIpyData = IpyGameDataPY.GetIpyGameData("MainChapter", chapterID)
+        if chapterIpyData:
+            DailyBootyUpperList = chapterIpyData.GetDailyBootyUpperList()
+            for itemID, upperCnt in DailyBootyUpperList:
+                if upperCnt <= 0:
+                    continue
+                if curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_BootyDropToday % itemID) >= upperCnt:
+                    continue
+                unXiantaoCntBooty = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_UnXiantaoCntBooty % itemID)
+                NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_UnXiantaoCntBooty % itemID, unXiantaoCntBooty + price)
+                
         PlayerPrestigeSys.AddRealmTaskValue(curPlayer, PlayerPrestigeSys.RealmTaskType_UseXiantao, price)
     unitPrice = price if quantity == 1 else int(math.ceil(price * 1.0 / quantity)) # 单价
     #reason_name = "Unknown" if not costType else costType
@@ -3476,7 +3491,8 @@
         
         # 杀怪
         if expViewType == ShareDefine.Def_ViewExpType_KillNPC:
-            exp_rate = curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_TotalExpRate)
+            #exp_rate = curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_TotalExpRate)
+            exp_rate = 10000
         elif expViewType in [ShareDefine.Def_ViewExpType_GameEvent, ShareDefine.Def_ViewExpType_Sit]:
             exp_rate = curPlayer.GetGameEventExpRate()
             #exp_rate += GetFamilySitExpPer(curPlayer)
@@ -4965,12 +4981,6 @@
     insidePerAttrDict = {}
     customAttrDict = {}
     return attrList, insidePerAttrDict, customAttrDict
-
-def GetLordAttr(curPlayer):
-    ## 获取主公属性汇总
-    lordAttrDict = {"Atk":curPlayer.GetMaxAtk(), "Def":curPlayer.GetDef(), "MaxHP":GameObj.GetMaxHP(curPlayer), 
-                    "Hit":curPlayer.GetHit(), "Miss":curPlayer.GetMiss()}
-    return lordAttrDict
 
 #-------------------------------------------------------------------------------
 ## 设置玩家字典值, 存库

--
Gitblit v1.8.0