From 6018c2872ce2e6d7a22fcc09d39ff4267a42c746 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期五, 10 五月 2019 15:15:05 +0800
Subject: [PATCH] 6723 【后端】【2.0】灵器1.0版本

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerState.py |   72 ++++++++++++++++++------------------
 1 files changed, 36 insertions(+), 36 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerState.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerState.py
index 7c339df..abd7f1d 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerState.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerState.py
@@ -673,14 +673,14 @@
 # @remarks 刷新以单位时间(分钟)消耗耐久的物品
 def ProcessRefreshTimeItem(curPlayer, tick):
     reFlash = False
-
+    
     #2分钟遍历一次,时效道具时间到不消失,
     if tick - curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_EquipTime) \
-    < ChConfig.TYPE_Player_Tick_Time[ChConfig.TYPE_Player_Tick_TimeItem] :
+        < ChConfig.TYPE_Player_Tick_Time[ChConfig.TYPE_Player_Tick_TimeItem]:
         return reFlash
     #耐久减少值/分钟
     reFlash = ProcessTimeEquip(curPlayer, tick)
-
+    
     return reFlash
 
 
@@ -1074,38 +1074,38 @@
 # @return 布尔值
 # @remarks 处理耐久计算方式为:现实时间刷新方式的物品
 def ProcessTimeEquip(curPlayer, tick):
-    return
-#境界装备修改,暂屏蔽,待优化
-#    itemManager = curPlayer.GetItemManager()
-#    hasItemClear = False
-#
-#    curPack = itemManager.GetPack(IPY_GameWorld.rptEquip)
-#    for i in range(0, curPack.GetCount()):
-#        curItem = curPack.GetAt(i)
-#        
-#        #异常物品
-#        if not ItemCommon.CheckItemCanUse(curItem):
-#            continue
-#
-#        if curItem.GetEndureReduceType() not in [ChConfig.Def_EquipReduceType_RTimeItem,
-#                                             ChConfig.Def_EquipReduceType_Time]:
-#            continue
-#
-#        #处理现实时间物品逻辑
-#        if __DoLogic_ProcessTimeEquip(curPlayer, curItem, i):
-#            hasItemClear = True
-#            
-#    
-#    if hasItemClear:
-#        #装备重刷属性
-#        PlayerWing.CalcWingAttr(curPlayer)
-#        ChEquip.RefreshPlayerEquipAttribute(curPlayer)
-#            
-#    
-#    # 进行更新时效道具刷新时间
-#    curPlayer.SetDict(ChConfig.Def_PlayerKey_EquipTime, tick)
-#    
-#    return hasItemClear
+    itemManager = curPlayer.GetItemManager()
+    hasItemClear = False
+    
+    classLV = 0 # 只处理非境界装备的时效物品
+    curPack = itemManager.GetPack(IPY_GameWorld.rptEquip)
+    for equipPlace in ChConfig.EquipPlace_LingQi:
+        ipyData = IpyGameDataPY.GetIpyGameData('EquipPlaceIndexMap', classLV, equipPlace)
+        if not ipyData:
+            continue
+        index = ipyData.GetGridIndex()
+        curItem = curPack.GetAt(index)
+        
+        #异常物品
+        if not ItemCommon.CheckItemCanUse(curItem):
+            continue
+        
+        if curItem.GetEndureReduceType() not in [ChConfig.Def_EquipReduceType_RTimeItem,
+                                                 ChConfig.Def_EquipReduceType_Time]:
+            continue
+        
+        #处理现实时间物品逻辑
+        if __DoLogic_ProcessTimeEquip(curPlayer, curItem, index):
+            hasItemClear = True
+            
+    if hasItemClear:
+        #装备重刷属性
+        ChEquip.RefreshPlayerLingQiEquipAttr(curPlayer)
+        
+    # 进行更新时效道具刷新时间
+    curPlayer.SetDict(ChConfig.Def_PlayerKey_EquipTime, tick)
+    return hasItemClear
+
 #---------------------------------------------------------------------
 ## 装备有效时间到了需要脱下,有效时间物品改成不消失,但是无使用效果 可出售和续费
 def __DoLogic_ProcessTimeEquip(curPlayer, curItem, equipIndex):
@@ -1122,7 +1122,7 @@
         # 没有空位,玩家主动取下,计算属性时无效化
         # 过期属性时效需刷属性
         return True
-
+    
     result = ItemControler.PlayerItemControler(curPlayer).UnEquipItem(equipIndex, spaceIndex)
     if not result:
         # 过期属性时效需刷属性

--
Gitblit v1.8.0