From f8dab27621ee5061a48b3a0142c6860b360cf0c9 Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期三, 16 十月 2019 17:17:27 +0800 Subject: [PATCH] 8262 【主干】【后端】仙盟宴会及传功优化(增加宴会结束倒计时显示) --- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_MagicWeapon.py | 46 ++++++++++++++++++++++++++++------------------ 1 files changed, 28 insertions(+), 18 deletions(-) diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_MagicWeapon.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_MagicWeapon.py index 50416c8..f9f1ec9 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_MagicWeapon.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_MagicWeapon.py @@ -29,6 +29,7 @@ import EventReport import PlayerGoldGift import PlayerMagicWeapon +import ChPlayer #---副本配置对应key值--- ( @@ -144,7 +145,7 @@ gameFB = GameWorld.GetGameFB() lineID = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_ReqFBFuncLine) level, maxLevel = 0, 0 - ipyDataList = IpyGameDataPY.GetIpyGameDataByCondition('MagicWeaponFB', {'LineID':lineID}, True) + ipyDataList = IpyGameDataPY.GetIpyGameDataByCondition('MagicWeaponFB', {'LineID':lineID}, True, False) if ipyDataList: mwID = ipyDataList[0].GetMWID() level = curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_MWFBPassLevel % mwID) @@ -196,7 +197,9 @@ elif fbStep == FB_Step_Fighting: notify_tick = GetClearDevilTimeCfg(lineID)[Def_FightTime] * 1000 - (tick - GameWorld.GetGameFB().GetFBStepTick()) curPlayer.Sync_TimeTick(IPY_GameWorld.tttTowerTake, 0, max(notify_tick, 0), True) - + else: + PlayerControl.PlayerLeaveFB(curPlayer) + return DoFBHelp(curPlayer, tick, not hadDelTicket) return @@ -326,6 +329,10 @@ playerManager = GameWorld.GetMapCopyPlayerManager() if playerManager.GetPlayerCount() > 0: curPlayer = playerManager.GetPlayerByIndex(0) + if curPlayer.GetHP() <=0: + ChPlayer.PlayerRebornByType(curPlayer, ChConfig.rebornType_System, tick) + else: + curPlayer.SetHP(curPlayer.GetMaxHP()) DoFBHelp(curPlayer, tick) FBCommon.SetFBStep(FB_Step_Fighting, tick) @@ -439,15 +446,18 @@ fbMissionID = gameFB.GetGameFBDictByKey(FBPlayerDict_MissionID) if fbMissionID: EventShell.EventRespons_FBEvent(curPlayer, "cleardevil_pass_%s" % fbMissionID) - # 成就 + #触发激活法宝 level = gameFB.GetGameFBDictByKey(FBPlayerDict_Level) - PlayerSuccess.DoAddSuccessProgress(curPlayer, ShareDefine.SuccType_PassWagicWeapon, 1, [lineID + 1, level]) - # 更新关卡 - if level: - ipyData = IpyGameDataPY.GetIpyGameDataByCondition('MagicWeaponFB', {'LineID':lineID, 'Level':level}) - if ipyData: - mwID = ipyData.GetMWID() - PlayerMagicWeapon.UptateMWFBPasslv(curPlayer, mwID, level) + PlayerMagicWeapon.ActiveMagicWeaponByFB(curPlayer, ChConfig.Def_FBMapID_MagicWeapon, lineID, level) +# # 成就 +# level = gameFB.GetGameFBDictByKey(FBPlayerDict_Level) +# PlayerSuccess.DoAddSuccessProgress(curPlayer, ShareDefine.SuccType_PassWagicWeapon, 1, [lineID + 1, level]) +# # 更新关卡 +# if level: +# ipyData = IpyGameDataPY.GetIpyGameDataByCondition('MagicWeaponFB', {'LineID':lineID, 'Level':level}) +# if ipyData: +# mwID = ipyData.GetMWID() +# PlayerMagicWeapon.UptateMWFBPasslv(curPlayer, mwID, level) DoFBHelp(curPlayer, tick) @@ -579,14 +589,14 @@ if isPass: EventReport.WriteEvent_FB(curPlayer, ChConfig.Def_FBMapID_MagicWeapon, 0, ChConfig.CME_Log_End, 0, 1) - if lineID == IpyGameDataPY.GetFuncCfg('FirstGoldTryItem', 3): - if not isPass: - #副本指定线路失败了,进入首充试用引导 - if not curPlayer.GetChangeCoinPointTotal() and not curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_FirstGoldTry): - PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_FirstGoldTry, 1) - PlayerGoldGift.Sync_FirstGoldInfo(curPlayer) - else: - PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_FirstGoldTry, 0) +# if lineID == IpyGameDataPY.GetFuncCfg('FirstGoldTryItem', 3): +# if not isPass: +# #副本指定线路失败了,进入首充试用引导 +# if not curPlayer.GetChangeCoinPointTotal() and not curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_FirstGoldTry): +# PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_FirstGoldTry, 1) +# PlayerGoldGift.Sync_FirstGoldInfo(curPlayer) +# else: +# PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_FirstGoldTry, 0) return -- Gitblit v1.8.0