From fbf3fe5655d97c67db3bf07706ab5af232dcc9a5 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期四, 18 九月 2025 19:17:48 +0800
Subject: [PATCH] 129 【战斗】战斗系统-服务端(甘夫人技能;增加连击、追击增伤减伤属性;)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ChItem.py |  133 ++++++-------------------------------------
 1 files changed, 20 insertions(+), 113 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ChItem.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ChItem.py
index e4e12c9..36d166c 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ChItem.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ChItem.py
@@ -42,7 +42,6 @@
 import ReadChConfig
 import OperControlManager
 import ShareDefine
-import PlayerAttrFruit
 import DataRecordPack
 import ChPyNetSendPack
 import NetPackCommon
@@ -110,7 +109,7 @@
 #===============================================================================
 def __Func_InitItem(tick):
     #初始化物品掉落保护
-    MapItemProtectTime = IpyGameDataPY.GetFuncCfg("MapItemProtectTime")
+    MapItemProtectTime = 120000 #IpyGameDataPY.GetFuncCfg("MapItemProtectTime")
     GameWorld.GetMapItemManager().SetProtectTime(MapItemProtectTime)
     
     #===============================================================================================
@@ -190,8 +189,6 @@
     mapItemCount = singItem.GetCount()
     singItemGUID = singItem.GetGUID()
     curEffID = singItem.GetEffectByIndex(0).GetEffectID()
-    playerTeam = curPlayer.GetTeam()
-    #isTeamNotify = (ownerType == ChConfig.Def_NPCHurtTypeTeam and playerTeam != None)
     isTeamNotify = False
     # 拾取金钱
     if mapItemType == ChConfig.Def_ItemType_Money:
@@ -199,10 +196,6 @@
                                        ChConfig.Def_GiveMoney_Pickup, {}, not isTeamNotify):
             return
         
-        # 提示获得金钱数量
-        if isTeamNotify:
-            PlayerControl.TeamNotify(playerTeam.GetTeamID(), "GeRen_lhs_295695", [curPlayer.GetName(),
-                                                                                   mapItemCount])
         # 副本拾取金钱
         FBLogic.OnFBPickUpItem(curPlayer, singItem, tick)
         singItem.Clear()
@@ -462,12 +455,12 @@
 def __DoLogic_PlayerUseItemSelf(curPlayer, useItemIndex, tick, useCnt=1, exData=0):
     
     #使用物品行为状态, 判断客户端限制
-    if not OperControlManager.IsObjCanDoAction(
-                                        curPlayer, 
-                                        ChConfig.Def_Obj_ActState_ClientAct, 
-                                        IPY_GameWorld.oalUseItem
-                                        ):
-        return False
+    #if not OperControlManager.IsObjCanDoAction(
+    #                                    curPlayer, 
+    #                                    ChConfig.Def_Obj_ActState_ClientAct, 
+    #                                    IPY_GameWorld.oalUseItem
+    #                                    ):
+    #    return False
 
     #------------------封包参数 获得 玩家物品
     backPack = curPlayer.GetItemManager().GetPack(IPY_GameWorld.rptItem)
@@ -648,15 +641,6 @@
         #这个物品不是一般物品, 直接返回结果
         return useSpecialItemResult
     
-    #---特殊装备不验证装备属性, 普通物品要验证装备属性---
-    itemControler = ItemControler.PlayerItemControler(curPlayer)
-    
-    #装备无法使用
-    if itemControler.PlayerCanEquipItem(curItem, False):
-        #这个物品是装备
-        PlayerControl.NotifyCode(curPlayer, "GeRen_chenxin_774045")
-        return
-    
     #物品类型ID
     itemTypeID = curItem.GetItemTypeID()
     
@@ -683,10 +667,6 @@
 #  @return None or True
 #  @remarks 函数详细说明.
 def __DealWith_SpecialItem(curPlayer, curItem, tick, useCnt, exData):
-    #果实物品
-    useFruitResult = PlayerAttrFruit.DoPlayerEatFruitItem(curPlayer, curItem, useCnt)
-    if useFruitResult != -1:
-        return useFruitResult
     
     #------------------------获得物品相关属性
     itemTypeID = curItem.GetItemTypeID()  #物品类型id
