From 388823edfe6308cba6f76ca6dc4f20022c5cb2be Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期一, 30 六月 2025 19:03:50 +0800 Subject: [PATCH] 10431 【英文】看广告获得限时代金券 --- ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossBattlefield.py | 23 ++++++++++++++--------- 1 files changed, 14 insertions(+), 9 deletions(-) diff --git a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossBattlefield.py b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossBattlefield.py index 5ed2757..c3e7baa 100644 --- a/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossBattlefield.py +++ b/ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossBattlefield.py @@ -253,6 +253,8 @@ billboardObj.ClearData() + # 清空队伍 + PlayerFuncTeam.DelTeamByFunc(ChConfig.Def_FBMapID_CrossBattlefield) return def GetCrossBattlefieldState(): @@ -472,9 +474,9 @@ GameWorld.Log(" 无召集的场次不开分区战场! zoneID=%s" % (zoneID)) # 关闭 - if not battlefieldState and beforeState != battlefieldState: - # 活动结束清空队伍 - PlayerFuncTeam.DelTeamByFunc(ChConfig.Def_FBMapID_CrossBattlefield) + #if not battlefieldState and beforeState != battlefieldState: + # # 活动结束清空队伍 + # PlayerFuncTeam.DelTeamByFunc(ChConfig.Def_FBMapID_CrossBattlefield) # 同步子服务器 dataMsg = {"battlefieldState":battlefieldState} @@ -561,8 +563,9 @@ if passSeconds > closeSeconds: GameWorld.DebugLog("迟到了! passSeconds=%s > %s" % (passSeconds, closeSeconds), playerID) isBelate = True + #去除新队员进入不受时间限制设定 for _, copyMapObj in PyGameData.g_crossDynamicLineCopyMapInfo.items(): - if copyMapObj.IsMustCopyMapPlayer(playerID): + if copyMapObj.IsMustCopyMapPlayer(playerID, False): isBelate = False GameWorld.DebugLog("已进入的重复进入不限制时间! playerID=%s" % playerID) break @@ -652,6 +655,8 @@ openMinute = msgData["openMinute"] faction = msgData["faction"] serverOnly = msgData.get("serverOnly", 0) + face = msgData.get("face", 0) + facePic = msgData.get("facePic", 0) hmNum = GetHMNum(openHour, openMinute) @@ -681,7 +686,7 @@ type2, value1, value2 = job, realmLV, 0 cmpValue = buyOpenCountWeek + 1 if cmpValue >= billboardCallCountLimit: - CrossBillboard.UpdCrossBillboard(ShareDefine.Def_CBT_BattlefieldWCall, groupValue1, dataID, name1, name2, type2, value1, value2, cmpValue) + CrossBillboard.UpdCrossBillboard(ShareDefine.Def_CBT_BattlefieldWCall, groupValue1, dataID, name1, name2, type2, value1, value2, cmpValue, value3=face, value4=facePic) # 通知子服 serverGroupIDList = [serverGroupID] @@ -749,7 +754,7 @@ type2, value1, value2 = job, realmLV, 0 cmpValue = buyOpenCountWeek + 1 if cmpValue >= billboardCallCountLimit: - CrossBillboard.UpdCrossBillboard(ShareDefine.Def_CBT_BattlefieldWCall, groupValue1, dataID, name1, name2, type2, value1, value2, cmpValue) + CrossBillboard.UpdCrossBillboard(ShareDefine.Def_CBT_BattlefieldWCall, groupValue1, dataID, name1, name2, type2, value1, value2, cmpValue, value3=face, value4=facePic) for otherBuyPlayerID, otherRec in buyPlayerInfo.items(): if otherBuyPlayerID == playerID: @@ -902,7 +907,7 @@ syncPlayerDataInfo = {} winnerPlayerIDList, loserPlayerIDList = [], [] for playerInfo in battlePlayerList: - playerID, job, realmLV, name, \ + playerID, job, face, facePic, realmLV, name, \ isWinner, faction, rank, score, highScoreToday, highScoreWeekTotal, enterCountWeek, teamID, \ isCallOpen, isCalled, killCnt, ckillCntInfo, killBossCnt, killScoreKing, killGuardCnt, auraScore, superItemAwardCnt, \ factionBuffCollCnt, personBuffCollCnt, crystalCollCnt, wallCollCnt \ @@ -932,14 +937,14 @@ enterCountWeek += 1 cmpValue = enterCountWeek if cmpValue >= billboardEnterCountLimit: - CrossBillboard.UpdCrossBillboard(ShareDefine.Def_CBT_BattlefieldWJoin, groupValue1, dataID, name1, name2, type2, value1, value2, cmpValue) + CrossBillboard.UpdCrossBillboard(ShareDefine.Def_CBT_BattlefieldWJoin, groupValue1, dataID, name1, name2, type2, value1, value2, cmpValue, value3=face, value4=facePic) # 更新周高分榜单 if score > highScoreToday: highScoreWeekTotal += (score - highScoreToday) highScoreToday = score cmpValue = highScoreWeekTotal - CrossBillboard.UpdCrossBillboard(ShareDefine.Def_CBT_BattlefieldWScore, groupValue1, dataID, name1, name2, type2, value1, value2, cmpValue) + CrossBillboard.UpdCrossBillboard(ShareDefine.Def_CBT_BattlefieldWScore, groupValue1, dataID, name1, name2, type2, value1, value2, cmpValue, value3=face, value4=facePic) GameWorld.Log(" 战场阵营玩家: faction=%s,isWinner=%s,rank=%s,playerID=%s,score=%s,highScoreToday=%s,highScoreWeekTotal=%s,enterCountWeek=%s,teamID=%s,isCallOpen=%s,isCalled=%s" % (faction, isWinner, rank, playerID, score, highScoreToday, highScoreWeekTotal, enterCountWeek, teamID, isCallOpen, isCalled), fbPropertyID) -- Gitblit v1.8.0