Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

(Experimental Tool) TAStudioMPR - For Local Multiple Player Controllers #4218

Open
wants to merge 69 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
69 commits
Select commit Hold shift + click to select a range
35d82dc
restart again. cloned and copied tastudiompr folder in
ShinobiWannabe Jan 25, 2025
cae2dd6
adding tasviews to a list
ShinobiWannabe Jan 26, 2025
1062c98
Hooked up more events
ShinobiWannabe Feb 6, 2025
f128e2b
they scroll together when playing
ShinobiWannabe Feb 6, 2025
19e7ea1
Trying to only use current tasview
ShinobiWannabe Feb 6, 2025
3f3c22d
working through menu items
ShinobiWannabe Feb 6, 2025
bec1abc
Some more checking for specific tasview
ShinobiWannabe Feb 6, 2025
095159e
more progress
ShinobiWannabe Feb 6, 2025
2f33185
Settings are closer fortasView
ShinobiWannabe Feb 6, 2025
111a155
Fixed menu issue
ShinobiWannabe Feb 6, 2025
16b3947
Fixed Clear()
ShinobiWannabe Feb 6, 2025
7c905c7
Fixed scrolling
ShinobiWannabe Feb 6, 2025
62c280c
Splitting inputs to two tasviews mostly works
ShinobiWannabe Feb 8, 2025
2b1a033
fixed third tasview
ShinobiWannabe Feb 8, 2025
a862d2c
Fixed Load
ShinobiWannabe Feb 8, 2025
d85a580
Some slight cleanup
ShinobiWannabe Feb 8, 2025
f84512f
Fixed Right click Context menu not opening on first tasview
ShinobiWannabe Feb 8, 2025
5ec85b5
Trying to implement an Insert an empty frame only affecting one contr…
ShinobiWannabe Feb 8, 2025
0aa7dcf
Insert working
ShinobiWannabe Feb 8, 2025
cb2f161
fix for Insert
ShinobiWannabe Feb 8, 2025
852a5c1
Delete single frame works
ShinobiWannabe Feb 9, 2025
fae7755
Fixed Right context menu not working initially on some tasviews
ShinobiWannabe Feb 9, 2025
239ce44
Delete with multiple rows works.
ShinobiWannabe Feb 9, 2025
b080339
Little comment cleanup
ShinobiWannabe Feb 9, 2025
aba7112
Clear works from Context Menu
ShinobiWannabe Feb 9, 2025
5680c6d
Clear Works
ShinobiWannabe Feb 9, 2025
230aa6e
using SelectedIndexChanged instead of Focus
ShinobiWannabe Feb 9, 2025
182d028
Menu Items Progress. Clear, Insert, Delete work with no incorrect tas…
ShinobiWannabe Feb 9, 2025
7145cb2
Insert multiple has a bug somewhere
ShinobiWannabe Feb 9, 2025
e98dfe2
Multiple insert bug progress?
ShinobiWannabe Feb 9, 2025
03c2951
Fixed Multiple Insert
ShinobiWannabe Feb 9, 2025
6f47c48
slight cleanup in InsertEmptyFramesMPR
ShinobiWannabe Feb 9, 2025
3325170
Truncate() works for a controller
ShinobiWannabe Feb 9, 2025
988cef1
Clone() looks to be working
ShinobiWannabe Feb 9, 2025
aed38b5
working on Copy Paste
ShinobiWannabe Feb 9, 2025
ade34e2
Copy and Paste Over Existing Input Works
ShinobiWannabe Feb 9, 2025
a3f591d
increased form size to 1050
ShinobiWannabe Feb 10, 2025
44985e6
Made Number of TasViews Dynamic
ShinobiWannabe Feb 10, 2025
47aca1f
removed incorrectly added event
ShinobiWannabe Feb 10, 2025
0d96aff
Fixed off by 1 in Delete when an input was at end of log
ShinobiWannabe Feb 10, 2025
f19ce95
HotKeys Added
ShinobiWannabe Feb 10, 2025
4cfa79b
fixed missing entries in Hotkeys
ShinobiWannabe Feb 10, 2025
6430837
Experimental feature to hide a tasView in the Config menu
ShinobiWannabe Feb 10, 2025
c2c183c
Using the Paste Selected From is working
ShinobiWannabe Feb 11, 2025
c45a370
for paste selected from func Renamed got rid of unneeded parameter
ShinobiWannabe Feb 11, 2025
9a3fca2
Made that Paste Selected more intuitive
ShinobiWannabe Feb 11, 2025
b4679be
fixed that copy from other tasviews
ShinobiWannabe Feb 11, 2025
78da7dc
Fixed another Delete bug
ShinobiWannabe Feb 11, 2025
7df5601
Cut() func added
ShinobiWannabe Feb 11, 2025
befc2d4
Font sets for all tasviews now
ShinobiWannabe Feb 11, 2025
994c2c8
deselect only for current tasView
ShinobiWannabe Feb 11, 2025
e261825
TasViews are set to the correct width dynamically
ShinobiWannabe Feb 11, 2025
c2934ef
Cleaned up Comments and some empty rows
ShinobiWannabe Feb 12, 2025
4bb55a4
Fixing "analyzer" runner errors
ShinobiWannabe Feb 12, 2025
da86c78
Some more analyzer fixes
ShinobiWannabe Feb 12, 2025
dcd1530
Merge pull request #1 from ShinobiWannabe/bizhawktastudiompr
ShinobiWannabe Feb 12, 2025
dee92e9
Tried to resolve conflicts.
ShinobiWannabe Feb 12, 2025
5d66dcc
Another Analyzer Fix
ShinobiWannabe Feb 12, 2025
c6a84af
Yet more analyzer fixes
ShinobiWannabe Feb 12, 2025
25ce071
update quicknes file
ShinobiWannabe Feb 12, 2025
53b5c2f
try quckernes again
ShinobiWannabe Feb 12, 2025
dd2e46e
Merge pull request #4 from ShinobiWannabe/m
ShinobiWannabe Feb 12, 2025
271c47f
Throw an error with useful text message if the number of controllers …
ShinobiWannabe Feb 12, 2025
bdcc094
Revert unrelated quickerNES changes
YoshiRulz Feb 12, 2025
5de316b
Clean up diff by reverting whitespace changes
YoshiRulz Feb 12, 2025
8e20e14
Revert unrelated Designer changes
YoshiRulz Feb 12, 2025
d81f9c3
Merge some TAStudioMPR-specific handling w/ TAStudio path
YoshiRulz Feb 12, 2025
a2ac425
Merge remote-tracking branch 'upstream/master'
ShinobiWannabe Feb 14, 2025
369ff2a
Adjusted padding and start framecount
ShinobiWannabe Feb 14, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 13 additions & 1 deletion src/BizHawk.Client.Common/movie/interfaces/ITasMovie.cs
Original file line number Diff line number Diff line change
Expand Up @@ -32,22 +32,34 @@ public interface ITasMovie : IMovie, INotifyPropertyChanged, IDisposable
/// </summary>
void ClearFrame(int frame);

