예제 #1
0
        private static void cin_add()
        {
            CinemaCamera.SaveStart(null); // we do this...
            CinemaCamera.SaveEnd();       //   to trick the main Cinema Camera into thinking it's initiated
            // usage: cin_add <float m_DurationSeconds> <bool m_Ease> <int index>
            float m_DurationSeconds = 5;
            bool  m_Ease            = false;
            int   index             = -1;

            if (uConsole.NextParameterIsFloat())
            {
                m_DurationSeconds = uConsole.GetFloat();
            }
            if (uConsole.NextParameterIsBool())
            {
                m_Ease = uConsole.GetBool();
            }
            if (uConsole.GetNumParameters() == 3 && uConsole.NextParameterIsInt())
            {
                index = Math.Max(0, uConsole.GetInt());
            }

            CameraKeyFrame cam = ModdedCinemaCamera.currentCamera();

            cam.m_DurationSeconds = m_DurationSeconds;
            cam.m_Ease            = m_Ease;
            if (index != -1)
            {
                ModdedCinemaCamera.keyFrames.Insert(index, cam);
                ModdedCinemaCamera.InterpolateHandler.controlPointsList.Insert(index, cam.m_StartPos.normalized);
                ModdedCinemaCamera.PivotHandler.controlPointsList.Insert(index, cam.m_StartPivot);
                uConsole.Log($"Inserted keyframe into position {index} of list.");
            }
            else
            {
                ModdedCinemaCamera.keyFrames.Add(cam);
                ModdedCinemaCamera.InterpolateHandler.controlPointsList.Add(cam.m_StartPos.normalized);
                ModdedCinemaCamera.PivotHandler.controlPointsList.Add(cam.m_StartPivot);
                uConsole.Log("Added keyframe to end of list.");
            }
        }
예제 #2
0
        private static void cin_restore()
        {
            int index = uConsole.GetInt();

            ModdedCinemaCamera.restore(index);
        }
예제 #3
0
 public static bool Prefix()
 {
     ModdedCinemaCamera.StartInterpolate();
     return(false);
 }