@@ -724,7 +704,6 @@
                             ChConfig.Def_Effect_TrainRealmLV:"Item_TrainRealmLV", # 境界培养卡
                             ChConfig.Def_Effect_ResetBossKillCnt:"Item_ResetBossKillCnt", # 重置boss击杀疲劳
                             ChConfig.Def_Effect_AddFBCnt:"Item_AddFBCnt", # 增加副本可进入次数
-                            ChConfig.Def_Effect_AddArenaBattleCount:"Item_AddArenaBattleCount", # 增加竞技场挑战次数
                             ChConfig.Def_Effect_AddKillBossCnt:"Item_AddKillBossCnt", # 增加BOSS可击杀次数
                             ChConfig.Def_Effect_AddMagicWeaponUpExp:"Item_AddMagicWeaponUpExp", # 增加法宝升星经验
                             ChConfig.Def_Effect_ChatBubbleBox:"Item_ChatBubbleBox", # 激活聊天气泡框
@@ -734,6 +713,8 @@
                             ChConfig.Def_Effect_ItemGiveWeekPartyPoint1:"Item_WeekPartyPoint", # 增加活动巡礼积分
                             ChConfig.Def_Effect_AddRealmExpRate:"Item_AddRealmExpRate", # 增加聚灵效率
                             ChConfig.Def_Effect_TouchMission:"Item_TouchMission",  # 触发任务接口
+                            ChConfig.Def_Effect_HeroSkin:"Item_HeroSkin",  # 武将皮肤
+                            #ChConfig.Def_Effect_AddArenaBattleCount:"Item_AddArenaBattleCount", # 增加竞技场挑战次数
                             #ChConfig.Def_Effect_FamilyImpeach:"Item_FamilyImpeach",  # 弹劾符
                             #ChConfig.Def_Effect_ClothesCoatSkin:"Item_ClothesCoatSkin", #激活时装皮肤
                             #ChConfig.Def_Effect_AddOfficialExp:"Item_AddOfficialExp", # 增加爵位经验
@@ -895,25 +876,25 @@
 #  @return 布尔值
 #  @remarks 检查使用物品的玩家属性.
 def CheckUseItemSelf_Player(curPlayer):
-    if GameObj.GetHP(curPlayer) <= 0 :
-        return False
+    #if GameObj.GetHP(curPlayer) <= 0 :
+    #    return False
     
 #    #眩晕时, 不可使用物品
 #    if curPlayer.GetAbnormalState() == IPY_GameWorld.sctFaint:
 #        return False
     
     #使用物品行为状态, 判断服务端限制
-    if not OperControlManager.IsObjCanDoAction(
-                                        curPlayer, 
-                                        ChConfig.Def_Obj_ActState_ServerAct, 
-                                        IPY_GameWorld.oalUseItem
-                                        ):
-        return False
+    #if not OperControlManager.IsObjCanDoAction(
+    #                                    curPlayer, 
+    #                                    ChConfig.Def_Obj_ActState_ServerAct, 
+    #                                    IPY_GameWorld.oalUseItem
+    #                                    ):
+    #    return False
     
     #交易状态, 不可使用物品
-    if curPlayer.GetPlayerAction() == IPY_GameWorld.paTrade:
-        PlayerControl.NotifyCode(curPlayer, "GeRen_lhs_372238")
-        return False
+    #if curPlayer.GetPlayerAction() == IPY_GameWorld.paTrade:
+    #    PlayerControl.NotifyCode(curPlayer, "GeRen_lhs_372238")
+    #    return False
     
 #    #GM禁止使用
 #    if GameWorld.IsGM(curPlayer):
@@ -1742,80 +1723,6 @@
         infoDict[ShareDefine.Def_MapItemInfo_IsSuite] = 1
            
     return infoDict
