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); }
public ICutScene GetCutScene(System.Int32 id) { return(_accessor.GetCutScene(id)); }