From e371f4a059ef241b523f7fd9561c0b838a5d847b Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期二, 09 七月 2024 19:36:15 +0800 Subject: [PATCH] 10211 【越南】【砍树】专属福利(增加按物品获得时间算开启天限制打开物品) --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ChItem.py | 22 ++++++++++++++++------ 1 files changed, 16 insertions(+), 6 deletions(-) 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 462b2b0..be25cc7 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ChItem.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ChItem.py @@ -939,12 +939,22 @@ def UseItemSelf_Item(curPlayer, curItem, tick): if curItem.GetType() == ChConfig.Def_ItemType_CanUseByCDTime: - curItemPastTime = int(time.time()) - curItem.GetUserAttr(ShareDefine.Def_IudetCreateTime) - if curItemPastTime < curItem.GetCDTime(): - PlayerControl.NotifyCode(curPlayer, "GeRen_chenxin_749572") - GameWorld.DebugLog("未到使用时间,不可使用! itemID=%s,curItemPastTime=%s < CDTime(%s)" - % (curItem.GetItemTypeID(), curItemPastTime, curItem.GetCDTime())) - return + cdType = curItem.GetCanPlaceInShortcut() # 由于 GetCDType 字段是公共CD,所以单独另一个类型 + # 倒计时类型: 0-默认秒;1-按获得物品天 + if not cdType: + curItemPastTime = int(time.time()) - curItem.GetUserAttr(ShareDefine.Def_IudetCreateTime) + if curItemPastTime < curItem.GetCDTime(): + PlayerControl.NotifyCode(curPlayer, "GeRen_chenxin_749572") + GameWorld.DebugLog("未到使用时间,不可使用! itemID=%s,curItemPastTime=%s < CDTime(%s)" + % (curItem.GetItemTypeID(), curItemPastTime, curItem.GetCDTime())) + return + elif cdType == 1: + passDays = GameWorld.GetDiff_Day(int(time.time()), curItem.GetUserAttr(ShareDefine.Def_IudetCreateTime)) + 1 + if passDays < curItem.GetCDTime(): + PlayerControl.NotifyCode(curPlayer, "GeRen_chenxin_749572") + GameWorld.DebugLog("未到使用时间,不可使用! itemID=%s,cdType=%s,passDays=%s < CDTime(%s)" + % (curItem.GetItemTypeID(), cdType, passDays, curItem.GetCDTime())) + return else: if (tick - curPlayer.GetItemCDStartTime(curItem.GetCDType())) < curItem.GetCDTime(): #CD冷却时间未到 -- Gitblit v1.8.0