public TasMovie() : base() { StateManager = new TasStateManager(this); Header[HeaderKeys.MOVIEVERSION] = "BizHawk v2.0 Tasproj v1.0"; Markers = new TasMovieMarkerList(this); Markers.Add(0, StartsFromSavestate ? "Savestate" : "Power on"); }
public TasMovieMarkerList DeepClone() { var ret = new TasMovieMarkerList(_movie); for (int i = 0; i < Count; i++) { // used to copy markers between branches ret.Add(new TasMovieMarker(this[i].Frame, this[i].Message), skipHistory: true); } return(ret); }
public TasMovie(bool startsFromSavestate = false, BackgroundWorker progressReportWorker = null) : base() { _progressReportWorker = progressReportWorker; if (!Global.Emulator.HasSavestates()) { throw new InvalidOperationException("Cannot create a TasMovie against a core that does not implement IStatable"); } ChangeLog = new TasMovieChangeLog(this); StateManager = new TasStateManager(this); Header[HeaderKeys.MOVIEVERSION] = "BizHawk v2.0 Tasproj v1.0"; Markers = new TasMovieMarkerList(this); Markers.CollectionChanged += Markers_CollectionChanged; Markers.Add(0, startsFromSavestate ? "Savestate" : "Power on"); BindMarkersToInput = true; }
public TasMovie(string path, bool startsFromSavestate = false, BackgroundWorker progressReportWorker = null) : base(path) { // TODO: how to call the default constructor AND the base(path) constructor? And is base(path) calling base() ? _progressReportWorker = progressReportWorker; if (!Global.Emulator.HasSavestates()) { throw new InvalidOperationException("Cannot create a TasMovie against a core that does not implement IStatable"); } ChangeLog = new TasMovieChangeLog(this); StateManager = new TasStateManager(this); Session = new TasSession(this); Header[HeaderKeys.MOVIEVERSION] = "BizHawk v2.0 Tasproj v1.0"; Markers = new TasMovieMarkerList(this); Markers.CollectionChanged += Markers_CollectionChanged; Markers.Add(0, startsFromSavestate ? "Savestate" : "Power on"); BindMarkersToInput = true; CurrentBranch = -1; }