From bf398236af3eefb4587f8138a5d6c916c69838d3 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期三, 20 三月 2019 15:23:29 +0800
Subject: [PATCH] 6382 【后端】【2.0】功能是否绑定及拍品优化调整(拍品限制使用)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerPet.py                    |    2 
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/FunctionNPCCommon.py    |   42 --------------------
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_EquipStone.py   |    2 
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ChEquip.py                        |    2 
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ItemControler.py                  |    8 ++--
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/ItemCommon.py             |   38 +++++-------------
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerDogz.py                   |    3 +
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/EquipZhuXian.py                   |    2 
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ChItem.py                         |    4 +-
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerHorse.py                  |    2 
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_ItemCompound.py |    4 +-
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerWing.py                   |    3 +
 12 files changed, 29 insertions(+), 83 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/FunctionNPCCommon.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/FunctionNPCCommon.py
index 0277155..ee2cbd9 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/FunctionNPCCommon.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/FunctionNPCCommon.py
@@ -936,46 +936,6 @@
 
     return True
 
-
-#---------------------------------------------------------------------
-##检查物品可否修理
-# @param curPlayer 玩家实例
-# @param curItem 物品实例
-# @param farRepair 是否远程修理
-# @return 返回值真, 检查通过
-# @remarks 检查物品可否修理
-#===============================================================================
-# def __CheckRepairItem(curPlayer, curItem, farRepair):
-#    
-#    if not ItemCommon.CheckItemCanUse(curItem):
-#        if not farRepair:
-#            #封包信息不正确
-#            PlayerControl.NotifyCode(curPlayer, "UseResLost04")
-#            
-#        return
-#    
-#    if curItem.GetCanRepair() == 0:
-#        if not farRepair:
-#            #物品不可修理
-#            PlayerControl.NotifyCode(curPlayer, "UseResLost13")   
-#            
-#        return
-#    
-#    if ItemControler.IsEventItem(curItem):
-#        if not farRepair:
-#            PlayerControl.NotifyCode(curPlayer, "itemuse_chenxin_31379")
-#             
-#        return
-#    
-#    if curItem.GetEndureReduceType() == ChConfig.Def_EquipReduceType_None or curItem.GetMaxEndure() == 0:
-#        if not farRepair:
-#            #耐久字段为0,不符合要求,返回
-#            PlayerControl.NotifyCode(curPlayer, "UseResLost13")
-#            
-#        return
-#    
-#    return True
-#===============================================================================
 #--------------------出售物品
 ##出售物品
 # @param curPlayer 玩家实例
@@ -1097,7 +1057,7 @@
 # @return 返回值真, 检查通过
 # @remarks 检查物品是否可以出售
 def __CheckItemSell(curPlayer, curItem) :
-    if not ItemCommon.CheckItemCanUse(curItem):
+    if not ItemCommon.CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
         PlayerControl.NotifyCode(curPlayer, "GeRen_chenxin_644055")
         return
     
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_EquipStone.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_EquipStone.py
index 9c2907d..521fbce 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_EquipStone.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_EquipStone.py
@@ -144,7 +144,7 @@
     itemPack = curPlayer.GetItemManager().GetPack(stonePackType)
     curStone = itemPack.GetAt(stoneIndex)
     
-    if not ItemCommon.CheckItemCanUse(curStone):
+    if not ItemCommon.CheckItemCanUse(curStone) or ItemControler.GetIsAuctionItem(curStone):
         GameWorld.Log("目标宝石为空或不可用,无法镶嵌!", playerID)
         return
     
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_ItemCompound.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_ItemCompound.py
index d5f2137..bd1d57f 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_ItemCompound.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_ItemCompound.py
@@ -578,7 +578,7 @@
     return incRateItemCostList, expireTime
 
 def __CheckItemCanUseCompound(playerID, index, curItem):
-    if not ItemCommon.CheckItemCanUse(curItem):
+    if not ItemCommon.CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
         GameWorld.DebugLog("该物品不可使用!无法合成! index=%s" % (index), playerID)
         return
     
@@ -710,7 +710,7 @@
         return
     curEquip = itemPack.GetAt(decompoundItemIndex)
     
-    if not ItemCommon.CheckItemCanUse(curEquip):
+    if not ItemCommon.CheckItemCanUse(curEquip) or ItemControler.GetIsAuctionItem(curEquip):
         return
     
     attrCount = curEquip.GetUserAttrCount(ShareDefine.Def_IudetItemDecompound)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ChEquip.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ChEquip.py
index 51af11b..7797afd 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ChEquip.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ChEquip.py
@@ -400,7 +400,7 @@
     equipIndex = sendPack.GetEquipIndex()
     curEquip = roleEquipPack.GetAt(equipIndex)
     