-
-# 特别设定:卓越物品必带武器技能增强效果,使用者请特别注意
-## 装备动态属性,只用于未设置属性的singleItem,roleItem使用多次发背包刷新包
-#  @param curItem 玩家实例
-#  @param equipData
-#  @return 
-def EquipAddAdditionEx(curItem, equipData):
-    # 绑定
-    #if equipData.isBind:
-    #    ItemControler.SetItemIsBind(curItem, equipData.isBind)
-    
-    if not ItemCommon.CheckItemIsEquip(curItem):
-        return
-        
-    #===========================================================================
-    # # 强化等级
-    # if equipData.starLV:
-    #    curItem.SetItemStarLV(equipData.starLV)
-    # # 打孔
-    # if 0 < equipData.holeCnt <= curItem.GetMaxHoleCount():
-    #    curItem.SetCanPlaceStoneCount(equipData.holeCnt)
-    #    
-    # # 给镶嵌宝石
-    # for i, stoneID in enumerate(equipData.stoneData):
-    #    if i > equipData.holeCnt - 1:
-    #        break
-    #    
-    #    if stoneID <= 0:
-    #        continue
-    #    
-    #    curItem.SetStone(i, stoneID)
-    #===========================================================================
-           
-    # 套装
-    #if equipData.isSuite:
-    #    curItem.SetIsSuite(equipData.isSuite)
-    #if equipData.suiteLV:
-    #    curItem.SetUserAttr(ShareDefine.Def_IudetSuiteLV, equipData.suiteLV)
-    # 物品来源
-    if equipData.source:
-        curItem.SetUserAttr(ShareDefine.Def_IudetSource, equipData.source)
-    
-    # 传奇属性
-    if equipData.legendAttrIDList and equipData.legendAttrValueList:
-        curItem.ClearUserAttr(ShareDefine.Def_IudetLegendAttrID)
-        curItem.ClearUserAttr(ShareDefine.Def_IudetLegendAttrValue)
-        for i in xrange(len(equipData.legendAttrIDList)):
-            curItem.AddUserAttr(ShareDefine.Def_IudetLegendAttrID, equipData.legendAttrIDList[i])
-            curItem.AddUserAttr(ShareDefine.Def_IudetLegendAttrValue, equipData.legendAttrValueList[i])
-    # 传奇属性 - 神
-    if equipData.legendAttrIDListShen and equipData.legendAttrValueListShen:
-        curItem.ClearUserAttr(ShareDefine.Def_IudetLegendAttrIDShen)
-        curItem.ClearUserAttr(ShareDefine.Def_IudetLegendAttrValueShen)
-        for i in xrange(len(equipData.legendAttrIDListShen)):
-            curItem.AddUserAttr(ShareDefine.Def_IudetLegendAttrIDShen, equipData.legendAttrIDListShen[i])
-            curItem.AddUserAttr(ShareDefine.Def_IudetLegendAttrValueShen, equipData.legendAttrValueListShen[i])
-    # 传奇属性 - 仙
-    if equipData.legendAttrIDListXian and equipData.legendAttrValueListXian:
-        curItem.ClearUserAttr(ShareDefine.Def_IudetLegendAttrIDXian)
-        curItem.ClearUserAttr(ShareDefine.Def_IudetLegendAttrValueXian)
-        for i in xrange(len(equipData.legendAttrIDListXian)):
-            curItem.AddUserAttr(ShareDefine.Def_IudetLegendAttrIDXian, equipData.legendAttrIDListXian[i])
-            curItem.AddUserAttr(ShareDefine.Def_IudetLegendAttrValueXian, equipData.legendAttrValueListXian[i])
-    # 传奇属性 - 极
-    if equipData.legendAttrIDListJi and equipData.legendAttrValueListJi:
-        curItem.ClearUserAttr(ShareDefine.Def_IudetLegendAttrIDJi)
-        curItem.ClearUserAttr(ShareDefine.Def_IudetLegendAttrValueJi)
-        for i in xrange(len(equipData.legendAttrIDListJi)):
-            curItem.AddUserAttr(ShareDefine.Def_IudetLegendAttrIDJi, equipData.legendAttrIDListJi[i])
-            curItem.AddUserAttr(ShareDefine.Def_IudetLegendAttrValueJi, equipData.legendAttrValueListJi[i])
-            
-    ItemCommon.MakeEquipGS(curItem) 
-    return
-
 
 ## 判断装备是否是可加强装备
 #  @param curItem 物品实例

--
Gitblit v1.8.0