public void RunCutSceneImpact(int cutsceneId, int index)
        {
            _changeLogic.SetMode(ApplyMode.Manual);

            var cutscene = _cutscene.GetCutScene(cutsceneId);
            var frame    = cutscene.Frames.OrderBy(x => x.Key).Select(x => x.Value.Data).ToArray()[index];

            if (frame.TemplateLabel != CutSceneType.Impact || (frame as ICutSceneImpact) == null)
            {
                throw new Exception($"RunCutSceneImpact cutsceneid = {cutsceneId} index = {index} no type impact");
            }
            _logic.ExecuteImpact((frame as ICutSceneImpact).Impact);

            _changeLogic.BatchCutScene(0);
            _changeLogic.SetMode(ApplyMode.Auto);
        }
Beispiel #2
0
 public ICutScene GetCutScene(System.Int32 id)
 {
     return(_accessor.GetCutScene(id));
 }