From c060aabfb4621e897f7b69d6e537fc3ccf59d860 Mon Sep 17 00:00:00 2001
From: xdh <xiefantasy@qq.com>
Date: 星期一, 28 一月 2019 20:44:25 +0800
Subject: [PATCH] 2969 【BUG】【1.5.200】限时抢购,重新开服全服抢购次数会重置​

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_FamilyWar.py |   18 +++++++++++++++---
 1 files changed, 15 insertions(+), 3 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_FamilyWar.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_FamilyWar.py
index 793c116..fd05d57 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_FamilyWar.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_FamilyWar.py
@@ -28,6 +28,7 @@
 import ChPyNetSendPack
 import GameWorldProcess
 import PlayerDienstgrad
+import PlayerWeekParty
 import IpyGameDataPY
 import PlayerFamily
 import NetPackCommon
@@ -521,7 +522,7 @@
     if not FBCommon.GetHadDelTicket(curPlayer):
         FBCommon.SetHadDelTicket(curPlayer)
         FBCommon.AddEnterFBCount(curPlayer, ChConfig.Def_FBMapID_FamilyWar)
-        
+        PlayerWeekParty.AddWeekPartyActionCnt(curPlayer, ChConfig.Def_WPAct_FamilyWar, 1)
     isFinalMatch = gameFB.GetGameFBDictByKey(GameFBDict_IsFinalMatch)
     roundNum = gameFB.GetGameFBDictByKey(GameFBDict_RoundNum)
     groupID = gameFB.GetGameFBDictByKey(GameFBDict_GroupID)
@@ -990,17 +991,24 @@
         
     # 最高级别联赛第一名额外奖励
     winnerFirstAwardEx = [] # 获胜方第一名额外奖励
-    firstAwardEx = []
+    loserFirstAwardEx = [] # 失败方第一名额外奖励
+    firstAwardEx, firstAwardEx2= [], []
     if groupID == FamilyWar_MaxGroupID:
         worldLv = GameWorld.GetGameWorld().GetGameWorldDictByKey(ShareDefine.Def_Notify_WorldKey_WorldAverageLv)
         if isFinalMatch:
             firstAwardExDict = IpyGameDataPY.GetFuncEvalCfg("FamilyMatchSRankOneReward", 1)
+            firstAwardExDict2 = IpyGameDataPY.GetFuncEvalCfg("FamilyMatchSRankOneReward", 2)
         else:
             firstAwardExDict = IpyGameDataPY.GetFuncEvalCfg("FamilyMatchRankOneReward", 1)
+            firstAwardExDict2 = IpyGameDataPY.GetFuncEvalCfg("FamilyMatchRankOneReward", 2)
         firstAwardEx = GameWorld.GetOrderValueByDict(firstAwardExDict, worldLv)
         firstAwardEx = [] if not firstAwardEx else firstAwardEx
-        GameWorld.Log("最高级别联赛第一名额外奖励: firstAwardEx=%s,firstAwardExDict=%s,worldLv=%s" 
+        GameWorld.Log("最高级别联赛胜者第一名额外奖励: firstAwardEx=%s,firstAwardExDict=%s,worldLv=%s" 
                       % (firstAwardEx, firstAwardExDict, worldLv), lineID)
+        firstAwardEx2 = GameWorld.GetOrderValueByDict(firstAwardExDict2, worldLv)
+        firstAwardEx2 = [] if not firstAwardEx2 else firstAwardEx2
+        GameWorld.Log("最高级别联赛败者第一名额外奖励: firstAwardEx2=%s,firstAwardExDict2=%s,worldLv=%s" 
+                      % (firstAwardEx2, firstAwardExDict2, worldLv), lineID)
         
     GameWorld.Log("名次奖励配置: rankAwardDict=%s,awardPer=%s,rankAwardDictCopy=%s,firstAwardEx=%s,joinAwardItemList=%s" 
                   % (rankAwardDict, awardPer, rankAwardDictCopy, firstAwardEx, joinAwardItemList), lineID)
@@ -1021,6 +1029,10 @@
             awardItemList = rankItemList + winnerFirstAwardEx
             # <color=#44e863FF>%s0</color>在仙盟联赛中表现优异,获得额外<color=#44e863FF><Word info=item id=%s1/></color>奖励
             PlayerControl.WorldNotify(0, "FamilyMatchRankNoOne", [warPlayer.name, winnerFirstAwardEx[0][0]])
+        elif firstAwardEx2 and not loserFirstAwardEx and warPlayer.familyID != winnerFamilyID:
+            loserFirstAwardEx = firstAwardEx2
+            awardItemList = rankItemList + loserFirstAwardEx
+            PlayerControl.WorldNotify(0, "FamilyMatchRankNoOneLose", [warPlayer.name, loserFirstAwardEx[0][0]])
         else:
             awardItemList = rankItemList
         playerID = warPlayer.playerID

--
Gitblit v1.8.0