From dae842ad6e4a43d66255251e3ca60880af8d08bb Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期四, 09 十月 2025 16:26:25 +0800
Subject: [PATCH] 242 【福利内容】每日签到-服务端
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ItemControler.py | 55 ++++++++++++++++---------------------------------------
1 files changed, 16 insertions(+), 39 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 57071d1..d5cd751 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ItemControler.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ItemControler.py
@@ -30,16 +30,11 @@
import PlayerFamily
import ChPyNetSendPack
import NetPackCommon
-import Operate_EquipStone
-import PlayerFairyCeremony
-import PlayerActBossTrial
-import PlayerMagicWeapon
import PlayerXiangong
import IpyGameDataPY
import DataRecordPack
import PlayerGubao
import PyGameData
-import PlayerVip
import ChEquip
import PlayerHero
@@ -833,9 +828,7 @@
if packIndex == ShareDefine.rptRune:
runeSource = tagItem.GetUserAttr(ShareDefine.Def_IudetRuneSource) or 1
setItemKeyData = GetRuneItemKeyData(tagItem.GetItemTypeID(), tagItem.GetUserAttr(ShareDefine.Def_IudetRuneLV), source=runeSource)
- elif packIndex == ShareDefine.rptGatherSoul:
- setItemKeyData = GetGatherSoulItemKeyData(tagItem.GetItemTypeID(), tagItem.GetUserAttr(ShareDefine.Def_IudetGatherSoulLV))
-
+
refreshPlaceList = []
for place in xrange(ItemCommon.GetVPackCnt(packIndex)):
itemKeyData = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_VPackItem % (packIndex, place))
@@ -912,8 +905,6 @@
PlayerControl.GiveMoney(curPlayer, IPY_GameWorld.TYPE_Price_Gold_Money, itemCount, moneyEventName, addDict)
elif itemID == ChConfig.Def_ItemID_FuncSysPrivilege:
PlayerControl.GiveMoney(curPlayer, ShareDefine.TYPE_Price_FuncSysPrivilege, itemCount)
- elif itemID == ChConfig.Def_ItemID_FCPartyPoint:
- PlayerFairyCeremony.AddFCPartyPoint(curPlayer, itemCount)
elif itemID == ChConfig.Def_ItemID_BTGMPoint:
PlayerControl.GiveMoney(curPlayer, ShareDefine.TYPE_Price_BTGMPoint, itemCount)
elif itemID == ChConfig.Def_ItemID_GuShenMoney:
@@ -971,10 +962,10 @@
isNeedRecord = False
itemID = tagItem.GetItemTypeID()
#激活成就的道具
- if tagItem.GetType() in [ChConfig.Def_ItemType_ActiveMWItem, ChConfig.Def_ItemType_ActiveMWItem2]:
- PlayerMagicWeapon.DoActiveMW(curPlayer, tagItem.GetEffectByIndex(0).GetEffectValue(0))
- tagItem.Clear()
- return True
+ #if tagItem.GetType() in [ChConfig.Def_ItemType_ActiveMWItem, ChConfig.Def_ItemType_ActiveMWItem2]:
+ # PlayerMagicWeapon.DoActiveMW(curPlayer, tagItem.GetEffectByIndex(0).GetEffectValue(0))
+ # tagItem.Clear()
+ # return True
itemEff = tagItem.GetEffectByIndex(0)
#物品碎片
if itemEff.GetEffectID() == ChConfig.Def_Effect_ItemCount:
@@ -996,16 +987,6 @@
PlayerXiangong.AddTiandaoQiyun(curPlayer, addQiyun, {"ItemID":itemID, "ItemCount":tagItemCount, "isAutoUse":1})
tagItem.Clear()
return True
- #直升VIP
- if itemEff.GetEffectID() == ChConfig.Def_Effect_VIPLVCard:
- isAutoUse = itemEff.GetEffectValue(1)
- if isAutoUse:
- tagVIPLV = itemEff.GetEffectValue(0)
- isOK, _ = PlayerVip.UpgradeVIPLV(curPlayer, tagVIPLV)
- if isOK:
- #GameWorld.DebugLog("直升VIP默认使用")
- tagItem.Clear()
- return True
#增加副本次数
if itemEff.GetEffectID() == ChConfig.Def_Effect_AddFBCnt:
isAutoUse = itemEff.GetEffectValue(1)
@@ -1016,11 +997,7 @@
#GameWorld.DebugLog("增加副本次数默认使用! mapID=%s" % mapID)
tagItem.Clear()
return True
- #活动道具自动转化
- if PlayerActBossTrial.CheckActItemAutoTransform(curPlayer, tagItem, itemID, tagItemCount):
- tagItem.Clear()
- return True
-
+
if itemID in ChConfig.Def_TransformItemIDList or tagItem.GetType() == ChConfig.Def_ItemType_AutoUseMoney:
# 直接转化为对应货币的物品仅在放入背包时直接转化,否则还是以真实物品的形式存在,但堆叠上限需要做特殊处理
if packIndex == IPY_GameWorld.rptItem:
@@ -1037,6 +1014,9 @@
# isNeedRecord = True # 拍品要记录
else:
maxPackCount = curItemData.GetPackCount()
+
+ if packIndex == IPY_GameWorld.rptIdentify:
+ defaultPile = False # 掉落背包默认不判断堆叠
# 虚拟背包, 默认不做叠加
if packIndex in ShareDefine.Def_VPack_TypeList:
@@ -1251,14 +1231,6 @@
def GetRuneItemIsLock(keyData): return keyData / 1000000000
def GetRuneItemSource(keyData): return keyData % 1000000000 / 100000000
def IsRuneItemNeedRecord(curItem, plusLV):
- return plusLV > 0 or curItem.GetItemColor() >= ChConfig.Def_Quality_Orange
-
-# 聚魂物品存储字典数值数据结构: 前5位为物品ID, 6~8位为强化等级
-def GetGatherSoulItemKeyData(itemID, GatherSoulLV):
- return min(GatherSoulLV, 999) * 100000 + itemID
-def GetGatherSoulItemID(keyData): return keyData % 100000
-def GetGatherSoulItemPlusLV(keyData): return keyData % 100000000 / 100000
-def IsGatherSoulItemNeedRecord(curItem, plusLV):
return plusLV > 0 or curItem.GetItemColor() >= ChConfig.Def_Quality_Orange
def SetVPackItemKeyData(curPlayer, packIndex, place, keyData, isSync=True):
@@ -2356,7 +2328,11 @@
def CheckPackSpaceEnough(curPlayer, itemList, isNotify=True):
## 检查玩家对应背包是否足够放入物品
needPackSpaceDict = {}
- for itemID, itemCnt, isAuctionItem in itemList:
+ for itemInfo in itemList:
+ if not itemInfo:
+ continue
+ itemID, itemCnt = itemInfo[:2]
+ isAuctionItem = itemInfo[2] if len(itemInfo) > 2 else 0
curItem = GameWorld.GetGameData().GetItemByTypeID(itemID)
if not curItem:
return False
@@ -2445,7 +2421,8 @@
continue
item = ChPyNetSendPack.tagMCGiveAwardItem()
item.ItemID = itemID
- item.Count = itemCount
+ item.Count = itemCount % ChConfig.Def_PerPointValue
+ item.CountEx = itemCount / ChConfig.Def_PerPointValue
item.IsBind = isBind
clientPack.ItemList.append(item)
clientPack.ItemLen = len(clientPack.ItemList)
--
Gitblit v1.8.0