public void Init(SceneConfig sceneConfig, MagicWallManager manager, Action onSceneCompleted) { _manager = manager; _onSceneCompleted = onSceneCompleted; _cutEffect = CutEffectFactory.GetCutEffect(sceneConfig.sceneType); // 设置过场效果 _cutEffect.Init(_manager, sceneConfig , OnCutEffectCreateAgentCompleted, () => { // on effect completed _runEntrance = false; }, () => { // on display Start _runDisplay = true; _displayStartTime = Time.time; } ); _dataType = sceneConfig.dataType; // 设置类型 // 显示 _displayBehavior = DisplayBehaviorFactory.GetBehavior(sceneConfig.displayBehavior); // 销毁 _destoryBehavior = DestoryBehaviorFactory.GetBehavior(sceneConfig.destoryBehavior); _destoryBehavior.Init(_manager, this, OnDestoryCompleted, sceneConfig); _sceneConfig = sceneConfig; _magicSceneEnumStatus = MagicSceneEnum.Running; _runEntrance = true; }
public void Init(SceneConfig sceneConfig, MagicWallManager manager, Action onSceneCompleted) { _manager = manager; _sceneConfig = sceneConfig; _onSceneCompleted = onSceneCompleted; Debug.Log("sceneConfig daoTypeEnum : " + sceneConfig.daoTypeEnum); // 销毁 _destoryBehavior = DestoryBehaviorFactory.GetBehavior(sceneConfig.destoryBehavior); _destoryBehavior.Init(_manager, null, OnDestoryCompleted, sceneConfig); }