-    if not ItemCommon.CheckItemCanUse(curEquip):
+    if not ItemCommon.CheckItemCanUse(curEquip) or ItemControler.GetIsAuctionItem(curEquip):
         return
     
     #FB禁止使用物品
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 7303ec5..1eed77b 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ChItem.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ChItem.py
@@ -544,7 +544,7 @@
 #  @remarks 
 def CheckPlayerUseItemSelf(curPlayer, curItem, tick):
     #----------------------检查非法物品属性
-    if not ItemCommon.CheckItemCanUse(curItem):
+    if not ItemCommon.CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
         PlayerControl.NotifyCode(curPlayer, "GeRen_chenxin_644055")
         return False
     
@@ -1059,7 +1059,7 @@
     curItem = curPack.GetAt(itemIndex)
     
     #物品不存在
-    if not ItemCommon.CheckItemCanUse(curItem):
+    if not ItemCommon.CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
         return
 
     #检查物品可否丢弃
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/EquipZhuXian.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/EquipZhuXian.py
index 67b4e12..ddf0f1d 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/EquipZhuXian.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/EquipZhuXian.py
@@ -111,7 +111,7 @@
     
     zhuXianItemPack = curPlayer.GetItemManager().GetPack(ShareDefine.rptZhuXianItem)
     curEquip = zhuXianItemPack.GetAt(itemIndex)
-    if not ItemCommon.CheckItemCanUse(curEquip):
+    if not ItemCommon.CheckItemCanUse(curEquip) or ItemControler.GetIsAuctionItem(curEquip):
         GameWorld.DebugLog("物品为空或不可用: itemIndex=%s" % itemIndex, playerID)
         return
     if not ItemCommon.GetIsZhuXianEquip(curEquip):
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 96fd006..d9ea722 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ItemControler.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ItemControler.py
@@ -113,7 +113,7 @@
     for i in range(0, curPack.GetCount()):
         item = curPack.GetAt(i)
         
-        if not ItemCommon.CheckItemCanUse(item):
+        if not ItemCommon.CheckItemCanUse(item) or GetIsAuctionItem(item):
             continue
         
         if item.GetItemTypeID() == id:
@@ -133,7 +133,7 @@
     for i in range(0, curPack.GetCount()):
         item = curPack.GetAt(i)
         
-        if not ItemCommon.CheckItemCanUse(item):
+        if not ItemCommon.CheckItemCanUse(item) or GetIsAuctionItem(item):
             continue
         
         if item.GetItemTypeID() == id:
@@ -152,7 +152,7 @@
     for i in range(0, curPack.GetCount()):
         item = curPack.GetAt(i)
         
-        if not ItemCommon.CheckItemCanUse(item):
+        if not ItemCommon.CheckItemCanUse(item) or GetIsAuctionItem(item):
             continue
         
         effect = item.GetEffectByIndex(0)
@@ -273,7 +273,7 @@
     for i in range(0, curPack.GetCount()):
         
         item = curPack.GetAt(i)
-        if not ItemCommon.CheckItemCanUse(item):
+        if not ItemCommon.CheckItemCanUse(item) or GetIsAuctionItem(item):
             continue
         
         if item.GetItemTypeID() != id:
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 2629e35..24050e1 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
@@ -562,7 +562,7 @@
 #  @return True or False
 #  @remarks 函数详细说明.
 def CheckItemByEffectID(curPlayer, curItem, effectList):
-    if not CheckItemCanUse(curItem):
+    if not CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
         return False
     
     if not ItemControler.CheckItemUseLV(curPlayer, curItem, False):
@@ -623,7 +623,7 @@
     for i in range(backPack.GetCount()):
         curItem = backPack.GetAt(i)
         
-        if not CheckItemCanUse(curItem):
+        if not CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
             continue
         
         if curItem.GetItemTypeID() != findItemID:
@@ -988,22 +988,6 @@
     
     return isExpireItem, remainingTime
 
-##检查该物品是否合法,类型验证
-# @param curItem 物品实例
-# @param checkType 物品类型 
-# @return 布尔值(物品是否合法)
-# @remarks 检查该物品是否合法,类型验证
-def CheckItemByType(curItem, checkType):
-    #验证材料
-    if not CheckItemCanUse(curItem):
-        return False
-    
-    #类型不符合
-    if curItem.GetType() != checkType:
-        return False
-    
-    return True
-
 ## 检查装备是否有镶嵌宝石
 #  @param curItem 装备对象
 #  @return True-有 
@@ -1180,7 +1164,7 @@
     for i in range(curItemPack.GetCount()):
         findItem = curItemPack.GetAt(i)
         
-        if not CheckItemCanUse(findItem):
+        if not CheckItemCanUse(findItem) or ItemControler.GetIsAuctionItem(findItem):
             continue
         
         #不使用绑定的材料
