From b956329f5b43cd5c85e0aef5f958a776f02ef98d Mon Sep 17 00:00:00 2001
From: xdh <xiefantasy@qq.com>
Date: 星期四, 23 五月 2019 11:16:09 +0800
Subject: [PATCH] 6912 【2.0】【后端】洗炼、升星广播显示穿戴装备信息

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_EquipWash.py |   15 ++++++++++++---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_EquipStar.py |    6 +++++-
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/ItemCommon.py          |    4 ++--
 3 files changed, 19 insertions(+), 6 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_EquipStar.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_EquipStar.py
index 83a3a01..a28f8ec 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_EquipStar.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_EquipStar.py
@@ -92,7 +92,11 @@
         playControl.RefreshPlayerAttrState()
   
         if updPartStar in IpyGameDataPY.GetFuncEvalCfg('EquipPartStarNotify'):
-            PlayerControl.WorldNotify(0, "StarLevelUp", [curPlayer.GetPlayerName(), curEquip.GetItemTypeID(), updPartStar])
+            itemID = curEquip.GetItemTypeID()
+            userData = curEquip.GetUserData()
+            guid = ItemCommon.CacheNotifyEquipDetailInfo(curPlayer, curEquip)
+            msgParamList = [curPlayer.GetPlayerName(), itemID, userData, guid, updPartStar]
+            PlayerControl.WorldNotify(0, "StarLevelUp", msgParamList)
         EventShell.EventRespons_EquipStarUp(curPlayer)
     return
      
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_EquipWash.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_EquipWash.py
index 9201b05..87d2866 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_EquipWash.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_EquipWash.py
@@ -308,6 +308,11 @@
     ipyData = IpyGameDataPY.GetIpyGameDataByCondition('EquipPlaceIndexMap', {'GridIndex':equipPackindex})
     if not ipyData:
         return
+    curPack = curPlayer.GetItemManager().GetPack(IPY_GameWorld.rptEquip)
+    curEquip = curPack.GetAt(equipPackindex)
+    if not curEquip or curEquip.IsEmpty():
+        GameWorld.DebugLog("OnEquipWashAttrChangeOK() equip is empty")
+        return
     equipPlace = ipyData.GetEquipPlace()
     classLV = ipyData.GetClassLV()
     washLV = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_EquipWashLV % equipPackindex)
@@ -329,7 +334,7 @@
         if washLV >= maxWashLV:
             GameWorld.DebugLog("已达到最大洗练等级,不可升级!", playerID)
             return
-        if CheckEquipWashLVUp(curPlayer, equipPackindex, classLV, equipPlace, washLV, washData):
+        if CheckEquipWashLVUp(curPlayer, curEquip, equipPackindex, washLV, washData):
             RefreshEquipWashAttr(curPlayer, classLV)
             Sycn_EquipWashInfo(curPlayer, equipPackindex)
             EquipWashSuccess(curPlayer)
@@ -358,7 +363,7 @@
     Sycn_EquipWashInfo(curPlayer, equipPackindex)
     return
 
-def CheckEquipWashLVUp(curPlayer, equipPackindex, classLV, equipPlace, washLV, washData):
+def CheckEquipWashLVUp(curPlayer, curEquip, equipPackindex, washLV, washData):
     # 检查洗练类型升级
     
     for attrNum in range(1, Def_EquipWashMaxAttrCount + 1):
@@ -370,7 +375,11 @@
     SetEquipWashLV(curPlayer, equipPackindex, washLV)
     
     # 洗练广播
-    PlayerControl.WorldNotify(0, "WashCongratulation", [curPlayer.GetPlayerName(), curPlayer.GetPlayerID(), classLV, equipPlace, washLV])
+    itemID = curEquip.GetItemTypeID()
+    userData = curEquip.GetUserData()
+    guid = ItemCommon.CacheNotifyEquipDetailInfo(curPlayer, curEquip)
+    msgParamList = [curPlayer.GetPlayerName(), itemID, userData, guid, washLV]
+    PlayerControl.WorldNotify(0, "WashCongratulation", msgParamList)
     return True
 
 def SetEquipWashLV(curPlayer, index, setWashLV):
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/ItemCommon.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/ItemCommon.py
index 772cbfb..9a19d41 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/ItemCommon.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/ItemCommon.py
@@ -753,8 +753,8 @@
             if not classEquip or classEquip.IsEmpty():
                 continue
             equipID = classEquip.GetItemTypeID()
-            equipStar = ChEquip.GetEquipPartStarByRank(curPlayer, index, classEquip)
-            classItems.append([equipID, equipStar])
+            star = ChEquip.GetEquipPartStarByRank(curPlayer, index, classEquip)
+            classItems.append([equipID, star])
             
     cacheInfo = [guid, itemID, equipStar, plusLV, plusEvolveLV, washLV, washValueList, stoneIDList, classItems]
     cacheInfo = json.dumps(cacheInfo, ensure_ascii=False)

--
Gitblit v1.8.0