From c28653c492d97956946b6017e7439e6736425524 Mon Sep 17 00:00:00 2001 From: xdh <xiefantasy@qq.com> Date: 星期五, 23 十一月 2018 21:00:09 +0800 Subject: [PATCH] 4715 冰晶矿脉修改 --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_IceLode.py | 24 +++++++++++++++++++++--- 1 files changed, 21 insertions(+), 3 deletions(-) diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_IceLode.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_IceLode.py index 5371a4c..af40578 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_IceLode.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_IceLode.py @@ -530,7 +530,7 @@ if not lastStar: #每日活动 PlayerActivity.AddDailyActionFinishCnt(curPlayer, ShareDefine.DailyActionID_IceLode) isInFBOnDay = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_IceLodeIsInFBOnDay) - if isInFBOnDay: #在副本里过天,副本结束后再补发奖励 + if isInFBOnDay: #在副本里过天,副本结束后再补发星级奖励 CheckIceLodeStarAwardMail(curPlayer) # exp = gameFB.GetPlayerGameFBDictByKey(playerID, FBPlayerDict_TotalExp) # expPoint = gameFB.GetPlayerGameFBDictByKey(playerID, FBPlayerDict_TotalExpPoint) @@ -540,7 +540,18 @@ if not costTime: costTime = tick - GameWorld.GetGameFB().GetFBStepTick() #jsonItemList = PyGameData.g_fbPickUpItemDict.get(playerID, []) - jsonItemList = FBCommon.GetJsonItemList(FBCommon.GetFBLineReward(mapID, lineID)) + itemList = FBCommon.GetFBLineReward(mapID, lineID) + # 给物品 + needSpace = len(itemList) + packSpace = ItemCommon.GetItemPackSpace(curPlayer, IPY_GameWorld.rptItem, needSpace) + if needSpace > packSpace: + PlayerControl.SendMailByKey('', [curPlayer.GetID()], itemList) + else: + for itemID, itemCount, isBind in itemList: + ItemControler.GivePlayerItem(curPlayer, itemID, itemCount, isBind, [IPY_GameWorld.rptItem]) + + + jsonItemList = FBCommon.GetJsonItemList(itemList) # 通知结果 __SendIceLodeOverInfo(curPlayer, {FBCommon.Over_isPass:int(isPass), FBCommon.Over_costTime:costTime, FBCommon.Over_itemInfo:jsonItemList}) @@ -615,10 +626,15 @@ for itemID, itemCnt, isBind in itemList: ItemControler.GivePlayerItem(curPlayer, itemID, itemCnt, isBind, [IPY_GameWorld.rptItem]) #直接将5条线星级改为3星 + addCnt = 0 starCnt, lineList = GetIceLodeAllStarCnt(curPlayer) for lineid in lineList: + curStar = GameWorld.GetDictValueByBit(curPlayer, ChConfig.Def_Player_Dict_PlayerFBStar_MapId, lineID, False, [mapID]) + if curStar == 0: + addCnt += 1 GameWorld.SetDictValueByBit(curPlayer, ChConfig.Def_Player_Dict_PlayerFBStar_MapId, lineid, 3, False, [mapID]) - + PlayerActivity.AddDailyActionFinishCnt(curPlayer, ShareDefine.DailyActionID_IceLode, addCnt) + FBCommon.Sync_FBPlayerFBInfoData(curPlayer, mapID) # 同步信息 # npcCountDict = {} # iceLodeSweepDict = IpyGameDataPY.GetFuncEvalCfg('IceLodeSweep') # for npcID, count in iceLodeSweepDict.items(): @@ -723,8 +739,10 @@ maxCnt, randomCnt = IpyGameDataPY.GetFuncEvalCfg('IceLodeCfg', 2) for i in xrange(maxCnt): GameWorld.SetDictValueByBit(curPlayer, ChConfig.Def_Player_Dict_PlayerFBStar_MapId, i, 0, False, [ChConfig.Def_FBMapID_IceLode]) + FBCommon.Sync_FBPlayerFBInfoData(curPlayer, ChConfig.Def_FBMapID_IceLode) # 同步信息 #重置领奖记录 PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_IceLodeStarAwardRecord, 0) + PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_IceLodeHasSweep, 0) #随机今日玩法 __RandomLine(curPlayer) #通知 -- Gitblit v1.8.0