8255 【后端】【主干】拍品可使用及上下架优化(拍品可直接使用)
11个文件已修改
124 ■■■■■ 已修改文件
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_EquipStone.py 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_ItemCompound.py 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/AddLegendAttr.py 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ChEquip.py 49 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ChItem.py 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ItemControler.py 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/ItemCommon.py 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerDogz.py 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerHorse.py 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerPet.py 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerWing.py 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_EquipStone.py
@@ -170,7 +170,7 @@
    itemPack = curPlayer.GetItemManager().GetPack(stonePackType)
    curStone = itemPack.GetAt(stoneIndex)
    if not ItemCommon.CheckItemCanUse(curStone) or ItemControler.GetIsAuctionItem(curStone):
    if not ItemCommon.CheckItemCanUse(curStone):
        GameWorld.Log("目标宝石为空或不可用,无法镶嵌!", playerID)
        return
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/Operate_ItemCompound.py
@@ -676,7 +676,7 @@
    return incRateItemCostList, expireTime
def __CheckItemCanUseCompound(playerID, index, curItem):
    if not ItemCommon.CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
    if not ItemCommon.CheckItemCanUse(curItem):
        GameWorld.DebugLog("该物品不可使用!无法合成! index=%s" % (index), playerID)
        return
    
@@ -841,7 +841,7 @@
        return
    curEquip = itemPack.GetAt(decompoundItemIndex)
    
    if not ItemCommon.CheckItemCanUse(curEquip) or ItemControler.GetIsAuctionItem(curEquip):
    if not ItemCommon.CheckItemCanUse(curEquip):
        return
    
    attrCount = curEquip.GetUserAttrCount(ShareDefine.Def_IudetItemDecompound)
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/Commands/AddLegendAttr.py
@@ -41,10 +41,6 @@
        GameWorld.DebugAnswer(curPlayer, "非装备无法获得传奇属性!")
        return
    
    if ItemControler.GetIsAuctionItem(curItem):
        GameWorld.DebugAnswer(curPlayer, "拍品无法生成传奇属性!")
        return
    isAllAttr = cmdList[1] if len(cmdList) > 1 else 0
    legendAttrInfo = ItemControler.GetAddEquipLegendAttr(curItem, curPlayer, isAllAttr)
    if not legendAttrInfo:
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ChEquip.py
@@ -67,10 +67,6 @@
        return False
    playerItemControl = ItemControler.PlayerItemControler(curPlayer)
    
    if ItemControler.GetIsAuctionItem(curItem):
        GameWorld.DebugLog("拍品无法穿戴!")
        return False
    #---验证是否可以换这件装备---
    if not ItemCommon.CheckItemCanUse(curItem):
        return False
@@ -530,51 +526,6 @@
    
    #装备的被动触发类技能
    PassiveBuffEffMng.GetPassiveEffManager().RegistSuperEquipSkillDict(curPlayer)
    return
#---------------------------------------------------------------------
## 玩家使用装备(在装备栏上的特殊物品:如蛋白)(封包参数)
#  @param index 玩家索引
#  @param tick 当前时间
#  @return None
#  @remarks 函数详细说明.
def __Func_PlayerUseEquipSelf(index, tick):
    sendPack = IPY_GameWorld.IPY_CUseEquip()
    curPlayer = GameWorld.GetPlayerManager().GetPlayerByIndex(index)
    #使用物品行为状态, 判断客户端限制
    if not OperControlManager.IsObjCanDoAction(
                                        curPlayer,
                                        ChConfig.Def_Obj_ActState_ClientAct,
                                        IPY_GameWorld.oalUseItem
                                        ):
        return
    #检查使用物品的玩家属性
    if not ChItem.CheckUseItemSelf_Player(curPlayer):
        return
    roleEquipPack = curPlayer.GetItemManager().GetPack(IPY_GameWorld.rptEquip)
    #获得所要使用的装备
    equipIndex = sendPack.GetEquipIndex()
    curEquip = roleEquipPack.GetAt(equipIndex)
    if not ItemCommon.CheckItemCanUse(curEquip) or ItemControler.GetIsAuctionItem(curEquip):
        return
    #FB禁止使用物品
    if FBLogic.DoFBForbidUseItem(curPlayer, curEquip):
        return
    if ItemControler.IsEventItem(curEquip):
        PlayerControl.NotifyCode(curPlayer, "TaskRes")
        return
    else:
        PlayerControl.NotifyCode(curPlayer, "GeRen_chenxin_774045")
        return
    return
#// A3 18 灵器突破 #tagCMLingQiEquipBreak
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ChItem.py
@@ -543,7 +543,7 @@
#  @remarks 
def CheckPlayerUseItemSelf(curPlayer, curItem, tick):
    #----------------------检查非法物品属性
    if not ItemCommon.CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
    if not ItemCommon.CheckItemCanUse(curItem):
        PlayerControl.NotifyCode(curPlayer, "GeRen_chenxin_644055")
        return False
    