@@ -1223,7 +1207,7 @@
     for i in range(curItemPack.GetCount()):
         curItem = curItemPack.GetAt(i)
         
-        if not CheckItemCanUse(curItem):
+        if not CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
             continue
         
         #不使用绑定的材料
@@ -1262,7 +1246,7 @@
     for i in range(curItemPack.GetCount()):
         curItem = curItemPack.GetAt(i)
         
-        if not CheckItemCanUse(curItem):
+        if not CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
             continue
         
         if curItem.GetItemTypeID() != findItemID:
@@ -1304,7 +1288,7 @@
     for i in range(itemPack.GetCount()):
         curItem = itemPack.GetAt(i)
         #过滤不符合其他条件的物品
-        if not CheckItemCanUse(curItem):
+        if not CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
             continue
         
         if curItem.GetItemTypeID() != findItemID:
@@ -1346,7 +1330,7 @@
     for i in range(itemPack.GetCount()):
         curItem = itemPack.GetAt(i)
         #过滤不符合其他条件的物品
-        if not CheckItemCanUse(curItem):
+        if not CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
             continue
         
         if curItem.GetItemTypeID() != findItemID:
@@ -1392,7 +1376,7 @@
     for i in range(itemPack.GetCount()):
         curItem = itemPack.GetAt(i)
         #过滤不符合其他条件的物品
-        if not CheckItemCanUse(curItem):
+        if not CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
             continue
         
         if curItem.GetItemTypeID() != findItemID:
@@ -1539,7 +1523,7 @@
     for i in xrange(itemPack.GetCount()):
         curItem = itemPack.GetAt(i)
         #过滤不符合其他条件的物品
-        if not CheckItemCanUse(curItem):
+        if not CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
             continue
         curItemID = curItem.GetItemTypeID()
         if curItemID not in costItemDict:
@@ -1643,7 +1627,7 @@
     for index in range(0, itemPack.GetCount()):
         item = itemPack.GetAt(index)
         
-        if not CheckItemCanUse(item):
+        if not CheckItemCanUse(item) or ItemControler.GetIsAuctionItem(item):
             continue
         
         itemTypeID = item.GetItemTypeID()
@@ -1844,7 +1828,7 @@
         curItem = curItemPack.GetAt(i)
         
         #检查物品
-        if not CheckItemCanUse(curItem):
+        if not CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
             continue
         
         effect = curItem.GetEffectByIndex(0)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerDogz.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerDogz.py
index 810b06f..fb1f598 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerDogz.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerDogz.py
@@ -31,6 +31,7 @@
 import PlayerSuccess
 import DataRecordPack
 import PlayerWeekParty
+import ItemControler
 
 import time
 
@@ -112,7 +113,7 @@
     for equipIndex in equipIndexList:
         dogzItemPack = curPlayer.GetItemManager().GetPack(ShareDefine.rptDogzItem)
         curEquip = dogzItemPack.GetAt(equipIndex)
-        if not ItemCommon.CheckItemCanUse(curEquip):
+        if not ItemCommon.CheckItemCanUse(curEquip) or ItemControler.GetIsAuctionItem(curEquip):
             GameWorld.DebugLog("物品为空或不可用: equipIndex=%s" % equipIndex, playerID)
             continue
         if not ItemCommon.GetIsDogzEquip(curEquip):
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerHorse.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerHorse.py
index 382d223..6578f90 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerHorse.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerHorse.py
@@ -623,7 +623,7 @@
                 curItem = curItemPack.GetAt(itemIndex)
                 
                 #检查物品
-                if not ItemCommon.CheckItemCanUse(curItem):
+                if not ItemCommon.CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
                     continue
                 
                 itemCnt = curItem.GetCount()
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerPet.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerPet.py
index 60d1280..45ae6dd 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerPet.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerPet.py
@@ -626,7 +626,7 @@
             for itemIndex in itemIndexList:
                 curItem = curItemPack.GetAt(itemIndex)
                 #检查物品
-                if not ItemCommon.CheckItemCanUse(curItem):
+                if not ItemCommon.CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
                     continue
                 itemCnt = curItem.GetCount()
                 nowCnt += itemCnt
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerWing.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerWing.py
index bb85dec..2270926 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerWing.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerWing.py
@@ -23,6 +23,7 @@
 import ItemCommon
 import GameFuncComm
 import PlayerSuccess
+import ItemControler
 import ChEquip
 
 import random
@@ -107,7 +108,7 @@
     wingClassLV = ItemCommon.GetItemClassLV(curWing)
     for index in materialMessageList:
         curItem = itemPack.GetAt(index)
-        if not ItemCommon.CheckItemCanUse(curItem):
+        if not ItemCommon.CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
             GameWorld.DebugLog("这个格子没有合法材料,index=%s" % index)
             continue
         curItemID = curItem.GetItemTypeID()

--
Gitblit v1.8.0