From 2959a4dd232bb0e8b06281dde73a1fe918e541e0 Mon Sep 17 00:00:00 2001
From: hxp <ale99527@vip.qq.com>
Date: 星期六, 22 二月 2020 11:11:35 +0800
Subject: [PATCH] 8353 【后端】个人BOSS修改(修复无进入次数时无法进入首次免费的线路bug)

---
 ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/FBCommon.py |   11 +++++++++--
 1 files changed, 9 insertions(+), 2 deletions(-)

diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/FBCommon.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/FBCommon.py
index f2224c4..6015f9d 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/FBCommon.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/FBCommon.py
@@ -181,7 +181,7 @@
             return ShareDefine.EntFBAskRet_FBClose
         
         #进入次数判断
-        canEnter, notifyMark = __CheckCanEnterFBByTime(curPlayer, mapID, fbIpyData, reqEnterCnt, isTeamAsk)
+        canEnter, notifyMark = __CheckCanEnterFBByTime(curPlayer, mapID, lineID, fbIpyData, reqEnterCnt, isTeamAsk)
         if not canEnter:
             if notifyMark:
                 PlayerControl.NotifyCode(curPlayer, notifyMark, [mapID])
@@ -219,12 +219,19 @@
         
     return ShareDefine.EntFBAskRet_OK
 
-def __CheckCanEnterFBByTime(curPlayer, mapID, fbIpyData, reqEnterCnt, isTeamAsk):
+def __CheckCanEnterFBByTime(curPlayer, mapID, lineID, fbIpyData, reqEnterCnt, isTeamAsk):
     #进入次数判断
     maxTimes = fbIpyData.GetDayTimes()
     if not maxTimes:
         return True, ""
     
+    # 首次进入免费
+    if mapID in [ChConfig.Def_FBMapID_PersonalBoss]:
+        curfbStar = GameWorld.GetDictValueByBit(curPlayer, ChConfig.Def_Player_Dict_PlayerFBStar_MapId, lineID, False, [mapID])
+        if not curfbStar:
+            GameWorld.DebugLog("OnEnterFBEvent 首次进入该副本线路免费!mapID=%s,lineID=%s" % (mapID, lineID))
+            return True, ""
+        
     #playerID = curPlayer.GetPlayerID()
     enterCnt = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_EnterFbCntDay % mapID)
     maxCnt = GetEnterFBMaxCnt(curPlayer, mapID)

--
Gitblit v1.8.0