adelikat
e0a51eaab1
Rename IStateManager.StateCount -> IStateManager.Count
2019-06-15 14:49:43 -05:00
adelikat
cb4e71ebf7
rename a StateManager method, and delete some unused methods
2019-06-15 14:40:18 -05:00
adelikat
8f116a8428
Pass TasMovie into StateManagerDecay and have it get the last edited frame instead of from IStateManager
2019-06-15 14:35:31 -05:00
adelikat
3c27a332bb
create IStateManager interface and use that instead of TasStateManager
2019-06-15 14:31:06 -05:00
adelikat
1bcf6394ed
cleanup
2019-06-15 13:27:10 -05:00
adelikat
694ba93ec1
I think this is the correct wasLag logic
2019-06-15 13:10:31 -05:00
adelikat
f431492944
better code for populating wasLag, I think
2019-06-15 12:53:17 -05:00
adelikat
3b9e54c250
refactor TasLagLog to allow for gaps in the history. Note that this is a breaking .tasproj format change currently
2019-06-15 12:11:52 -05:00
James Groom
067477ce18
Merge branch 'master' into clean_docs
2019-06-14 13:28:39 +00:00
feos
2423f44540
tastudio: drop laglog from branches since they don't have greenzone anymore
2019-06-13 19:39:52 +03:00
feos
bc990061b7
tastudio: refactor out a variable
...
fix autorestore triggering while drawing on future frames
2019-06-12 22:34:16 +03:00
feos
f5bcdc4aba
fix #1513
...
OSD info on branch hover is mandatory, so I'm not removing it. drawing the branch OSD-framebuffer on the emulator screen is barely possible without butchering everything, so I'm not doing it. instead, keep both core and client framebuffers and use them where they make sense: osd FB shows up on hover, core FB goes to emulator screen on branch load.
2019-06-09 20:34:14 +03:00
YoshiRulz
2642ef4049
Remove empty docs
2019-06-06 16:41:10 +10:00
vadosnaprimer
7915ec8bc1
tsm decay: try to work around some more removal bugs
2019-04-18 19:11:45 +03:00
James Groom
779975f689
Use nameof
2019-03-28 14:17:14 +11:00
YoshiRulz
9d0ee22885
Use string interpolation
2019-03-20 15:01:12 +10:00
alyosha-tas
2bddf3663e
TAStudio: Fix some bugs in new from menues
2019-01-19 13:30:42 -06:00
feos
56e77f4907
tastudio: allow to actually unbind markers from input, and unbind by default
2019-01-05 21:48:40 +03:00
feos
cd2d63b04a
tastudio:
...
- don't use branch laglog after loading it. it's useless because we invalidate if needed anyway
- PauseOnFrame being null started to crash seeking, fixed
- make use of movie alias in branchbox
- capture tsm state after loading the branch
todo: if we load a branch in the middle of invalid greenzone, advancing won't draw new greenzone even tho states are being created. laglog doesn't seem to allow gaps either. unsure how to resolve
2019-01-05 21:30:06 +03:00
feos
b316efb922
cute, I forgot to save the actual changes
2018-12-03 21:16:06 +03:00
feos
3a688d543b
tastudio: fix rec mode dying when appending movie frames
...
close #1376
2018-12-03 21:10:14 +03:00
feos
a365284383
tastudio states decay: fix logic for last edited frame
2018-08-22 20:05:33 +03:00
feos
a0e5e0e593
tastudio: actually don't drop state above last edited frame
2018-05-10 20:32:44 +03:00
feos
056c24e4cf
tastudio: attempt to fix greenzone decay failing to drop states
2018-05-09 17:18:21 +03:00
feos
ae6ce00d7c
I've heard bad things about ElementAt()
2018-03-27 19:01:17 +03:00
feos
661a15dc2c
tsm decay: remove states within internal state gap
...
states settings: clamp things harder
2018-03-11 17:57:30 +03:00
feos
3932e5a025
tsm decay: fix failing to delete frames if marker is there
...
markers can be *not* mod _step
2018-03-11 13:49:40 +03:00
feos
244530ffe3
tastudio: thanks for this 4 years old off-by-one
...
these kinds of errors are haunting me lately!
actually useful info about what it fixes: greenzone not being created after you insert right on current frame
2018-03-10 18:01:08 +03:00
feos
9c0328859d
tastudio: fix disgusting copy-paste error causing exceptions out of nowhere
2018-03-10 18:01:08 +03:00
feos
d89677c729
tastudio: fix #913
2018-03-08 14:59:05 +03:00
feos
f81f41f6f7
tastudio: fix #916
2018-03-08 14:44:09 +03:00
feos
bf8c21663d
State manager decay ( #1128 )
...
* Finally use exponential decay algorithm for greenzone
* Works in both directions (unlike fceux taseditor)
* Stop using last accesses states for anything
* When dropping states per project save, account for state gap better
* Use _states.Keys[i] instead of _states.ElementAt{i).Key in speedy parts, because it's apparently tons faster
* Use StateIsMarker() where it's supposed to be used
* Markers are still left untouched
* Branch states are still dead (probably forever)
2018-03-08 12:24:35 +03:00
feos
0fe703c9b7
tsm: redo the algo from scratch, probably not last time
2018-02-27 01:28:24 +03:00
feos
13a49b00d0
tsm: improving the algo
2018-02-26 01:45:44 +03:00
feos
7ae374df01
tastudio: fuck this
2018-02-21 02:06:25 +03:00
TASeditor
36900b15d4
tastudio lua: setinput functions, onbranch callbacks ( #1098 )
2018-02-10 14:58:46 +03:00
vadosnaprimer
1809d19ecb
smart state gap for greenzone. fix #915
...
disable disk capacity setting
2017-11-05 22:34:58 +03:00
feos
94170687a4
tastudio: always assign branch's laglog when it's loaded
...
fixes failure to color greenzone if a branch without input diff was loaded (and some other weird conditions were met)
2017-10-07 23:07:15 +03:00
feos
2e519eda05
tastudio: fix marker copies being recorded to history when branch backup is created
2017-05-29 21:20:46 +03:00
feos
c1ee1d9505
tastudio: fix stupid bug in SetBoolStates()
2017-05-29 20:20:46 +03:00
adelikat
43cb50d5c3
Misc cleanups in Client.Common
2017-05-19 13:17:07 -05:00
adelikat
70baf9d306
Client.Common cleanups
2017-05-18 11:36:38 -05:00
adelikat
cf15eb8950
TasStateManager - deciding upon a "fix" to the probable bug. This is technically different behavior than before but the intended behavior? This might break stuff
2017-05-17 13:20:57 -05:00
adelikat
2a54517b52
more misc Client.Common cleanups
2017-05-17 13:18:26 -05:00
adelikat
dfea029fe4
Misc cleanups in Client.Common, documentation fixes
2017-05-17 11:16:55 -05:00
adelikat
22e2df3868
Point out a probable bug
2017-05-10 14:26:21 -05:00
adelikat
29d470a933
Cleanup tasproj related code. This includes C#6ism (feos has 2015 now). Added some todos for some sketch code
2017-05-10 14:19:46 -05:00
adelikat
adc60dc6fb
more LINQ pet peeves
2017-05-10 13:43:41 -05:00
adelikat
3860cf89c3
LINQ-fu
2017-05-10 13:40:18 -05:00
adelikat
429b066955
Client.Common - remove various redundant codez
2017-05-10 13:37:04 -05:00
adelikat
f942a409d7
Client.Common - remove a bunch of unused usings
2017-05-10 13:27:10 -05:00
nattthebear
ebe789eed2
heh
2017-05-10 07:45:23 -04:00
adelikat
e0985465b6
misc Client.Common code cleanups
2017-05-09 13:19:55 -05:00
adelikat
5a408f9321
Remove the obsolete BinaryStateLoader.HasLump()
2017-04-24 13:18:45 -05:00
adelikat
1184e8ed05
lua - implement tastudio.getselection(), tastudio.insertframes(), tastudio.deleteframes()
2017-04-22 20:50:03 -05:00
J.D. Purcell
b53502eed8
Spaces -> tabs.
2017-04-15 16:37:30 -04:00
feos
a9cda4a21f
tastudio: dynamically resize usertext column
2017-03-15 21:46:46 +03:00
feos
6e99227c72
tastudio: Clone() for branches. fixes UserText cancellation
...
also cancel backup and osd message if text edit was canceled
2017-03-15 19:17:47 +03:00
feos
d254ad01d8
tastudio: add branch undo feature
...
the fact that it's separated from changelog is because there's no way to extend the latter, but *also* it's intended, as we want branches to be independent from changelog manipulations
todo: figure out branch text edits
2017-03-14 22:49:55 +03:00
feos
114274ac4d
tastudio: latch autohold state for every manual movie length extension
...
finally fixes #534
2017-03-12 19:43:23 +03:00
zeromus
539cdc29f3
add SetPlayback to tastudio lua library. Can't be 100% sure it works, but it seems to be working OK. it may hang everything up if you seek through a really long redzone.....
2017-02-04 21:40:29 -06:00
feos
36f53116b1
tastudio: quit pretending -1 is a legit branchHash
...
seems to fix #785
2017-01-29 10:24:11 +03:00
feos
b7ed072c4c
tastudio: only load branch markers if they are bound to input
2017-01-19 20:49:18 +03:00
feos
06b14d654b
tastudio: move greenzone writing/loading to the very end
...
hopefully if it crashes during greenzone saving, other components won't die
2017-01-19 14:52:31 +03:00
adelikat
2d9213c379
IController - Remove the indexer property and refactor code accordingly, also simplify and cleanup many of the IController implementations
2016-12-14 14:12:16 -06:00
adelikat
5ff33e7569
Rename IController.Type to IController.Definition to more clearly describe the property
2016-12-12 12:30:32 -06:00
feos
ef8068daa4
Revert "tastudio: move LastPositionFrame to TasMovie, prepare for another revision"
...
This reverts commit eea49f1895
.
2016-11-21 20:03:56 +03:00
feos
eea49f1895
tastudio: move LastPositionFrame to TasMovie, prepare for another revision
2016-11-21 19:29:11 +03:00
feos
edf21b8bfe
fix tastudio crashes when:
...
- setting 0 space for disk states
- righclicking on selection if a bunch of selected frames contains the last frame
- cutting the last frame
2016-11-17 20:05:41 +03:00
feos
9714aa5cc9
tastudio:
...
- preserve branch text per update (unless default text has changed)
- remove redundant code from paste functions, rely on global clipboard fully with cut/copy too
2016-10-10 19:00:59 +03:00
feos
7309957c11
tastudio: pasting input beyond movie length extends it
2016-09-08 18:32:37 +03:00
feos
091a62ab25
tastudio history: properly fix recording
...
the problem was mismatching ideas of movie length between movie and history
2016-09-07 20:54:45 +03:00
feos
549fc333f1
tastudio: fix removal of states *near* lag frames
2016-09-03 15:17:38 +03:00
feos
2911e498e1
tastudio history: fix bug where undoing the movie extension (caused by drawing beyond the movie length) would swallow all the movie
2016-08-29 21:18:55 +03:00
feos
4f24682289
taseditor: fix LastPositionFrame resets
2016-08-28 15:34:18 +03:00
feos
215f9b9959
tastudio: some dirty fixes to how undo/redo works with recording frames
2016-08-22 21:17:35 +03:00
feos
170681c3ad
tastudio: Recording mode
...
a bit inconsistent with how it switches to record right now
2016-08-03 22:29:27 +03:00
feos
178820746c
tastudio: prevent crash occurring at new state capture
...
mem leak is still there for N64
2016-08-02 22:46:21 +03:00
feos
346c4e56b3
tastudio autosave:
...
- switch to appropriate method for backups
- option to save backup per file save
- menu command to save backup
2016-06-12 16:41:27 +03:00
feos
cbc5ca2115
tastudio: fix the warning about inheritance mismatch
2016-06-11 18:58:22 +03:00
feos
32be07ce03
tastudio: don't record marker history edits to history
...
this generates a warning regarding "new is not required" for the functions I edited, dunno what to do with it
2016-06-11 12:48:11 +03:00
feos
2a952cebef
saving too!
...
also catch inconsistent tsmSettings exception
2016-06-11 10:12:30 +03:00
feos
ef93a50f4d
tastudio: fix silly order error in tsmSettings parser
2016-06-11 09:46:21 +03:00
feos
559eacf95a
InputpPompt: allow multiline info
...
bk2 export for tastudio: stop endlessly appending extensions
tasstudio autosave:
- fix interval init on load
- 0 interval disables autosave
- canceling SaveAs doesn't kill the timer
- ability to append "backup" to filename allows saving to a separate file
-- don't let tasproject switch to the backup file (bit hacky)
2016-06-10 16:05:12 +03:00
Suuper
327c45b440
Fixed issue #626 .
2016-05-14 13:46:15 -05:00
feos
2e1132c2b9
tastudio: this should be reliable enough.
2016-04-25 18:18:20 +03:00
feos
000050b1e9
tastudio: integrate StateGap logic into ExcludeStates().
...
for loaded projects, stop forcing current frame capture if it's non-zero.
stop excluding state on frame 0.
todo: make capture state gap reliable for project state gap. right now it can capture odd frames if they go after markers or lag, so those will be missing when saving the project.
2016-04-25 18:04:42 +03:00
feos
408d0ae4d0
tastudio: attempt to make StateGap smarter.
...
it should rely on frames, not on state indexes. and we can only have states on frame numbers that are powers of 2.
doesn't work right on saving multiple times yet. need to cooperate with ExcludeStates() somehow.
2016-04-24 23:17:17 +03:00
feos
f35938acdb
tastudio: be able to load broken greenzone file.
2016-04-23 20:54:14 +03:00
feos
1581b5b283
tastudio: tie rerecording to laglog invalidation instead of states.
2016-04-18 18:52:37 +03:00
feos
7fa99c7d13
tastudio: project savegap (finally!)
...
ScrollSpeed defaults to taseditor's
2016-04-17 23:29:25 +03:00
feos
a7b3668506
tastudio: fix Used and fix a nasty mistake in branch logic.
...
should properly handle branches created during seeking.
fix #606 I hope.
2016-04-17 18:54:55 +03:00
feos
0e6ec038a8
tsm: let this sanity check be there.
2016-04-17 16:01:09 +03:00
feos
f5746a7b8f
tastudio: stop updating splicer after every new cell is appended.
...
quick fix to #597 .
fix crash when pasting input beyond movie length. todo: make input log append like PasteInsert does.
2016-04-17 13:52:58 +03:00
Suuper
a751412c1f
TasStateManager.cs -> fixed stateHasDuplicate
2016-02-20 13:43:24 -06:00
Suuper
8b5440d963
Fixed a few bugs in TasStateManager.cs
2016-02-20 12:34:13 -06:00
feos
1b8ef3738a
tastudio:
...
- history form: canonical colors, show the current item better, report marker operations
- markers: adding markers updates dialog, don't ever remove marker 0
- tsm: attempt to fix exception in AllLag()
2016-01-27 12:53:26 +03:00
zeromus
a355f78631
don't load entire inputlog into a string when parking it in a savestate
2016-01-10 23:08:13 -06:00
feos
2a6a2a7a8a
tastudio: properly report saving progress.
...
also attempt to report seeking progress.
report occurs, but progressbar doesn't show up...
2015-12-10 01:38:06 +03:00
feos
8a6ddfbf3f
tastudio: actually use initial state from anchored movies.
...
don't seek to whatever frame such a movie was created from.
2015-12-08 23:38:00 +03:00