hxp
4 天以前 7bf88131759c20d54e175010d5b80da5d8148713
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_GeneralTrain.py
@@ -17,10 +17,8 @@
import FBCommon
import GameWorld
import PlayerControl
import IpyGameDataPY
import ItemControler
import NPCCommon
import ChConfig
## 是否能够通过活动查询进入
@@ -49,30 +47,7 @@
## 是否需要做进入副本通用检查条件逻辑,默认需要检查
def OnNeedCheckCanEnterFBComm(curPlayer, mapID, lineID):
    ## 进行中的不需要重复检查,防止断线重连被禁止进入
    if FBCommon.GetCustomMapStep(curPlayer, mapID, lineID) == ChConfig.CustomMapStep_Fight:
        GameWorld.DebugLog("通用养成副本已经在进行中,本次进入不需要重新检查! mapID=%s,lineID=%s" % (mapID, lineID))
        return False
    return True
## 客户端进入自定义场景
def OnEnterCustomScene(curPlayer, mapID, lineID):
    return
## 判断可否召唤木桩怪
def OnCanSummonPriWoodPile(curPlayer, mapID, lineID, npcID, count):
    if FBCommon.GetCustomMapStep(curPlayer, mapID, lineID) != ChConfig.CustomMapStep_Fight:
        FBCommon.SetCustomMapStep(curPlayer, mapID, lineID, ChConfig.CustomMapStep_Fight)
    npcIDList = GetGeneralTrainNPCIDList(mapID, lineID)
    if not npcIDList or npcID not in npcIDList:
        GameWorld.DebugLog("通用养成副本该NPC不能召唤! mapID=%s,lineID=%s,npcID=%s not in %s" % (mapID, lineID, npcID, npcIDList))
        return False
    return True
def OnCustomSceneProcess(curPlayer, mapID, lineID, tick):
    return
    
def GetGeneralTrainNPCIDList(mapID, lineID):
    npcIDList = []
@@ -89,41 +64,6 @@
    if not ipyData:
        return 0
    return ipyData.GetBossNPCID()
## 自定义场景副本击杀NPC
def DoCustomScene_Player_KillNPC(curPlayer, curNPC, mapID, lineID):
    npcID = curNPC.GetNPCID()
    bossID = GetGeneralTrainBossID(mapID, lineID)
    GameWorld.DebugLog("击杀副本NPC: mapID=%s,lineID=%s,npcID=%s,bossID=%s" % (mapID, lineID, npcID, bossID), curPlayer.GetPlayerID())
    if npcID != bossID:
        return
    if FBCommon.GetCustomMapStep(curPlayer, mapID, lineID) != ChConfig.CustomMapStep_Fight:
        return
    ipyData = IpyGameDataPY.GetIpyGameData('FBGeneralTrain', mapID, lineID)
    if not ipyData:
        return
    passLineID = curPlayer.NomalDictGetProperty(ChConfig.Def_Player_Dict_FBPassLineID % mapID)
    if lineID > passLineID:
        PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_FBPassLineID % mapID, lineID)
    #增加进入次数
    FBCommon.AddEnterFBCount(curPlayer, mapID)
    giveItemList = ipyData.GetPassAwardItemList()
    GameWorld.DebugLog("通用养成副本过关! mapID=%s,lineID=%s,giveItemList=%s" % (mapID, lineID, giveItemList))
    NPCCommon.DoGiveItemByVirtualDrop(curPlayer, giveItemList, bossID)
    FBCommon.SetCustomMapStep(curPlayer, mapID, lineID, ChConfig.CustomMapStep_Over)
    isPass = 1
    overDict = {FBCommon.Over_itemInfo:FBCommon.GetJsonItemList(giveItemList)}
    FBCommon.NotifyFBOver(curPlayer, mapID, lineID, isPass, overDict)
    return
## 可否扫荡
def OnPlayerFBSweepAsk(curPlayer, mapID, lineID, sweepCnt, isFinish, dataEx):