From 8d7acf4fc03f7166603614ebc8d82cbcb7855656 Mon Sep 17 00:00:00 2001
From: xdh <xiefantasy@qq.com>
Date: 星期一, 03 九月 2018 16:38:51 +0800
Subject: [PATCH] fix:1796 刚进仙盟宴会地图,就显示获得了1w多盟贡

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ItemControler.py |   28 +++++++++++++++++++++++-----
 1 files changed, 23 insertions(+), 5 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ItemControler.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ItemControler.py
index 0a59194..a59fb05 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ItemControler.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ItemControler.py
@@ -1009,7 +1009,7 @@
 #    小心, 小心, 小心, 小心, 小心
 #    eggxp
 #===============================================================================
-    def __PutItemInVPack(self, packIndex, tagItem, event):
+    def PutItemInVPack(self, packIndex, tagItem, event=["", False, {}]):
         # 虚拟背包, 默认不做叠加
         curPlayer = self.__Player
         canPutInCnt = 1
@@ -1044,7 +1044,7 @@
             Sync_VPackItem_Refresh(curPlayer, packIndex, refreshPlaceList)
 
         if tagItem and not tagItem.IsEmpty():
-            tagItem.Clear()
+            #tagItem.Clear()
             return False
         return True
     
@@ -1103,7 +1103,7 @@
         
         # 虚拟背包, 默认不做叠加
         if packIndex in ShareDefine.Def_VPack_TypeList:
-            return self.__PutItemInVPack(packIndex, tagItem, event)
+            return self.PutItemInVPack(packIndex, tagItem, event)
         
         eventName, isForceEvent, addDict = event
 
@@ -1391,6 +1391,14 @@
     #curItemGUID = curItem.GetGUID()
     curItemCount = curItem.GetCount()
     curItemIsBind = curItem.GetIsBind()
+    toPackIndex = ChConfig.GetItemPackType(curItem.GetType(), toPackIndex)
+    
+    # 常规物品转移到虚拟符印背包
+    if toPackIndex == ShareDefine.rptRune:
+        if not ItemCommon.CheckPackHasSpace(curPlayer, toPackIndex, True):
+            return False
+        return itemControl.PutItemInVPack(toPackIndex, curItem)
+    
     checkRet, putIndex = itemControl.CanPutInItemEx(toPackIndex, curItemTypeID, curItemCount, curItemIsBind)
     if not checkRet:
         return False
@@ -1571,6 +1579,8 @@
     itemList = []   # 非装备普通物品
     equipGSGreaterList = [] # 属于本职业的高评分装备
     equipGSLesserList = []  # 低评分装备和非本职业
+    runeItemList = []   # 符印
+    
     #EquipGSTypeForSort
     equipPack = curPlayer.GetItemManager().GetPack(IPY_GameWorld.rptEquip)
     #组合列表
@@ -1591,7 +1601,9 @@
                 equipGS = 1
                 cmpEquipGS = 2
                 
-            if equipGS == 0:
+            if tmpItem.GetType() in [ChConfig.Def_ItemType_Rune, ChConfig.Def_ItemType_RuneExp]:
+                runeItemList.append(tmpItem)
+            elif equipGS == 0:
                 itemList.append(tmpItem)
             elif equipGS > cmpEquipGS:
                 equipGSGreaterList.append(tmpItem)
@@ -1601,7 +1613,8 @@
     equipGSGreaterList.sort(__CmpRolePack)
     itemList.sort(__CmpRolePack)
     equipGSLesserList.sort(__CmpRolePack)
-
+    runeItemList.sort(__CmpRolePack)
+    
     #===========================================================================
     # GameWorld.DebugLog("equipGSGreaterList")
     # for item in equipGSGreaterList:
@@ -1636,6 +1649,11 @@
     for item in equipGSLesserList:
         curPack.GetAt(putPlace).AssignItem(item, False)
         putPlace += 1
+        
+    for item in runeItemList:
+        curPack.GetAt(putPlace).AssignItem(item, False)
+        putPlace += 1
+        
     return
 
 

--
Gitblit v1.8.0