public override Playable CreatePlayable(PlayableGraph graph, GameObject owner) { var playable = ScriptPlayable <CutsceneScriptControlBehaviour> .Create(graph, template); CutsceneScriptControlBehaviour clone = playable.GetBehaviour(); clone.playerInput = playerInput.Resolve(graph.GetResolver()); return(playable); }
public override void ProcessFrame(Playable playable, FrameData info, object playerData) { int inputCount = playable.GetInputCount(); for (int i = 0; i < inputCount; i++) { float inputWeight = playable.GetInputWeight(i); if (!Mathf.Approximately(inputWeight, 1f)) { continue; } ScriptPlayable <CutsceneScriptControlBehaviour> inputPlayable = (ScriptPlayable <CutsceneScriptControlBehaviour>)playable.GetInput(i); CutsceneScriptControlBehaviour input = inputPlayable.GetBehaviour(); input.playerInput.enabled = input.playerInputEnabled; } }