@@ -1053,7 +1053,7 @@
    curItem = curPack.GetAt(itemIndex)
    
    #物品不存在
    if not ItemCommon.CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
    if not ItemCommon.CheckItemCanUse(curItem):
        return
    #检查物品可否丢弃
@@ -1522,12 +1522,6 @@
    
    if not ItemCommon.CheckItemCanUse(curItem):
        GameWorld.DebugLog("    物品无法使用!")
        return
    # 使用拍品
    if ItemControler.GetIsAuctionItem(curItem):
        GameWorld.DebugLog("玩家使用拍品: itemID=%s" % (curItem.GetItemTypeID()), curPlayer.GetPlayerID())
        ItemControler.SetIsAuctionItem(curItem, False, curPlayer)
        return
    
    if useCnt <= 0:
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ItemControler.py
@@ -114,7 +114,7 @@
    for i in range(0, curPack.GetCount()):
        item = curPack.GetAt(i)
        
        if not ItemCommon.CheckItemCanUse(item) or GetIsAuctionItem(item):
        if not ItemCommon.CheckItemCanUse(item):
            continue
        
        if item.GetItemTypeID() == id:
@@ -134,7 +134,7 @@
    for i in range(0, curPack.GetCount()):
        item = curPack.GetAt(i)
        
        if not ItemCommon.CheckItemCanUse(item) or GetIsAuctionItem(item):
        if not ItemCommon.CheckItemCanUse(item):
            continue
        
        if item.GetItemTypeID() == id:
@@ -153,7 +153,7 @@
    for i in range(0, curPack.GetCount()):
        item = curPack.GetAt(i)
        
        if not ItemCommon.CheckItemCanUse(item) or GetIsAuctionItem(item):
        if not ItemCommon.CheckItemCanUse(item):
            continue
        
        effect = item.GetEffectByIndex(0)
@@ -274,7 +274,7 @@
    for i in range(0, curPack.GetCount()):
        
        item = curPack.GetAt(i)
        if not ItemCommon.CheckItemCanUse(item) or GetIsAuctionItem(item):
        if not ItemCommon.CheckItemCanUse(item):
            continue
        
        if item.GetItemTypeID() != id:
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/UseItem/ItemCommon.py
@@ -524,7 +524,7 @@
#  @return True or False
#  @remarks 函数详细说明.
def CheckItemByEffectID(curPlayer, curItem, effectList):
    if not CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
    if not CheckItemCanUse(curItem):
        return False
    
    if not ItemControler.CheckItemUseLV(curPlayer, curItem, False):
@@ -585,7 +585,7 @@
    for i in range(backPack.GetCount()):
        curItem = backPack.GetAt(i)
        
        if not CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
        if not CheckItemCanUse(curItem):
            continue
        
        if curItem.GetItemTypeID() != findItemID:
@@ -1049,7 +1049,7 @@
    for i in range(curItemPack.GetCount()):
        findItem = curItemPack.GetAt(i)
        
        if not CheckItemCanUse(findItem) or ItemControler.GetIsAuctionItem(findItem):
        if not CheckItemCanUse(findItem):
            continue
        
        #不使用绑定的材料
@@ -1092,7 +1092,7 @@
    for i in range(curItemPack.GetCount()):
        curItem = curItemPack.GetAt(i)
        
        if not CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
        if not CheckItemCanUse(curItem):
            continue
        
        #不使用绑定的材料
@@ -1131,7 +1131,7 @@
    for i in range(curItemPack.GetCount()):
        curItem = curItemPack.GetAt(i)
        
        if not CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
        if not CheckItemCanUse(curItem):
            continue
        
        if curItem.GetItemTypeID() != findItemID:
@@ -1173,7 +1173,7 @@
    for i in range(itemPack.GetCount()):
        curItem = itemPack.GetAt(i)
        #过滤不符合其他条件的物品
        if not CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
        if not CheckItemCanUse(curItem):
            continue
        
        if curItem.GetItemTypeID() != findItemID:
@@ -1215,7 +1215,7 @@
    for i in range(itemPack.GetCount()):
        curItem = itemPack.GetAt(i)
        #过滤不符合其他条件的物品
        if not CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
        if not CheckItemCanUse(curItem):
            continue
        
        if curItem.GetItemTypeID() != findItemID:
@@ -1261,7 +1261,7 @@
    for i in range(itemPack.GetCount()):
        curItem = itemPack.GetAt(i)
        #过滤不符合其他条件的物品
        if not CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
        if not CheckItemCanUse(curItem):
            continue
        
        if curItem.GetItemTypeID() != findItemID:
