From df49d94774809e774160c424b0672e9541fe7166 Mon Sep 17 00:00:00 2001
From: xdh <xiefantasy@qq.com>
Date: 星期三, 19 九月 2018 14:33:04 +0800
Subject: [PATCH] fix:3679 【后端】可单人不组队大境界渡劫
---
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_DuJie.py | 16 +++++++++-------
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ItemControler.py | 7 +++++--
2 files changed, 14 insertions(+), 9 deletions(-)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_DuJie.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_DuJie.py
index ebda50a..a118afe 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_DuJie.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_DuJie.py
@@ -123,7 +123,10 @@
# @param lineID 线路id
# @return None
def __CheckEnter(curPlayer, mapID, lineID):
- if lineID == 0 or curPlayer.GetTeamLV() == IPY_GameWorld.tmlLeader:
+ if not GameFuncComm.GetFuncCanUse(curPlayer, ShareDefine.GameFuncID_Official):
+ GameWorld.DebugLog("爵位境界功能未开启, 无法开启渡劫!curLV=%s" % curPlayer.GetLV())
+ return False
+ if lineID == 0 or curPlayer.GetTeamLV() == IPY_GameWorld.tmlLeader or (lineID == 1 and curPlayer.GetTeamID() == 0):
curRealmLV = curPlayer.GetOfficialRank()
realmIpyData = PlayerPrestigeSys.GetRealmIpyData(curRealmLV)
if not realmIpyData:
@@ -139,9 +142,7 @@
# if curPlayer.NomalDictGetProperty(ChConfig.Def_PDict_RealmFBIsOpen) != 1:
# return False
- if not GameFuncComm.GetFuncCanUse(curPlayer, ShareDefine.GameFuncID_Official):
- GameWorld.DebugLog("爵位境界功能未开启, 无法开启渡劫!curLV=%s" % curPlayer.GetLV())
- return False
+
return True
@@ -184,7 +185,7 @@
FBCommon.SetFBStep(FB_Step_MapPrepare, tick)
-
+ fbPlayerCnt = gameFB.GetGameFBDictByKey(ChConfig.Def_FB_NPCStrengthenPlayerCnt)
DuJieFBCfg = GetRealmFBTimeCfg()
if not gameFB.GetGameFBDictByKey(DuJieFB_LeaderPlayerID):
#重置属性加成
@@ -193,11 +194,12 @@
PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_PDict_RealmFBAttrAdd % attrID, 0)
GameWorld.DebugLog('玩家进入副本')
- if lineID == 0 or curPlayer.GetTeamLV() == IPY_GameWorld.tmlLeader:
+
+ if fbPlayerCnt == 1 or curPlayer.GetTeamLV() == IPY_GameWorld.tmlLeader:
__SetFBLeaderPlayer(curPlayer)
if gameFB.GetFBStep() == FB_Step_Fighting:
__OnDuJieFBStart(tick)
- isHelpFight = lineID == 1 and curPlayer.GetTeamLV() != IPY_GameWorld.tmlLeader
+ isHelpFight = lineID == 1 and curPlayer.GetTeamLV() != IPY_GameWorld.tmlLeader and fbPlayerCnt > 1
joinType = FBCommon.GetFBJoinType(curPlayer, isHelpFight)
EventReport.WriteEvent_FB(curPlayer, ChConfig.Def_FBMapID_DuJie, lineID, ChConfig.CME_Log_Start, joinType)
diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ItemControler.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ItemControler.py
index d2098e0..2742f25 100644
--- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ItemControler.py
+++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Item/ItemControler.py
@@ -1048,7 +1048,7 @@
return False
return True
- def __DoTransformItem(self, curPlayer, tagItem):
+ def DoTransformItem(self, curPlayer, tagItem):
## 将特殊物品转化为对应数值
itemID = tagItem.GetItemTypeID()
if itemID not in ChConfig.Def_TransformItemIDList:
@@ -1084,7 +1084,7 @@
def PutInItem(self, packIndex, tagItem, defaultPile=True, event=["", False, {}]):
curPlayer = self.__Player
- if packIndex != ShareDefine.rptTreasure and self.__DoTransformItem(curPlayer, tagItem):
+ if packIndex != ShareDefine.rptTreasure and self.DoTransformItem(curPlayer, tagItem):
tagItem.Clear() # 需清除,不然会导致内存泄露 寻宝仓库可暂存直接转化数值的物品
return True
@@ -1398,6 +1398,9 @@
return
def __DoDropItemToOtherPack(curPlayer, itemControl, fromPackIndex, toPackIndex, itemIndex, curItem):
+ if itemControl.DoTransformItem(curPlayer, curItem):
+ curItem.Clear()
+ return True
curItemTypeID = curItem.GetItemTypeID()
#curItemGUID = curItem.GetGUID()
curItemCount = curItem.GetCount()
--
Gitblit v1.8.0