void ClearFrameMPR(int frame, int startOffset, int currentControlLength);

void GreenzoneCurrentFrame();
void ToggleBoolState(int frame, string buttonName);
void SetAxisState(int frame, string buttonName, int val);
void SetAxisStates(int frame, int count, string buttonName, int val);
void SetBoolState(int frame, string buttonName, bool val);
void SetBoolStates(int frame, int count, string buttonName, bool val);

void InsertInput(int frame, string inputState);
void InsertInput(int frame, IEnumerable<string> inputLog);
void InsertInput(int frame, IEnumerable<IController> inputStates);

void InsertInputMPR(int frame, IEnumerable<string> inputLog, int startOffset, int currentControlLength);
void InsertEmptyFrameMPR(int frame, int startOffset, int currentControlLength, int count = 1);
void InsertEmptyFramesMPR(int frame, int startOffset, int currentControlLength, int count = 1);
void InsertEmptyFrame(int frame, int count = 1);

int CopyOverInput(int frame, IEnumerable<IController> inputStates);
int CopyOverInputMPR(int frame, IEnumerable<IController> inputStates, int startOffset, int currentControlLength);
int CopyOverDestInputMPR(int frame, IEnumerable<string> frames, int startOffset, int currentControlLength, int sourceStartOffset);

void RemoveFrame(int frame);
void RemoveFrames(ICollection<int> frames);
void RemoveFrames(int removeStart, int removeUpTo);
void RemoveFramesMPR(ICollection<int> frames, int startOffset, int currentControlLength);

void TruncateFramesMPR(int frame, int startOffset, int currentControlLength);

void SetFrame(int frame, string source);

void LoadBranch(TasBranch branch);
Expand Down
Loading