@@ -1305,7 +1305,7 @@
    curPack = curPlayer.GetItemManager().GetPack(packType)
    for i in range(0, curPack.GetCount()):
        curItem = curPack.GetAt(i)
        if not CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
        if not CheckItemCanUse(curItem):
            continue
        
        if curItem.GetItemTypeID() != itemID:
@@ -1408,7 +1408,7 @@
    for i in xrange(itemPack.GetCount()):
        curItem = itemPack.GetAt(i)
        #过滤不符合其他条件的物品
        if not CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
        if not CheckItemCanUse(curItem):
            continue
        curItemID = curItem.GetItemTypeID()
        if curItemID not in costItemDict:
@@ -1512,7 +1512,7 @@
    for index in range(0, itemPack.GetCount()):
        item = itemPack.GetAt(index)
        
        if not CheckItemCanUse(item) or ItemControler.GetIsAuctionItem(item):
        if not CheckItemCanUse(item):
            continue
        
        itemTypeID = item.GetItemTypeID()
@@ -1618,6 +1618,14 @@
    if putInPackIndex in [IPY_GameWorld.rptHorseEquip]:
        DoLogic_ItemBindType(curPlayer, curItem, ChConfig.Def_BindType_DoEquipBind)
    
    if putInPackIndex not in [IPY_GameWorld.rptItem, IPY_GameWorld.rptWarehouse]:
        if ItemControler.GetIsAuctionItem(curItem):
            ItemControler.SetIsAuctionItem(curItem, False, curPlayer)
            GameWorld.DebugLog("SwitchItem 拍品设置为非拍品!curItemID=%s" % curItem.GetItemTypeID())
        if ItemControler.GetIsAuctionItem(switchItem):
            ItemControler.SetIsAuctionItem(switchItem, False, curPlayer)
            GameWorld.DebugLog("SwitchItem 拍品设置为非拍品!switchItemID=%s" % switchItem.GetItemTypeID())
    #交换装备
    curItem.Switch(switchItem)
    return True
@@ -1642,7 +1650,12 @@
    # 装备技能书、坐骑装备绑定
    if putInPackIndex in [IPY_GameWorld.rptHorseEquip]:
        DoLogic_ItemBindType(curPlayer, emptyItem, ChConfig.Def_BindType_DoEquipBind)
    if putInPackIndex not in [IPY_GameWorld.rptItem, IPY_GameWorld.rptWarehouse]:
        if ItemControler.GetIsAuctionItem(switchItem):
            ItemControler.SetIsAuctionItem(switchItem, False, curPlayer)
            GameWorld.DebugLog("PutIn 拍品设置为非拍品!switchItemID=%s" % switchItem.GetItemTypeID())
    if switchItem.GetGameWorldItemType() == IPY_GameWorld.gwitRoleItem:
        emptyItem.PutIn(switchItem)
    elif switchItem.GetGameWorldItemType() == IPY_GameWorld.gwitSingleItem:
@@ -1709,7 +1722,7 @@
        curItem = curItemPack.GetAt(i)
        
        #检查物品
        if not CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
        if not CheckItemCanUse(curItem):
            continue
        
        effect = curItem.GetEffectByIndex(0)
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerDogz.py
@@ -113,7 +113,7 @@
    for equipIndex in equipIndexList:
        dogzItemPack = curPlayer.GetItemManager().GetPack(ShareDefine.rptDogzItem)
        curEquip = dogzItemPack.GetAt(equipIndex)
        if not ItemCommon.CheckItemCanUse(curEquip) or ItemControler.GetIsAuctionItem(curEquip):
        if not ItemCommon.CheckItemCanUse(curEquip):
            GameWorld.DebugLog("物品为空或不可用: equipIndex=%s" % equipIndex, playerID)
            continue
        if not ItemCommon.GetIsDogzEquip(curEquip):
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerHorse.py
@@ -639,7 +639,7 @@
                curItem = curItemPack.GetAt(itemIndex)
                
                #检查物品
                if not ItemCommon.CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
                if not ItemCommon.CheckItemCanUse(curItem):
                    continue
                
                itemCnt = curItem.GetCount()
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerPet.py
@@ -628,7 +628,7 @@
            for itemIndex in itemIndexList:
                curItem = curItemPack.GetAt(itemIndex)
                #检查物品
                if not ItemCommon.CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
                if not ItemCommon.CheckItemCanUse(curItem):
                    continue
                itemCnt = curItem.GetCount()
                nowCnt += itemCnt
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerWing.py
@@ -108,7 +108,7 @@
    wingClassLV = ItemCommon.GetItemClassLV(curWing)
    for index in materialMessageList:
        curItem = itemPack.GetAt(index)
        if not ItemCommon.CheckItemCanUse(curItem) or ItemControler.GetIsAuctionItem(curItem):
        if not ItemCommon.CheckItemCanUse(curItem):
            GameWorld.DebugLog("这个格子没有合法材料,index=%s" % index)
            continue
        curItemID = curItem.GetItemTypeID()