ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossActionControl.py
@@ -23,6 +23,9 @@
import IpyGameDataPY
import CrossActCTGBillboard
import PlayerActBossTrial
import PlayerActXianXiaMJ
import PlayerActGubao
import PlayerActHorsePetTrain
import CrossRealmMsg
import PyGameData
import PlayerFB
@@ -622,8 +625,17 @@
                if actName == ShareDefine.CrossActName_CTGBillboard:
                    CrossActCTGBillboard.OnActIDChange(cfgID, dbTemplateID, state)
                    
                if actName == ShareDefine.CrossActName_BossTrial:
                elif actName == ShareDefine.CrossActName_BossTrial:
                    PlayerActBossTrial.OnCrossActIDChange(cfgID, zoneID, ipyData, state)
                elif actName == ShareDefine.CrossActName_XianXiaMJ:
                    PlayerActXianXiaMJ.OnCrossActIDChange(cfgID, zoneID, ipyData, state)
                elif actName == ShareDefine.CrossActName_Gubao:
                    PlayerActGubao.OnCrossActIDChange(cfgID, zoneID, ipyData, state)
                elif actName == ShareDefine.CrossActName_HorsePetTrain:
                    PlayerActHorsePetTrain.OnCrossActIDChange(cfgID, zoneID, ipyData, state)
                    
                else:
                    actChangeList.append([actName, ipyData, state, cfgID, groupName, zoneID, dbActID, actID, forceReset, dbTemplateID])
@@ -638,6 +650,17 @@
                              % (actName, cfgID, groupName, zoneID, dbState, state, actIDChange, dbTemplateID))
                actStateChangeList.append([actName, ipyData, dbState, state, cfgID, groupName, zoneID, actIDChange, dbTemplateID])
                
            # 活动中刷新,每次都需要刷新的逻辑,包含重读配置等
            if state:
                if actName == ShareDefine.CrossActName_BossTrial:
                    PlayerActBossTrial.OnCrossActInStateRefresh(cfgID, zoneID, ipyData)
                elif actName == ShareDefine.CrossActName_XianXiaMJ:
                    PlayerActXianXiaMJ.OnCrossActInStateRefresh(cfgID, zoneID, ipyData)
                elif actName == ShareDefine.CrossActName_Gubao:
                    PlayerActGubao.OnCrossActInStateRefresh(cfgID, zoneID, ipyData)
                elif actName == ShareDefine.CrossActName_HorsePetTrain:
                    PlayerActHorsePetTrain.OnCrossActInStateRefresh(cfgID, zoneID, ipyData)
            # 仅活动有配置参与时间段的会触发
            if actID and dbActID == actID and dbStateJoin != stateJoin:
                GameWorld.Log("    参与状态变更: dbStateJoin=%s,stateJoin=%s" % (dbStateJoin, stateJoin))
@@ -649,6 +672,15 @@
                    if actName == ShareDefine.CrossActName_BossTrial:
                        PlayerActBossTrial.OnCrossActJoinEnd(cfgID, zoneID, ipyData)
                        
                    elif actName == ShareDefine.CrossActName_XianXiaMJ:
                        PlayerActXianXiaMJ.OnCrossActJoinEnd(cfgID, zoneID, ipyData)
                    elif actName == ShareDefine.CrossActName_Gubao:
                        PlayerActGubao.OnCrossActJoinEnd(cfgID, zoneID, ipyData)
                    elif actName == ShareDefine.CrossActName_HorsePetTrain:
                        PlayerActHorsePetTrain.OnCrossActJoinEnd(cfgID, zoneID, ipyData)
            GameWorld.SendMapServerMsgEx(ShareDefine.Def_Notify_WorldKey_CrossActInfo % actName, crossActInfoDict[actName])
            # 非活动中的处理完关闭后,最后删除
            if not state and isEnd: