From 8618b0f5bae37f9cd32eaa8b71c5910aa7ecb355 Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期三, 08 五月 2019 11:14:54 +0800 Subject: [PATCH] 3506 【2.0】GM工具批量支持问题(全服邮件查询结果增加单服邮件服务器ID显示支持) --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Event/EventSrc/FunctionNPCCommon.py | 101 ++++++++------------------------------------------ 1 files changed, 17 insertions(+), 84 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 8fb8a5e..16b5138 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 @@ -194,17 +194,12 @@ return ## 登录 -def ShopItemOnLogin(curPlayer): - if not GameWorld.GetDictValueByBit(curPlayer, ChConfig.Def_Player_Dict_VersionFix, ChConfig.Def_VerFix_SuperGift): - GameWorld.SetDictValueByBit(curPlayer, ChConfig.Def_Player_Dict_VersionFix, ChConfig.Def_VerFix_SuperGift, 1) - isGet = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_GoldGiftFirstRecord) - if isGet:#首充奖励已领取则代表超值礼包已开启过, - PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_SuperGiftHasOpen, 1) - - +def ShopItemOnLogin(curPlayer): SyncMysticalLimitShopInfo(curPlayer) SyncShopItemTodayBuyCount(curPlayer) SyncSuperGiftInfo(curPlayer) + if not curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_MysticalShopGoods % 0): + __DoMysticalShopRefresh(curPlayer, True, GameWorld.GetGameWorld().GetTick()) SyncMysticalShopInfo(curPlayer) return @@ -420,7 +415,7 @@ cntList.sort() costItemCnt = costItemCntDict[str(cntList[-1])] for cnt in cntList: - if curRefreshCnt <= cnt: + if curRefreshCnt < cnt: costItemCnt = costItemCntDict[str(cnt)] break enough, indexList, hasBind, lackCnt = ItemCommon.GetItem_FromPack_ByID_ExEx(costItemID, itemPack, costItemCnt) @@ -452,9 +447,18 @@ GameWorld.DebugLog('神秘商店刷新特殊规则,等级段:%s,updLVRefreshCnt=%s,specialGoodsID=%s'%(curLVDan, updLVRefreshCnt, specialGoodsID)) GameWorld.DebugLog('神秘商店刷新isFree=%s,goldGoodsCnt=%s,sliverGoodsCnt=%s,goodsResultList=%s'%(isFree, goldGoodsCnt, sliverGoodsCnt, goodsResultList)) + syncIndexList = [] for i in xrange(maxCnt): goodsID = goodsResultList[i] if i < len(goodsResultList) else 0 PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_MysticalShopGoods % i, goodsID) + + dayBuyCntKey = ChConfig.Def_PDict_ShopItemDayBuyCnt % goodsID + curDayBuyCnt = curPlayer.NomalDictGetProperty(dayBuyCntKey) + if curDayBuyCnt: + PlayerControl.NomalDictSetProperty(curPlayer, dayBuyCntKey, 0) + syncIndexList.append(goodsID) + if syncIndexList: + SyncShopItemTodayBuyCount(curPlayer, syncIndexList, True) #通知 SyncMysticalShopInfo(curPlayer) return @@ -721,7 +725,7 @@ itemControl = ItemControler.PlayerItemControler(curPlayer) for itemID, itemCount, isBind in totalItemList: - curItemObj = ItemControler.GetOutPutItemObj(itemID, itemCount, isBind) + curItemObj = ItemControler.GetOutPutItemObj(itemID, itemCount, False) if not curItemObj: continue userData = curItemObj.GetUserData() @@ -850,10 +854,7 @@ #活动结束 重置 PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_SuperGiftStartTime, 0) else: - if curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_SuperGiftHasOpen): - #老号已开启过超值礼包则不再开启 - return - + PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_SuperGiftStartTime, curTime) addItemList = IpyGameDataPY.GetFuncEvalCfg('SuperGiftTimeList', 2) PlayerControl.SendMailByKey('SellMail2', [curPlayer.GetID()], addItemList) @@ -925,46 +926,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 玩家实例 @@ -1086,7 +1047,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 @@ -1131,35 +1092,7 @@ priceType = IPY_GameWorld.TYPE_Price_Silver_Money curItemPrice = curItem.GetSilverPrice() return curItemPrice, priceType - #绑定价格售价为0, 2011.4.27 -# if curItem.GetIsBind(): -# itrmPrice_bind = eval(ReadChConfig.GetChConfig("ItemSellPrice_Bind")) -# return itrmPrice_bind, priceType -# -# #无耐久物品 -# if curItemEndure == 0 : -# return curItemPrice * 0.5, priceType -# -# itrmPrice_notBind = eval(ReadChConfig.GetChConfig("ItemSellPrice_NotBind")) -# return itrmPrice_notBind, priceType -#=============================================================================== -# 2010.11.25 绑定售价和非绑定一致 -# #绑定的 -# if curItem.GetIsBind(): -# return curItemPrice * 0.5 * 0.5, curItemType -# #非绑定的 -# return curItemPrice * 0.5, curItemType -#=============================================================================== -#=============================================================================== -# -# #绑定正常物品出售价格 -# if curItem.GetIsBind() : -# return eval(ChConfig.Def_Formula_ItemSellPrice) * 0.5, curItemType -# -# #未绑定正常物品出售价格 -# return eval(ChConfig.Def_Formula_ItemSellPrice), curItemType -#=============================================================================== -#--------------------------------------------------------------------- + ##检查玩家可否开始NPC事件 # @param curPlayer 玩家实例 # @return 返回值真, 检查通过 -- Gitblit v1.8.0