From 7d6b028c24c2e90109f118eb3008b655e9b063b8 Mon Sep 17 00:00:00 2001
From: hch <305670599@qq.com>
Date: 星期二, 25 十二月 2018 14:26:34 +0800
Subject: [PATCH] 5512 子 【开发】【1.4】跨服竞技场 / 【后端】【1.4】跨服竞技场开发 -- 链接跨服状态通知gameserver
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_GatherSoul.py | 33 +++++++++++++++++++++------------
1 files changed, 21 insertions(+), 12 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_GatherSoul.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_GatherSoul.py
index e99d2ec..4d1f7c9 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_GatherSoul.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_GatherSoul.py
@@ -153,6 +153,7 @@
else:
return
DoFBHelp(curPlayer, tick)
+ curPlayer.SetFaction(ShareDefine.CampType_Justice)
return
@@ -196,16 +197,16 @@
guardDict[npcid] = gameFB.GetGameFBDictByKey(FBPlayerDict_GuardNPCCnt%npcid)
hasRefreshBoss = gameFB.GetGameFBDictByKey(FBPlayerDict_HasRefreshBoss)
isAutoBoss = gameFB.GetGameFBDictByKey(FBPlayerDict_AutoBoss)
-
- itemDict = PyGameData.g_gathersoulfbAwardDict.get(curPlayer.GetID(), {})
+ lineID = GameWorld.GetGameWorld().GetLineID()
+ itemDict = PyGameData.g_gathersoulfbAwardDict.get(lineID, {})
helpItemInfo = {}
- for wheel, itemList in itemDict:
+ for wheel, itemList in itemDict.items():
helpItemInfo[str(wheel)] = FBCommon.GetJsonItemList(itemList)
helpDict = {FBCommon.Help_wheel:curWheel,
FBCommon.Help_step:fbStep,
FBCommon.Help_npc:FBCommon.GetJsonNPCKillList(guardDict),
FBCommon.Help_isAuto:isAutoBoss,
- FBCommon.Help_isAuto:hasRefreshBoss,
+ FBCommon.Help_hasRefreshBoss:hasRefreshBoss,
FBCommon.Help_gsItemInfo:helpItemInfo,
}
#副本帮助
@@ -413,6 +414,8 @@
NPCCustomRefresh.SetNPCRefresh(gatherSoulFBCfg[Def_BuildMark], [(guardNPCID, 1)], 1, 1)
key = FBPlayerDict_GuardNPCCnt % guardNPCID
gameFB.SetGameFBDict(key, gameFB.GetGameFBDictByKey(key) + 1)
+ gameFB.SetGameFBDict(FBPlayerDict_GuardNPCID, 0)
+ DoFBHelp(curPlayer, tick)
return
@@ -484,8 +487,12 @@
if gameFB.GetGameFBDictByKey(FBPlayerDict_HasRefreshBoss):
#本波已刷黄金BOSS
return
-
gatherSoulFBCfg = GetGatherSoulFBCfg()
+ lastWheelEndTime = gameFB.GetGameFBDictByKey(FBPlayerDict_LastWheelEndTime)
+ if lastWheelEndTime and tick - lastWheelEndTime < gatherSoulFBCfg[Def_WheelRefreshCD]:
+ return
+
+
costMoney = gatherSoulFBCfg[Def_BossCostMoney]
costMoneyList = PlayerControl.HaveMoneyEx(curPlayer, ShareDefine.TYPE_Price_Gold_Paper_Money, costMoney, False)
if not costMoneyList:
@@ -533,12 +540,13 @@
##掉落奖励 {wheel:[[itemid,itemCnt,isBind]]}
gameFB = GameWorld.GetGameFB()
curWheel = gameFB.GetGameFBDictByKey(FBPlayerDict_CurWheel) + 1
- ownerID = gameFB.GetGameFBDictByKey(ChConfig.Def_FB_SingleFBPlayerID)
- if ownerID not in PyGameData.g_gathersoulfbAwardDict:
- PyGameData.g_gathersoulfbAwardDict[ownerID] = {}
- if curWheel not in PyGameData.g_gathersoulfbAwardDict[ownerID]:
- PyGameData.g_gathersoulfbAwardDict[ownerID][curWheel] = []
- PyGameData.g_gathersoulfbAwardDict[ownerID][curWheel].append([itemID, itemCnt, isBind])
+ #ownerID = gameFB.GetGameFBDictByKey(ChConfig.Def_FB_SingleFBPlayerID)
+ lineID = GameWorld.GetGameWorld().GetLineID()
+ if lineID not in PyGameData.g_gathersoulfbAwardDict:
+ PyGameData.g_gathersoulfbAwardDict[lineID] = {}
+ if curWheel not in PyGameData.g_gathersoulfbAwardDict[lineID]:
+ PyGameData.g_gathersoulfbAwardDict[lineID][curWheel] = []
+ PyGameData.g_gathersoulfbAwardDict[lineID][curWheel].append([itemID, itemCnt, isBind])
curPlayer = FBCommon.GetCurSingleFBPlayer()
if curPlayer:
DoFBHelp(curPlayer, 0)
@@ -554,7 +562,8 @@
# 进入离开阶段
FBCommon.SetFBStep(FB_Step_Over, tick)
ownerID = gameFB.GetGameFBDictByKey(ChConfig.Def_FB_SingleFBPlayerID)
- itemDict = PyGameData.g_gathersoulfbAwardDict.pop(ownerID, {})
+ lineID = GameWorld.GetGameWorld().GetLineID()
+ itemDict = PyGameData.g_gathersoulfbAwardDict.pop(lineID, {})
totalItemList = []
for itemList in itemDict.values():
totalItemList += itemList
--
Gitblit v1.8.0