809652e132
* Update issue template to include .riq/.zip info (#483) Co-authored-by: patata <patataofcourse@gmail.com> * Pull release 1 (#484) * Squashed commit of the following: commita6ce193ce5
Merge:6105bb4f
9b24ac48
Author: minenice55 <star.elementa@gmail.com> Date: Wed Jun 14 01:23:31 2023 +0000 Merge pull request #473 from minenice55/easings-fix Enum Parsing Fix commit9b24ac4838
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 21:21:13 2023 -0400 fix all parsing of enums, removed the "special case" for eases update to latest Jukebox commit6105bb4f64
Merge:576b4a00
8df235a8
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 21:39:15 2023 +0000 Merge pull request #469 from minenice55/jukebox-update Jukebox Package Update commit576b4a0017
Merge:99804457
10f8fa7f
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 21:39:08 2023 +0000 Merge pull request #458 from AstrlJelly/MiscAdditions_4 Bug Fixes + Feature Additions commit10f8fa7f5a
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 17:38:24 2023 -0400 add "updater" for the old marching entity commit118cd4993d
Merge:1c1c731d
99804457
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 17:22:01 2023 -0400 Merge branch 'release_1' into pr/458 commit8df235a85b
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 16:55:02 2023 -0400 let play mode start if no song file is loaded fix issue with loading large audio files commit9980445723
Merge:aff1e3d8
2f595824
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 18:32:40 2023 +0000 Merge pull request #471 from Rapandrasmus/FixWorkingDoughCurve Fixed weird curve stuff on game switch in working dough commit2f59582460
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 19:24:13 2023 +0200 Fixed weird curve stuff on game switch in working dough commitaff1e3d889
Merge:b40ec128
c9accfa5
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 16:09:21 2023 +0000 Merge pull request #470 from Rapandrasmus/WorkingDoughFixes Fixed small balls not working in working dough commitc9accfa52d
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 18:07:13 2023 +0200 Fixed small balls not working in working dough commitb40ec128a5
Merge:9f953d50
95c9b346
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 14:56:58 2023 +0000 Merge pull request #467 from Rapandrasmus/WorkingDoughRework Working Dough rework commit95c9b34695
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 16:13:08 2023 +0200 modernised rockers pass turn commit0debf55391
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 16:03:08 2023 +0200 Rhythm tweezers pass turn now works like working dough commit6eac745eae
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 15:51:35 2023 +0200 gandw on balls has been added commit349867d983
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 14:59:56 2023 +0200 Proper inactive handling now commitd469c6c3fa
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 13:52:15 2023 +0200 OnSpawnBall reimplemented commitdd290b3331
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 13:37:09 2023 +0200 new sounds commit757e1c2c5e
Author: minenice55 <star.elementa@gmail.com> Date: Mon Jun 12 17:18:37 2023 -0400 update Jukebox to latest version fixes for inferred entity loading commit8ce1d8276b
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 21:36:57 2023 +0200 ball transporter anims for pass turn commitaf0d9bae19
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 20:38:48 2023 +0200 working dough converted, need to fix eveerything though commitdb21d51673
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 18:36:41 2023 +0200 Converted everything to new curves and made playerballs handle themselves input-wise commit41157a038c
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 14:04:32 2023 +0200 Some new curves commit7d754f5706
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 12:03:21 2023 +0200 Rockers can do it too now commitc196947251
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 11:58:31 2023 +0200 You can now place inputs on top of pass turn for rhythm tweezers commit9f953d505f
Merge:2a8d8d6f
df120f08
Author: minenice55 <star.elementa@gmail.com> Date: Sun Jun 11 15:55:40 2023 -0400 Merge branch 'master' into release_1 commit2a8d8d6fd2
Merge:9e3e5942
13adf5b0
Author: minenice55 <star.elementa@gmail.com> Date: Sun Jun 11 19:53:47 2023 +0000 Merge pull request #465 from minenice55/dont_infer_track Don't infer the track field when importing converted v0 riq coming from unknown origin commit13adf5b07b
Author: minenice55 <star.elementa@gmail.com> Date: Sun Jun 11 15:52:14 2023 -0400 don't infer track when importing a v0 riq from another program commit9e3e594209
Author: minenice55 <star.elementa@gmail.com> Date: Sun Jun 11 12:12:25 2023 -0400 make base datamodels for special entity reading (#463) * make base datamodels for special entity reading * fix crop stomp breaking when no game switch or remix end is set * fix save shortcut fix loading charts with no music commit1c1c731dd1
Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 23:00:30 2023 -0400 add updater for marching orders turn commit210be54ba3
Merge:67b6658c
af8395fb
Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 22:36:10 2023 -0400 Merge branch 'release_1' into pr/458 commitaf8395fb6a
Merge:81eafec9
b1fab52a
Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 22:30:32 2023 -0400 Merge branch 'master' into release_1 commit81eafec986
Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 22:27:58 2023 -0400 editor fixes (#459) * ditch loading dialog doesn't show up when it's supposed to * format song offset in editor * remove VorbisPlugin * Update Editor.cs commit67b6658cd3
Author: AstrlJelly <bdlawson115@gmail.com> Date: Sat Jun 10 16:55:10 2023 -0400 convert float to double and all that commita4b66367fd
Merge:08a664ba
b1fab52a
Author: AstrlJelly <bdlawson115@gmail.com> Date: Sat Jun 10 16:01:44 2023 -0400 Merge remote-tracking branch 'upstream/master' into MiscAdditions_4 commit08a664ba2a
Merge:faf3fbf9
b7afd697
Author: AstrlJelly <bdlawson115@gmail.com> Date: Sat Jun 10 15:21:22 2023 -0400 Merge remote-tracking branch 'upstream/master' into MiscAdditions_4 commitfaf3fbf97c
Author: AstrlJelly <bdlawson115@gmail.com> Date: Sat Jun 10 15:18:45 2023 -0400 a lot * munchy monk input + mustache fixes * fork lifter and pajama party bopping * meat grinder miss bop fix * cloud monkey Real * marching orders Go! was broken * force march doesn't break when it's too early from a game switch * you can use the March! block without the marching now commitbb2ae74339
Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 15:13:29 2023 -0400 Integration of Jukebox Library (#451) * add Jukebox library todo: - saving / loading of new format - inferrence of unknown data like past versions - move the temporary float casts to proper use of double - make sound related functions take double for timing - inform people that the Jukebox sound player was renamed to SoundByte lol * make sound, input scheduling, and super curve use double precision * successfully load charts * editor works again v1 riqs can be saved and loaded * first tempo and volume markers are unmovable fix loading of charts' easing values * use gsync / freesync * update Jukebox refs to SoundByte * game events use double part 1 Air Rally - Glee Club converted * don't load song if chart load fails * finish conversion of all minigames * remove editor waveform toggle * timeline now respects added song offset length clear cache files on app close prepped notes for dsp sync * update timeline length when offset changed * update to latest Jukebox * make error panel object in global game manager * improve conductor music scheduling * added error message box fix first game events sometimes not playing * Squashed commit of the following: commite782e3a5b4
Merge:5b8cfef1
ce74719c
Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 17 16:40:52 2023 +0000 Merge pull request #478 from evdial/working-dough Working Dough Tweaks commitce74719c1a
Merge:9c61b760
5b8cfef1
Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 17 12:40:06 2023 -0400 Merge branch 'release_1' into pr/478 commit5b8cfef1b0
Author: patata <patataofcourse@gmail.com> Date: Sat Jun 17 17:20:15 2023 +0200 Update issue template to include .riq/.zip info commit9c61b760bb
Author: ev <85412919+evdial@users.noreply.github.com> Date: Thu Jun 15 15:05:07 2023 -0400 assbuns commitae7451e9d3
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Thu Jun 15 20:56:40 2023 +0200 made small idle not crazy commit4c5c95237c
Author: ev <85412919+evdial@users.noreply.github.com> Date: Thu Jun 15 14:33:57 2023 -0400 fsd commit083d916238
Author: ev <85412919+evdial@users.noreply.github.com> Date: Thu Jun 15 14:16:38 2023 -0400 anim commitb3664e01b3
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Thu Jun 15 20:13:11 2023 +0200 Fixed stuff also scaled now yippee commit71e3a0ce6b
Author: ev <85412919+evdial@users.noreply.github.com> Date: Thu Jun 15 13:50:10 2023 -0400 many commit534b06301d
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 21:28:21 2023 -0400 Squashed commit of the following: (#474) commita6ce193ce5
Merge:6105bb4f
9b24ac48
Author: minenice55 <star.elementa@gmail.com> Date: Wed Jun 14 01:23:31 2023 +0000 Merge pull request #473 from minenice55/easings-fix Enum Parsing Fix commit9b24ac4838
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 21:21:13 2023 -0400 fix all parsing of enums, removed the "special case" for eases update to latest Jukebox commit6105bb4f64
Merge:576b4a00
8df235a8
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 21:39:15 2023 +0000 Merge pull request #469 from minenice55/jukebox-update Jukebox Package Update commit576b4a0017
Merge:99804457
10f8fa7f
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 21:39:08 2023 +0000 Merge pull request #458 from AstrlJelly/MiscAdditions_4 Bug Fixes + Feature Additions commit10f8fa7f5a
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 17:38:24 2023 -0400 add "updater" for the old marching entity commit118cd4993d
Merge:1c1c731d
99804457
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 17:22:01 2023 -0400 Merge branch 'release_1' into pr/458 commit8df235a85b
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 16:55:02 2023 -0400 let play mode start if no song file is loaded fix issue with loading large audio files commit9980445723
Merge:aff1e3d8
2f595824
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 18:32:40 2023 +0000 Merge pull request #471 from Rapandrasmus/FixWorkingDoughCurve Fixed weird curve stuff on game switch in working dough commit2f59582460
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 19:24:13 2023 +0200 Fixed weird curve stuff on game switch in working dough commitaff1e3d889
Merge:b40ec128
c9accfa5
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 16:09:21 2023 +0000 Merge pull request #470 from Rapandrasmus/WorkingDoughFixes Fixed small balls not working in working dough commitc9accfa52d
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 18:07:13 2023 +0200 Fixed small balls not working in working dough commitb40ec128a5
Merge:9f953d50
95c9b346
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 14:56:58 2023 +0000 Merge pull request #467 from Rapandrasmus/WorkingDoughRework Working Dough rework commit95c9b34695
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 16:13:08 2023 +0200 modernised rockers pass turn commit0debf55391
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 16:03:08 2023 +0200 Rhythm tweezers pass turn now works like working dough commit6eac745eae
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 15:51:35 2023 +0200 gandw on balls has been added commit349867d983
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 14:59:56 2023 +0200 Proper inactive handling now commitd469c6c3fa
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 13:52:15 2023 +0200 OnSpawnBall reimplemented commitdd290b3331
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 13:37:09 2023 +0200 new sounds commit757e1c2c5e
Author: minenice55 <star.elementa@gmail.com> Date: Mon Jun 12 17:18:37 2023 -0400 update Jukebox to latest version fixes for inferred entity loading commit8ce1d8276b
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 21:36:57 2023 +0200 ball transporter anims for pass turn commitaf0d9bae19
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 20:38:48 2023 +0200 working dough converted, need to fix eveerything though commitdb21d51673
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 18:36:41 2023 +0200 Converted everything to new curves and made playerballs handle themselves input-wise commit41157a038c
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 14:04:32 2023 +0200 Some new curves commit7d754f5706
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 12:03:21 2023 +0200 Rockers can do it too now commitc196947251
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 11:58:31 2023 +0200 You can now place inputs on top of pass turn for rhythm tweezers commit9f953d505f
Merge:2a8d8d6f
df120f08
Author: minenice55 <star.elementa@gmail.com> Date: Sun Jun 11 15:55:40 2023 -0400 Merge branch 'master' into release_1 commit2a8d8d6fd2
Merge:9e3e5942
13adf5b0
Author: minenice55 <star.elementa@gmail.com> Date: Sun Jun 11 19:53:47 2023 +0000 Merge pull request #465 from minenice55/dont_infer_track Don't infer the track field when importing converted v0 riq coming from unknown origin commit13adf5b07b
Author: minenice55 <star.elementa@gmail.com> Date: Sun Jun 11 15:52:14 2023 -0400 don't infer track when importing a v0 riq from another program commit9e3e594209
Author: minenice55 <star.elementa@gmail.com> Date: Sun Jun 11 12:12:25 2023 -0400 make base datamodels for special entity reading (#463) * make base datamodels for special entity reading * fix crop stomp breaking when no game switch or remix end is set * fix save shortcut fix loading charts with no music commit1c1c731dd1
Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 23:00:30 2023 -0400 add updater for marching orders turn commit210be54ba3
Merge:67b6658c
af8395fb
Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 22:36:10 2023 -0400 Merge branch 'release_1' into pr/458 commitaf8395fb6a
Merge:81eafec9
b1fab52a
Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 22:30:32 2023 -0400 Merge branch 'master' into release_1 commit81eafec986
Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 22:27:58 2023 -0400 editor fixes (#459) * ditch loading dialog doesn't show up when it's supposed to * format song offset in editor * remove VorbisPlugin * Update Editor.cs commit67b6658cd3
Author: AstrlJelly <bdlawson115@gmail.com> Date: Sat Jun 10 16:55:10 2023 -0400 convert float to double and all that commita4b66367fd
Merge:08a664ba
b1fab52a
Author: AstrlJelly <bdlawson115@gmail.com> Date: Sat Jun 10 16:01:44 2023 -0400 Merge remote-tracking branch 'upstream/master' into MiscAdditions_4 commit08a664ba2a
Merge:faf3fbf9
b7afd697
Author: AstrlJelly <bdlawson115@gmail.com> Date: Sat Jun 10 15:21:22 2023 -0400 Merge remote-tracking branch 'upstream/master' into MiscAdditions_4 commitfaf3fbf97c
Author: AstrlJelly <bdlawson115@gmail.com> Date: Sat Jun 10 15:18:45 2023 -0400 a lot * munchy monk input + mustache fixes * fork lifter and pajama party bopping * meat grinder miss bop fix * cloud monkey Real * marching orders Go! was broken * force march doesn't break when it's too early from a game switch * you can use the March! block without the marching now commitbb2ae74339
Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 15:13:29 2023 -0400 Integration of Jukebox Library (#451) * add Jukebox library todo: - saving / loading of new format - inferrence of unknown data like past versions - move the temporary float casts to proper use of double - make sound related functions take double for timing - inform people that the Jukebox sound player was renamed to SoundByte lol * make sound, input scheduling, and super curve use double precision * successfully load charts * editor works again v1 riqs can be saved and loaded * first tempo and volume markers are unmovable fix loading of charts' easing values * use gsync / freesync * update Jukebox refs to SoundByte * game events use double part 1 Air Rally - Glee Club converted * don't load song if chart load fails * finish conversion of all minigames * remove editor waveform toggle * timeline now respects added song offset length clear cache files on app close prepped notes for dsp sync * update timeline length when offset changed * update to latest Jukebox * make error panel object in global game manager * improve conductor music scheduling * added error message box fix first game events sometimes not playing commita6ce193ce5
Merge:6105bb4f
9b24ac48
Author: minenice55 <star.elementa@gmail.com> Date: Wed Jun 14 01:23:31 2023 +0000 Merge pull request #473 from minenice55/easings-fix Enum Parsing Fix commit9b24ac4838
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 21:21:13 2023 -0400 fix all parsing of enums, removed the "special case" for eases update to latest Jukebox commit6105bb4f64
Merge:576b4a00
8df235a8
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 21:39:15 2023 +0000 Merge pull request #469 from minenice55/jukebox-update Jukebox Package Update commit576b4a0017
Merge:99804457
10f8fa7f
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 21:39:08 2023 +0000 Merge pull request #458 from AstrlJelly/MiscAdditions_4 Bug Fixes + Feature Additions commit10f8fa7f5a
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 17:38:24 2023 -0400 add "updater" for the old marching entity commit118cd4993d
Merge:1c1c731d
99804457
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 17:22:01 2023 -0400 Merge branch 'release_1' into pr/458 commit8df235a85b
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 16:55:02 2023 -0400 let play mode start if no song file is loaded fix issue with loading large audio files commit9980445723
Merge:aff1e3d8
2f595824
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 18:32:40 2023 +0000 Merge pull request #471 from Rapandrasmus/FixWorkingDoughCurve Fixed weird curve stuff on game switch in working dough commit2f59582460
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 19:24:13 2023 +0200 Fixed weird curve stuff on game switch in working dough commitaff1e3d889
Merge:b40ec128
c9accfa5
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 16:09:21 2023 +0000 Merge pull request #470 from Rapandrasmus/WorkingDoughFixes Fixed small balls not working in working dough commitc9accfa52d
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 18:07:13 2023 +0200 Fixed small balls not working in working dough commitb40ec128a5
Merge:9f953d50
95c9b346
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 14:56:58 2023 +0000 Merge pull request #467 from Rapandrasmus/WorkingDoughRework Working Dough rework commit95c9b34695
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 16:13:08 2023 +0200 modernised rockers pass turn commit0debf55391
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 16:03:08 2023 +0200 Rhythm tweezers pass turn now works like working dough commit6eac745eae
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 15:51:35 2023 +0200 gandw on balls has been added commit349867d983
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 14:59:56 2023 +0200 Proper inactive handling now commitd469c6c3fa
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 13:52:15 2023 +0200 OnSpawnBall reimplemented commitdd290b3331
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 13:37:09 2023 +0200 new sounds commit757e1c2c5e
Author: minenice55 <star.elementa@gmail.com> Date: Mon Jun 12 17:18:37 2023 -0400 update Jukebox to latest version fixes for inferred entity loading commit8ce1d8276b
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 21:36:57 2023 +0200 ball transporter anims for pass turn commitaf0d9bae19
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 20:38:48 2023 +0200 working dough converted, need to fix eveerything though commitdb21d51673
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 18:36:41 2023 +0200 Converted everything to new curves and made playerballs handle themselves input-wise commit41157a038c
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 14:04:32 2023 +0200 Some new curves commit7d754f5706
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 12:03:21 2023 +0200 Rockers can do it too now commitc196947251
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 11:58:31 2023 +0200 You can now place inputs on top of pass turn for rhythm tweezers commit9f953d505f
Merge:2a8d8d6f
df120f08
Author: minenice55 <star.elementa@gmail.com> Date: Sun Jun 11 15:55:40 2023 -0400 Merge branch 'master' into release_1 commit2a8d8d6fd2
Merge:9e3e5942
13adf5b0
Author: minenice55 <star.elementa@gmail.com> Date: Sun Jun 11 19:53:47 2023 +0000 Merge pull request #465 from minenice55/dont_infer_track Don't infer the track field when importing converted v0 riq coming from unknown origin commit13adf5b07b
Author: minenice55 <star.elementa@gmail.com> Date: Sun Jun 11 15:52:14 2023 -0400 don't infer track when importing a v0 riq from another program commit9e3e594209
Author: minenice55 <star.elementa@gmail.com> Date: Sun Jun 11 12:12:25 2023 -0400 make base datamodels for special entity reading (#463) * make base datamodels for special entity reading * fix crop stomp breaking when no game switch or remix end is set * fix save shortcut fix loading charts with no music commit1c1c731dd1
Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 23:00:30 2023 -0400 add updater for marching orders turn commit210be54ba3
Merge:67b6658c
af8395fb
Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 22:36:10 2023 -0400 Merge branch 'release_1' into pr/458 commitaf8395fb6a
Merge:81eafec9
b1fab52a
Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 22:30:32 2023 -0400 Merge branch 'master' into release_1 commit81eafec986
Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 22:27:58 2023 -0400 editor fixes (#459) * ditch loading dialog doesn't show up when it's supposed to * format song offset in editor * remove VorbisPlugin * Update Editor.cs commit67b6658cd3
Author: AstrlJelly <bdlawson115@gmail.com> Date: Sat Jun 10 16:55:10 2023 -0400 convert float to double and all that commita4b66367fd
Merge:08a664ba
b1fab52a
Author: AstrlJelly <bdlawson115@gmail.com> Date: Sat Jun 10 16:01:44 2023 -0400 Merge remote-tracking branch 'upstream/master' into MiscAdditions_4 commit08a664ba2a
Merge:faf3fbf9
b7afd697
Author: AstrlJelly <bdlawson115@gmail.com> Date: Sat Jun 10 15:21:22 2023 -0400 Merge remote-tracking branch 'upstream/master' into MiscAdditions_4 commitfaf3fbf97c
Author: AstrlJelly <bdlawson115@gmail.com> Date: Sat Jun 10 15:18:45 2023 -0400 a lot * munchy monk input + mustache fixes * fork lifter and pajama party bopping * meat grinder miss bop fix * cloud monkey Real * marching orders Go! was broken * force march doesn't break when it's too early from a game switch * you can use the March! block without the marching now commitbb2ae74339
Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 15:13:29 2023 -0400 Integration of Jukebox Library (#451) * add Jukebox library todo: - saving / loading of new format - inferrence of unknown data like past versions - move the temporary float casts to proper use of double - make sound related functions take double for timing - inform people that the Jukebox sound player was renamed to SoundByte lol * make sound, input scheduling, and super curve use double precision * successfully load charts * editor works again v1 riqs can be saved and loaded * first tempo and volume markers are unmovable fix loading of charts' easing values * use gsync / freesync * update Jukebox refs to SoundByte * game events use double part 1 Air Rally - Glee Club converted * don't load song if chart load fails * finish conversion of all minigames * remove editor waveform toggle * timeline now respects added song offset length clear cache files on app close prepped notes for dsp sync * update timeline length when offset changed * update to latest Jukebox * make error panel object in global game manager * improve conductor music scheduling * added error message box fix first game events sometimes not playing * Editor Additions (#479) * favoriting and pick block favoriting needs to not break after previewing (maybe make it persistent in the settings file?) pick block needs to pick the icon, too. and preferably scroll to it as well * final star anim + automatic icon game switching before i make any more changes im making a checkpoint here cuz i know it works * i want to add a way to specify which event SwitchGame() will switch to (because that's a cool feature for pick block) * i'll have to figure out how to auto scroll to the game when the icon is selected * the star now fully works, even between preview switches 👍 * fix the rest of the stuff the event name gets colored correctly and hidden games are skipped over, but still loaded. also i built mm ass buns * tweaks + zoom and sorting this stuff will be in the pr desc so it doesn't matter * oop one more thing * icons look better now :D mipmaps to the rescue * double date fix * Merge pull request #486 from RHeavenStudio/actions_rework Rework GitHub Actions and build script * add ab meta to gitignore (#489) * Sound Scheduling Improvements (#491) * port conductor adjustments * scheduled sounds prebake * allow aiff files to be imported add vbr mp3 warning to readme * improve wording * CNR API Internal Rework (#488) * Prep stuff * Tweezers now spawn in * Started converting tweezers * I hate <1 beat intervals * Actually nvm * fixed a bug * You can chain intervals now, stack them if you really wanted * Pass turn checks if crhandlerinstance exists * Fixed hairs being deleted by onion switch * Rockers rerewritten * working dough rerewritten * CNR API Internal Rework (#488) * Prep stuff * Tweezers now spawn in * Started converting tweezers * I hate <1 beat intervals * Actually nvm * fixed a bug * You can chain intervals now, stack them if you really wanted * Pass turn checks if crhandlerinstance exists * Fixed hairs being deleted by onion switch * Rockers rerewritten * working dough rerewritten * Games fixes/reworks patch (#501) * ghosts are scaled now * Lockstep fully reworked * mr. bach has been implemented * Space dance fixes * oops * Tap trial rework part 1 * tap trial rework part 2 * oopsie * Gramps Talk Update * Space Dance Voice Offsets * Giraffe done! (Except miss anim) * bg is not showing up for some reason * bg not rendering fixed + giraffe fixed * scrolling done * fixed space dance and space soccer bg scrolls * fixed rockers bugs * adjustment * fixed el inaccuracies * particle fix * changed pitch and volume of monkey tap * miss anim * megamix face for girl * Proper miss anim implementation * Added force stepping event * miss anim fix --------- Co-authored-by: saladplainzone <chocolate2890mail@gmail.com> Co-authored-by: ev <85412919+evdial@users.noreply.github.com> * Mahou Tsukai Rework (#502) * fixed not being able to whiff in tap trial * bored meeting fixes * more board meeting fix * ww now uses z axis instead of scale * Inputs are now reworked in mahou tsukai * Fixed the particle effect * Game Switch Black Flash is now beat-based. (#503) * Game switch flashes are now 0.25 beats long * ambient glow now turns black when the game switch flash is on * you can now set the void color, it doesn't work with game switch flashes * black * fixed! (#504) * Quiz Show and Tambourine Reworks (#505) * Tambourine fully reworked * quiz show rework part 1 * quiz show rework part 2 * oopsie doopsie * el fix numbah two * In CheerReaders.cs, quotation marks were aptly added, and references … (#506) * Update issue template to include .riq/.zip info (#483) Co-authored-by: patata <patataofcourse@gmail.com> * Pull release 1 (#484) * Squashed commit of the following: commita6ce193ce5
Merge:6105bb4f
9b24ac48
Author: minenice55 <star.elementa@gmail.com> Date: Wed Jun 14 01:23:31 2023 +0000 Merge pull request #473 from minenice55/easings-fix Enum Parsing Fix commit9b24ac4838
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 21:21:13 2023 -0400 fix all parsing of enums, removed the "special case" for eases update to latest Jukebox commit6105bb4f64
Merge:576b4a00
8df235a8
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 21:39:15 2023 +0000 Merge pull request #469 from minenice55/jukebox-update Jukebox Package Update commit576b4a0017
Merge:99804457
10f8fa7f
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 21:39:08 2023 +0000 Merge pull request #458 from AstrlJelly/MiscAdditions_4 Bug Fixes + Feature Additions commit10f8fa7f5a
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 17:38:24 2023 -0400 add "updater" for the old marching entity commit118cd4993d
Merge:1c1c731d
99804457
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 17:22:01 2023 -0400 Merge branch 'release_1' into pr/458 commit8df235a85b
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 16:55:02 2023 -0400 let play mode start if no song file is loaded fix issue with loading large audio files commit9980445723
Merge:aff1e3d8
2f595824
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 18:32:40 2023 +0000 Merge pull request #471 from Rapandrasmus/FixWorkingDoughCurve Fixed weird curve stuff on game switch in working dough commit2f59582460
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 19:24:13 2023 +0200 Fixed weird curve stuff on game switch in working dough commitaff1e3d889
Merge:b40ec128
c9accfa5
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 16:09:21 2023 +0000 Merge pull request #470 from Rapandrasmus/WorkingDoughFixes Fixed small balls not working in working dough commitc9accfa52d
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 18:07:13 2023 +0200 Fixed small balls not working in working dough commitb40ec128a5
Merge:9f953d50
95c9b346
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 14:56:58 2023 +0000 Merge pull request #467 from Rapandrasmus/WorkingDoughRework Working Dough rework commit95c9b34695
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 16:13:08 2023 +0200 modernised rockers pass turn commit0debf55391
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 16:03:08 2023 +0200 Rhythm tweezers pass turn now works like working dough commit6eac745eae
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 15:51:35 2023 +0200 gandw on balls has been added commit349867d983
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 14:59:56 2023 +0200 Proper inactive handling now commitd469c6c3fa
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 13:52:15 2023 +0200 OnSpawnBall reimplemented commitdd290b3331
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 13:37:09 2023 +0200 new sounds commit757e1c2c5e
Author: minenice55 <star.elementa@gmail.com> Date: Mon Jun 12 17:18:37 2023 -0400 update Jukebox to latest version fixes for inferred entity loading commit8ce1d8276b
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 21:36:57 2023 +0200 ball transporter anims for pass turn commitaf0d9bae19
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 20:38:48 2023 +0200 working dough converted, need to fix eveerything though commitdb21d51673
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 18:36:41 2023 +0200 Converted everything to new curves and made playerballs handle themselves input-wise commit41157a038c
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 14:04:32 2023 +0200 Some new curves commit7d754f5706
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 12:03:21 2023 +0200 Rockers can do it too now commitc196947251
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 11:58:31 2023 +0200 You can now place inputs on top of pass turn for rhythm tweezers commit9f953d505f
Merge:2a8d8d6f
df120f08
Author: minenice55 <star.elementa@gmail.com> Date: Sun Jun 11 15:55:40 2023 -0400 Merge branch 'master' into release_1 commit2a8d8d6fd2
Merge:9e3e5942
13adf5b0
Author: minenice55 <star.elementa@gmail.com> Date: Sun Jun 11 19:53:47 2023 +0000 Merge pull request #465 from minenice55/dont_infer_track Don't infer the track field when importing converted v0 riq coming from unknown origin commit13adf5b07b
Author: minenice55 <star.elementa@gmail.com> Date: Sun Jun 11 15:52:14 2023 -0400 don't infer track when importing a v0 riq from another program commit9e3e594209
Author: minenice55 <star.elementa@gmail.com> Date: Sun Jun 11 12:12:25 2023 -0400 make base datamodels for special entity reading (#463) * make base datamodels for special entity reading * fix crop stomp breaking when no game switch or remix end is set * fix save shortcut fix loading charts with no music commit1c1c731dd1
Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 23:00:30 2023 -0400 add updater for marching orders turn commit210be54ba3
Merge:67b6658c
af8395fb
Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 22:36:10 2023 -0400 Merge branch 'release_1' into pr/458 commitaf8395fb6a
Merge:81eafec9
b1fab52a
Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 22:30:32 2023 -0400 Merge branch 'master' into release_1 commit81eafec986
Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 22:27:58 2023 -0400 editor fixes (#459) * ditch loading dialog doesn't show up when it's supposed to * format song offset in editor * remove VorbisPlugin * Update Editor.cs commit67b6658cd3
Author: AstrlJelly <bdlawson115@gmail.com> Date: Sat Jun 10 16:55:10 2023 -0400 convert float to double and all that commita4b66367fd
Merge:08a664ba
b1fab52a
Author: AstrlJelly <bdlawson115@gmail.com> Date: Sat Jun 10 16:01:44 2023 -0400 Merge remote-tracking branch 'upstream/master' into MiscAdditions_4 commit08a664ba2a
Merge:faf3fbf9
b7afd697
Author: AstrlJelly <bdlawson115@gmail.com> Date: Sat Jun 10 15:21:22 2023 -0400 Merge remote-tracking branch 'upstream/master' into MiscAdditions_4 commitfaf3fbf97c
Author: AstrlJelly <bdlawson115@gmail.com> Date: Sat Jun 10 15:18:45 2023 -0400 a lot * munchy monk input + mustache fixes * fork lifter and pajama party bopping * meat grinder miss bop fix * cloud monkey Real * marching orders Go! was broken * force march doesn't break when it's too early from a game switch * you can use the March! block without the marching now commitbb2ae74339
Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 15:13:29 2023 -0400 Integration of Jukebox Library (#451) * add Jukebox library todo: - saving / loading of new format - inferrence of unknown data like past versions - move the temporary float casts to proper use of double - make sound related functions take double for timing - inform people that the Jukebox sound player was renamed to SoundByte lol * make sound, input scheduling, and super curve use double precision * successfully load charts * editor works again v1 riqs can be saved and loaded * first tempo and volume markers are unmovable fix loading of charts' easing values * use gsync / freesync * update Jukebox refs to SoundByte * game events use double part 1 Air Rally - Glee Club converted * don't load song if chart load fails * finish conversion of all minigames * remove editor waveform toggle * timeline now respects added song offset length clear cache files on app close prepped notes for dsp sync * update timeline length when offset changed * update to latest Jukebox * make error panel object in global game manager * improve conductor music scheduling * added error message box fix first game events sometimes not playing * Squashed commit of the following: commite782e3a5b4
Merge:5b8cfef1
ce74719c
Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 17 16:40:52 2023 +0000 Merge pull request #478 from evdial/working-dough Working Dough Tweaks commitce74719c1a
Merge:9c61b760
5b8cfef1
Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 17 12:40:06 2023 -0400 Merge branch 'release_1' into pr/478 commit5b8cfef1b0
Author: patata <patataofcourse@gmail.com> Date: Sat Jun 17 17:20:15 2023 +0200 Update issue template to include .riq/.zip info commit9c61b760bb
Author: ev <85412919+evdial@users.noreply.github.com> Date: Thu Jun 15 15:05:07 2023 -0400 assbuns commitae7451e9d3
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Thu Jun 15 20:56:40 2023 +0200 made small idle not crazy commit4c5c95237c
Author: ev <85412919+evdial@users.noreply.github.com> Date: Thu Jun 15 14:33:57 2023 -0400 fsd commit083d916238
Author: ev <85412919+evdial@users.noreply.github.com> Date: Thu Jun 15 14:16:38 2023 -0400 anim commitb3664e01b3
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Thu Jun 15 20:13:11 2023 +0200 Fixed stuff also scaled now yippee commit71e3a0ce6b
Author: ev <85412919+evdial@users.noreply.github.com> Date: Thu Jun 15 13:50:10 2023 -0400 many commit534b06301d
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 21:28:21 2023 -0400 Squashed commit of the following: (#474) commita6ce193ce5
Merge:6105bb4f
9b24ac48
Author: minenice55 <star.elementa@gmail.com> Date: Wed Jun 14 01:23:31 2023 +0000 Merge pull request #473 from minenice55/easings-fix Enum Parsing Fix commit9b24ac4838
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 21:21:13 2023 -0400 fix all parsing of enums, removed the "special case" for eases update to latest Jukebox commit6105bb4f64
Merge:576b4a00
8df235a8
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 21:39:15 2023 +0000 Merge pull request #469 from minenice55/jukebox-update Jukebox Package Update commit576b4a0017
Merge:99804457
10f8fa7f
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 21:39:08 2023 +0000 Merge pull request #458 from AstrlJelly/MiscAdditions_4 Bug Fixes + Feature Additions commit10f8fa7f5a
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 17:38:24 2023 -0400 add "updater" for the old marching entity commit118cd4993d
Merge:1c1c731d
99804457
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 17:22:01 2023 -0400 Merge branch 'release_1' into pr/458 commit8df235a85b
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 16:55:02 2023 -0400 let play mode start if no song file is loaded fix issue with loading large audio files commit9980445723
Merge:aff1e3d8
2f595824
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 18:32:40 2023 +0000 Merge pull request #471 from Rapandrasmus/FixWorkingDoughCurve Fixed weird curve stuff on game switch in working dough commit2f59582460
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 19:24:13 2023 +0200 Fixed weird curve stuff on game switch in working dough commitaff1e3d889
Merge:b40ec128
c9accfa5
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 16:09:21 2023 +0000 Merge pull request #470 from Rapandrasmus/WorkingDoughFixes Fixed small balls not working in working dough commitc9accfa52d
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 18:07:13 2023 +0200 Fixed small balls not working in working dough commitb40ec128a5
Merge:9f953d50
95c9b346
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 14:56:58 2023 +0000 Merge pull request #467 from Rapandrasmus/WorkingDoughRework Working Dough rework commit95c9b34695
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 16:13:08 2023 +0200 modernised rockers pass turn commit0debf55391
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 16:03:08 2023 +0200 Rhythm tweezers pass turn now works like working dough commit6eac745eae
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 15:51:35 2023 +0200 gandw on balls has been added commit349867d983
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 14:59:56 2023 +0200 Proper inactive handling now commitd469c6c3fa
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 13:52:15 2023 +0200 OnSpawnBall reimplemented commitdd290b3331
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 13:37:09 2023 +0200 new sounds commit757e1c2c5e
Author: minenice55 <star.elementa@gmail.com> Date: Mon Jun 12 17:18:37 2023 -0400 update Jukebox to latest version fixes for inferred entity loading commit8ce1d8276b
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 21:36:57 2023 +0200 ball transporter anims for pass turn commitaf0d9bae19
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 20:38:48 2023 +0200 working dough converted, need to fix eveerything though commitdb21d51673
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 18:36:41 2023 +0200 Converted everything to new curves and made playerballs handle themselves input-wise commit41157a038c
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 14:04:32 2023 +0200 Some new curves commit7d754f5706
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 12:03:21 2023 +0200 Rockers can do it too now commitc196947251
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 11:58:31 2023 +0200 You can now place inputs on top of pass turn for rhythm tweezers commit9f953d505f
Merge:2a8d8d6f
df120f08
Author: minenice55 <star.elementa@gmail.com> Date: Sun Jun 11 15:55:40 2023 -0400 Merge branch 'master' into release_1 commit2a8d8d6fd2
Merge:9e3e5942
13adf5b0
Author: minenice55 <star.elementa@gmail.com> Date: Sun Jun 11 19:53:47 2023 +0000 Merge pull request #465 from minenice55/dont_infer_track Don't infer the track field when importing converted v0 riq coming from unknown origin commit13adf5b07b
Author: minenice55 <star.elementa@gmail.com> Date: Sun Jun 11 15:52:14 2023 -0400 don't infer track when importing a v0 riq from another program commit9e3e594209
Author: minenice55 <star.elementa@gmail.com> Date: Sun Jun 11 12:12:25 2023 -0400 make base datamodels for special entity reading (#463) * make base datamodels for special entity reading * fix crop stomp breaking when no game switch or remix end is set * fix save shortcut fix loading charts with no music commit1c1c731dd1
Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 23:00:30 2023 -0400 add updater for marching orders turn commit210be54ba3
Merge:67b6658c
af8395fb
Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 22:36:10 2023 -0400 Merge branch 'release_1' into pr/458 commitaf8395fb6a
Merge:81eafec9
b1fab52a
Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 22:30:32 2023 -0400 Merge branch 'master' into release_1 commit81eafec986
Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 22:27:58 2023 -0400 editor fixes (#459) * ditch loading dialog doesn't show up when it's supposed to * format song offset in editor * remove VorbisPlugin * Update Editor.cs commit67b6658cd3
Author: AstrlJelly <bdlawson115@gmail.com> Date: Sat Jun 10 16:55:10 2023 -0400 convert float to double and all that commita4b66367fd
Merge:08a664ba
b1fab52a
Author: AstrlJelly <bdlawson115@gmail.com> Date: Sat Jun 10 16:01:44 2023 -0400 Merge remote-tracking branch 'upstream/master' into MiscAdditions_4 commit08a664ba2a
Merge:faf3fbf9
b7afd697
Author: AstrlJelly <bdlawson115@gmail.com> Date: Sat Jun 10 15:21:22 2023 -0400 Merge remote-tracking branch 'upstream/master' into MiscAdditions_4 commitfaf3fbf97c
Author: AstrlJelly <bdlawson115@gmail.com> Date: Sat Jun 10 15:18:45 2023 -0400 a lot * munchy monk input + mustache fixes * fork lifter and pajama party bopping * meat grinder miss bop fix * cloud monkey Real * marching orders Go! was broken * force march doesn't break when it's too early from a game switch * you can use the March! block without the marching now commitbb2ae74339
Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 15:13:29 2023 -0400 Integration of Jukebox Library (#451) * add Jukebox library todo: - saving / loading of new format - inferrence of unknown data like past versions - move the temporary float casts to proper use of double - make sound related functions take double for timing - inform people that the Jukebox sound player was renamed to SoundByte lol * make sound, input scheduling, and super curve use double precision * successfully load charts * editor works again v1 riqs can be saved and loaded * first tempo and volume markers are unmovable fix loading of charts' easing values * use gsync / freesync * update Jukebox refs to SoundByte * game events use double part 1 Air Rally - Glee Club converted * don't load song if chart load fails * finish conversion of all minigames * remove editor waveform toggle * timeline now respects added song offset length clear cache files on app close prepped notes for dsp sync * update timeline length when offset changed * update to latest Jukebox * make error panel object in global game manager * improve conductor music scheduling * added error message box fix first game events sometimes not playing commita6ce193ce5
Merge:6105bb4f
9b24ac48
Author: minenice55 <star.elementa@gmail.com> Date: Wed Jun 14 01:23:31 2023 +0000 Merge pull request #473 from minenice55/easings-fix Enum Parsing Fix commit9b24ac4838
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 21:21:13 2023 -0400 fix all parsing of enums, removed the "special case" for eases update to latest Jukebox commit6105bb4f64
Merge:576b4a00
8df235a8
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 21:39:15 2023 +0000 Merge pull request #469 from minenice55/jukebox-update Jukebox Package Update commit576b4a0017
Merge:99804457
10f8fa7f
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 21:39:08 2023 +0000 Merge pull request #458 from AstrlJelly/MiscAdditions_4 Bug Fixes + Feature Additions commit10f8fa7f5a
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 17:38:24 2023 -0400 add "updater" for the old marching entity commit118cd4993d
Merge:1c1c731d
99804457
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 17:22:01 2023 -0400 Merge branch 'release_1' into pr/458 commit8df235a85b
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 16:55:02 2023 -0400 let play mode start if no song file is loaded fix issue with loading large audio files commit9980445723
Merge:aff1e3d8
2f595824
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 18:32:40 2023 +0000 Merge pull request #471 from Rapandrasmus/FixWorkingDoughCurve Fixed weird curve stuff on game switch in working dough commit2f59582460
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 19:24:13 2023 +0200 Fixed weird curve stuff on game switch in working dough commitaff1e3d889
Merge:b40ec128
c9accfa5
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 16:09:21 2023 +0000 Merge pull request #470 from Rapandrasmus/WorkingDoughFixes Fixed small balls not working in working dough commitc9accfa52d
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 18:07:13 2023 +0200 Fixed small balls not working in working dough commitb40ec128a5
Merge:9f953d50
95c9b346
Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 14:56:58 2023 +0000 Merge pull request #467 from Rapandrasmus/WorkingDoughRework Working Dough rework commit95c9b34695
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 16:13:08 2023 +0200 modernised rockers pass turn commit0debf55391
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 16:03:08 2023 +0200 Rhythm tweezers pass turn now works like working dough commit6eac745eae
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 15:51:35 2023 +0200 gandw on balls has been added commit349867d983
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 14:59:56 2023 +0200 Proper inactive handling now commitd469c6c3fa
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 13:52:15 2023 +0200 OnSpawnBall reimplemented commitdd290b3331
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 13:37:09 2023 +0200 new sounds commit757e1c2c5e
Author: minenice55 <star.elementa@gmail.com> Date: Mon Jun 12 17:18:37 2023 -0400 update Jukebox to latest version fixes for inferred entity loading commit8ce1d8276b
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 21:36:57 2023 +0200 ball transporter anims for pass turn commitaf0d9bae19
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 20:38:48 2023 +0200 working dough converted, need to fix eveerything though commitdb21d51673
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 18:36:41 2023 +0200 Converted everything to new curves and made playerballs handle themselves input-wise commit41157a038c
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 14:04:32 2023 +0200 Some new curves commit7d754f5706
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 12:03:21 2023 +0200 Rockers can do it too now commitc196947251
Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 11:58:31 2023 +0200 You can now place inputs on top of pass turn for rhythm tweezers commit9f953d505f
Merge:2a8d8d6f
df120f08
Author: minenice55 <star.elementa@gmail.com> Date: Sun Jun 11 15:55:40 2023 -0400 Merge branch 'master' into release_1 commit2a8d8d6fd2
Merge:9e3e5942
13adf5b0
Author: minenice55 <star.elementa@gmail.com> Date: Sun Jun 11 19:53:47 2023 +0000 Merge pull request #465 from minenice55/dont_infer_track Don't infer the track field when importing converted v0 riq coming from unknown origin commit13adf5b07b
Author: minenice55 <star.elementa@gmail.com> Date: Sun Jun 11 15:52:14 2023 -0400 don't infer track when importing a v0 riq from another program commit9e3e594209
Author: minenice55 <star.elementa@gmail.com> Date: Sun Jun 11 12:12:25 2023 -0400 make base datamodels for special entity reading (#463) * make base datamodels for special entity reading * fix crop stomp breaking when no game switch or remix end is set * fix save shortcut fix loading charts with no music commit1c1c731dd1
Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 23:00:30 2023 -0400 add updater for marching orders turn commit210be54ba3
Merge:67b6658c
af8395fb
Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 22:36:10 2023 -0400 Merge branch 'release_1' into pr/458 commitaf8395fb6a
Merge:81eafec9
b1fab52a
Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 22:30:32 2023 -0400 Merge branch 'master' into release_1 commit81eafec986
Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 22:27:58 2023 -0400 editor fixes (#459) * ditch loading dialog doesn't show up when it's supposed to * format song offset in editor * remove VorbisPlugin * Update Editor.cs commit67b6658cd3
Author: AstrlJelly <bdlawson115@gmail.com> Date: Sat Jun 10 16:55:10 2023 -0400 convert float to double and all that commita4b66367fd
Merge:08a664ba
b1fab52a
Author: AstrlJelly <bdlawson115@gmail.com> Date: Sat Jun 10 16:01:44 2023 -0400 Merge remote-tracking branch 'upstream/master' into MiscAdditions_4 commit08a664ba2a
Merge:faf3fbf9
b7afd697
Author: AstrlJelly <bdlawson115@gmail.com> Date: Sat Jun 10 15:21:22 2023 -0400 Merge remote-tracking branch 'upstream/master' into MiscAdditions_4 commitfaf3fbf97c
Author: AstrlJelly <bdlawson115@gmail.com> Date: Sat Jun 10 15:18:45 2023 -0400 a lot * munchy monk input + mustache fixes * fork lifter and pajama party bopping * meat grinder miss bop fix * cloud monkey Real * marching orders Go! was broken * force march doesn't break when it's too early from a game switch * you can use the March! block without the marching now commitbb2ae74339
Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 15:13:29 2023 -0400 Integration of Jukebox Library (#451) * add Jukebox library todo: - saving / loading of new format - inferrence of unknown data like past versions - move the temporary float casts to proper use of double - make sound related functions take double for timing - inform people that the Jukebox sound player was renamed to SoundByte lol * make sound, input scheduling, and super curve use double precision * successfully load charts * editor works again v1 riqs can be saved and loaded * first tempo and volume markers are unmovable fix loading of charts' easing values * use gsync / freesync * update Jukebox refs to SoundByte * game events use double part 1 Air Rally - Glee Club converted * don't load song if chart load fails * finish conversion of all minigames * remove editor waveform toggle * timeline now respects added song offset length clear cache files on app close prepped notes for dsp sync * update timeline length when offset changed * update to latest Jukebox * make error panel object in global game manager * improve conductor music scheduling * added error message box fix first game events sometimes not playing * Editor Additions (#479) * favoriting and pick block favoriting needs to not break after previewing (maybe make it persistent in the settings file?) pick block needs to pick the icon, too. and preferably scroll to it as well * final star anim + automatic icon game switching before i make any more changes im making a checkpoint here cuz i know it works * i want to add a way to specify which event SwitchGame() will switch to (because that's a cool feature for pick block) * i'll have to figure out how to auto scroll to the game when the icon is selected * the star now fully works, even between preview switches 👍 * fix the rest of the stuff the event name gets colored correctly and hidden games are skipped over, but still loaded. also i built mm ass buns * tweaks + zoom and sorting this stuff will be in the pr desc so it doesn't matter * oop one more thing * icons look better now :D mipmaps to the rescue * double date fix * Merge pull request #486 from RHeavenStudio/actions_rework Rework GitHub Actions and build script * add ab meta to gitignore (#489) * Sound Scheduling Improvements (#491) * port conductor adjustments * scheduled sounds prebake * allow aiff files to be imported add vbr mp3 warning to readme * improve wording * CNR API Internal Rework (#488) * Prep stuff * Tweezers now spawn in * Started converting tweezers * I hate <1 beat intervals * Actually nvm * fixed a bug * You can chain intervals now, stack them if you really wanted * Pass turn checks if crhandlerinstance exists * Fixed hairs being deleted by onion switch * Rockers rerewritten * working dough rerewritten * CNR API Internal Rework (#488) * Prep stuff * Tweezers now spawn in * Started converting tweezers * I hate <1 beat intervals * Actually nvm * fixed a bug * You can chain intervals now, stack them if you really wanted * Pass turn checks if crhandlerinstance exists * Fixed hairs being deleted by onion switch * Rockers rerewritten * working dough rerewritten * Games fixes/reworks patch (#501) * ghosts are scaled now * Lockstep fully reworked * mr. bach has been implemented * Space dance fixes * oops * Tap trial rework part 1 * tap trial rework part 2 * oopsie * Gramps Talk Update * Space Dance Voice Offsets * Giraffe done! (Except miss anim) * bg is not showing up for some reason * bg not rendering fixed + giraffe fixed * scrolling done * fixed space dance and space soccer bg scrolls * fixed rockers bugs * adjustment * fixed el inaccuracies * particle fix * changed pitch and volume of monkey tap * miss anim * megamix face for girl * Proper miss anim implementation * Added force stepping event * miss anim fix --------- Co-authored-by: saladplainzone <chocolate2890mail@gmail.com> Co-authored-by: ev <85412919+evdial@users.noreply.github.com> * In CheerReaders.cs, quotation marks were aptly added, and references to the girls were more-so neutralized. Consider this my cheer. * revert capitalization and quotations while keeping grammar changes --------- Co-authored-by: minenice55 <star.elementa@gmail.com> Co-authored-by: patata <patataofcourse@gmail.com> Co-authored-by: AstrlJelly <bdlawson115@gmail.com> Co-authored-by: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Co-authored-by: saladplainzone <chocolate2890mail@gmail.com> Co-authored-by: ev <85412919+evdial@users.noreply.github.com> * oops * add manually triggering build action to workflows (#507) * don't crash if origin is undefined (#513) reword the unknown origin message to be less scary * test action to free space (#516) * maybe not this * clear out unused tools before run * we do need a swap file * Mr. Upbeat Re-Re-Rework (#525) * so much * reworked everything (AGAIN.) -everything just uses recursive methods and beatactions, and only uses the update loop for inactive queuing * count-ins -need hq 4 sound effect, kitties doesn't have the og :( * mr. downbeat rere-revived (unfortunately enough.) * huge change to how stepping works, to make it so you can't step over it the wrong way, and so that missing looks good * added missing miss anim, which happens in the same way as the og * added a check on game switch to use the last bg change/blip color block's attributes -i think i might add these to other games; it should make the process of remixing more intuitive and fun, even if it's a small change currently all i'm missing is blip jank fix. but im not staying up another hour for that lol * letter/blip jank fixed + force stepping * instead of being a separate animator, the letter is instead set to have a scale of (1, 1, 1) in the update loop, so that no graphical bugs happen even when the scale is changed. * hopefully this new system is a lot less janky, but if bugs do still come up they'll be a lot easier to fix now * make mac build script put streamingassets in the right place * Release game's render texture before resizing it (#548) * update package cache * remove unused windows forms reference(??) * remove unneeded using directives * update Jukebox * stub out fork lifter bob * Child/BG/Objects done guhhh * Oh my god samurai slice looks good now! except unstep * fix unstep add notes for splat * Add Splat Anims/Sound * splat * properly snap debris to hands * denied the high school prep squad from yelling so hard it starts to destroy the universe * Couple audio fixes - sneaky spirits laugh - tram n pauline new sounds and panning * octo machine release sound trim * goodened lockstep voice offsets * Ringside Sound Overhaul * Munchy Monk Offset fix * i did an oopsy * Launch Party Parallax * new icons * misc samurai fixes - weird hand rotation - obj size - melon color * Fixed Hand i fixed it * Rebalancing Lockstep Lowered Space Soccer Lowered Tap Troupe Lowered Quiz Show Raised Tram Pauline Raised Toss Boys Raised See Saw Lowered Glee Club Lowered Munchy Monk Lowered TOTC Lowered Somen Lowered Contact Lowered Mr Upbeat Raised * Glee Club Wave Loop Fix fuuuuck dude haaaaahahahaaa --------- Co-authored-by: minenice55 <star.elementa@gmail.com> Co-authored-by: patata <patataofcourse@gmail.com> Co-authored-by: AstrlJelly <bdlawson115@gmail.com> Co-authored-by: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Co-authored-by: ev <85412919+evdial@users.noreply.github.com> Co-authored-by: Xylon <40894547+scriptorluminary@users.noreply.github.com> Co-authored-by: Braedon Lewis <braedonwilcox@gmail.com>
812 lines
32 KiB
C#
812 lines
32 KiB
C#
/* I do not know crap about Unity or C#
|
|
Almost none of this code is mine, but it's all fair game when the game you're stealing from
|
|
borrowed from other games */
|
|
//Don't worry Raffy everyone starts somewhere - Rasmus
|
|
|
|
using HeavenStudio.Util;
|
|
using Jukebox;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using UnityEngine;
|
|
using UnityEngine.UI;
|
|
|
|
namespace HeavenStudio.Games.Loaders
|
|
{
|
|
using static Minigames;
|
|
public static class NtrBackbeatLoader
|
|
{
|
|
public static Minigame AddGame(EventCaller eventCaller)
|
|
{
|
|
return new Minigame("lockstep", "Lockstep", "f0338d", false, false, new List<GameAction>()
|
|
{
|
|
new GameAction("bop", "Bop")
|
|
{
|
|
function = delegate { var e = eventCaller.currentEntity; Lockstep.instance.Bop(e.beat, e.length, e["toggle"], e["toggle2"]); },
|
|
resizable = true,
|
|
parameters = new List<Param>()
|
|
{
|
|
new Param("toggle", true, "Bop", "Toggle if the stepswitchers should bop for the duration of this event."),
|
|
new Param("toggle2", false, "Bop (Auto)", "Toggle if the stepswitchers should automatically bop until another Bop event is reached."),
|
|
},
|
|
},
|
|
new GameAction("stepping", "Stepping")
|
|
{
|
|
preFunction = delegate {var e = eventCaller.currentEntity; Lockstep.Marching(e.beat, e["sound"], e["amount"], e["visual"]);},
|
|
parameters = new List<Param>()
|
|
{
|
|
new Param("sound", false, "Voice", "Toggle if voice sounds should play automatically when stepping starts. It will automatically switch between \"Hai!\" and \"Ho!\" if it is on or off beat.", new List<Param.CollapseParam>()
|
|
{
|
|
new Param.CollapseParam((x, _) => (bool)x, new string[] { "amount" })
|
|
}),
|
|
new Param("amount", new EntityTypes.Integer(1, 50, 1), "Amount", "Set how many sounds will play."),
|
|
new Param("visual", true, "Background Visual", "Toggle if the background will automatically flip depending on if it's on or off beat.")
|
|
},
|
|
preFunctionLength = 1
|
|
},
|
|
new GameAction("offbeatSwitch", "Switch to Offbeat")
|
|
{
|
|
preFunction = delegate { var e = eventCaller.currentEntity; Lockstep.OffbeatSwitchSound(e.beat, e["ho"], e["sound"]); },
|
|
defaultLength = 4.5f,
|
|
parameters = new List<Param>()
|
|
{
|
|
new Param("sound", true, "Sound Cue", "Toggle if the \"Hai! Hai! Hai! Ha-Ha!\" sound should be played."),
|
|
new Param("ho", true, "End Sounds", "Toggle if the \"Ho! Ho! Ho! Ho!\" sound should be played."),
|
|
new Param("visual", true, "Background Visual", "Toggle if the background will automatically flip depending on if it's on or off beat.")
|
|
}
|
|
},
|
|
new GameAction("onbeatSwitch", "Switch to Onbeat")
|
|
{
|
|
preFunction = delegate { var e = eventCaller.currentEntity; Lockstep.OnbeatSwitchSound(e.beat, e["hai"], e["sound"]); },
|
|
defaultLength = 3f,
|
|
parameters = new List<Param>()
|
|
{
|
|
new Param("sound", true, "Sound Cue", "Toggle if the \"Mm-ha! Mm-ha! Hai!\" sound should be played."),
|
|
new Param("hai", new EntityTypes.Integer(0, 100, 1), "Set how many \"Hai!\" sounds will play."),
|
|
new Param("visual", true, "Background Visual", "Toggle if the background will automatically flip depending on if it's on or off beat.")
|
|
}
|
|
},
|
|
new GameAction("hai", "Hai")
|
|
{
|
|
preFunction = delegate { Lockstep.HaiSound(eventCaller.currentEntity.beat); }
|
|
},
|
|
new GameAction("ho", "Ho")
|
|
{
|
|
preFunction = delegate { Lockstep.HoSound(eventCaller.currentEntity.beat); }
|
|
},
|
|
new GameAction("set colours", "Set Colors")
|
|
{
|
|
function = delegate {var e = eventCaller.currentEntity; Lockstep.instance.SetBackgroundColours(e["colorA"], e["colorB"], e["objColA"], e["objColB"], e["objColC"]); },
|
|
parameters = new List<Param>()
|
|
{
|
|
new Param("colorA", Lockstep.defaultBGColorOn, "Background Onbeat", "Set the color that appears for the onbeat."),
|
|
new Param("colorB", Lockstep.defaultBGColorOff, "Background Offbeat", "Set the color that appears for the offbeat."),
|
|
new Param("objColA", Lockstep.stepperOut, "Stepper Outline", "Set the color used for the outline of the stepswitchers."),
|
|
new Param("objColB", Lockstep.stepperDark, "Stepper Dark", "Set the color that appears for the dark side of the stepwitchers."),
|
|
new Param("objColC", Lockstep.stepperLight, "Stepper Light", "Set the color that appears for the light side of the stepwitchers."),
|
|
},
|
|
defaultLength = 0.5f,
|
|
},
|
|
new GameAction("zoom", "Zoom Camera")
|
|
{
|
|
function = delegate { Lockstep.instance.SetZoom(eventCaller.currentEntity["zoom"]); },
|
|
parameters = new List<Param>()
|
|
{
|
|
new Param("zoom", Lockstep.ZoomPresets.Regular, "Zoom Level", "Set the level to zoom to.")
|
|
}
|
|
},
|
|
new GameAction("bach", "Show Bach")
|
|
{
|
|
defaultLength = 4,
|
|
resizable = true,
|
|
},
|
|
new GameAction("marching", "Force Stepping")
|
|
{
|
|
preFunction = delegate {var e = eventCaller.currentEntity; Lockstep.Marching(e.beat, e["sound"], e["amount"], e["visual"], true, e.length);},
|
|
parameters = new List<Param>()
|
|
{
|
|
new Param("sound", false, "Voice", "Toggle if voice sounds should play automatically when stepping starts. It will automatically switch between \"Hai!\" and \"Ho!\" if it is on or off beat.", new List<Param.CollapseParam>()
|
|
{
|
|
new Param.CollapseParam((x, _) => (bool)x, new string[] { "amount" })
|
|
}),
|
|
new Param("amount", new EntityTypes.Integer(1, 50, 1), "Amount", "Set how many sounds will play."),
|
|
new Param("visual", true, "Background Visual", "Toggle if the background will automatically flip depending on if it's on or off beat."),
|
|
},
|
|
preFunctionLength = 1,
|
|
resizable = true,
|
|
defaultLength = 4
|
|
}
|
|
},
|
|
new List<string>() {"ntr", "keep"},
|
|
"ntrbackbeat", "en",
|
|
new List<string>() {}
|
|
);
|
|
|
|
}
|
|
}
|
|
}
|
|
|
|
namespace HeavenStudio.Games
|
|
{
|
|
// using Scripts_Lockstep;
|
|
public class Lockstep : Minigame
|
|
{
|
|
private static Color _defaultBGColorOn;
|
|
public static Color defaultBGColorOn
|
|
{
|
|
get
|
|
{
|
|
ColorUtility.TryParseHtmlString("#f0338d", out _defaultBGColorOn);
|
|
return _defaultBGColorOn;
|
|
}
|
|
}
|
|
|
|
private static Color _defaultBGColorOff;
|
|
public static Color defaultBGColorOff
|
|
{
|
|
get
|
|
{
|
|
ColorUtility.TryParseHtmlString("#BC318B", out _defaultBGColorOff);
|
|
return _defaultBGColorOff;
|
|
}
|
|
}
|
|
|
|
private static Color _stepperDark;
|
|
public static Color stepperDark
|
|
{
|
|
get
|
|
{
|
|
ColorUtility.TryParseHtmlString("#737373", out _stepperDark);
|
|
return _stepperDark;
|
|
}
|
|
}
|
|
|
|
private static Color _stepperLight;
|
|
public static Color stepperLight
|
|
{
|
|
get
|
|
{
|
|
ColorUtility.TryParseHtmlString("#FFFFFF", out _stepperLight);
|
|
return _stepperLight;
|
|
}
|
|
}
|
|
|
|
private static Color _stepperOut;
|
|
public static Color stepperOut
|
|
{
|
|
get
|
|
{
|
|
ColorUtility.TryParseHtmlString("#9A2760", out _stepperOut);
|
|
return _stepperOut;
|
|
}
|
|
}
|
|
|
|
public Color currentBGOnColor;
|
|
public Color currentBGOffColor;
|
|
|
|
[Header("Components")]
|
|
[SerializeField] Animator stepswitcherPlayer;
|
|
[SerializeField] Animator stepswitcherLeft;
|
|
[SerializeField] Animator stepswitcherRight;
|
|
[SerializeField] Animator bach;
|
|
|
|
// master stepper dictates what sprite the slave steppers use
|
|
[SerializeField] Animator masterStepperAnim;
|
|
[SerializeField] SpriteRenderer masterStepperSprite;
|
|
|
|
// slave steppers copy the sprite of the master stepper
|
|
[SerializeField] SpriteRenderer[] slaveSteppers;
|
|
|
|
// rendertextures update when the slave steppers change sprites
|
|
[SerializeField] Vector2 rtSize;
|
|
[SerializeField] Camera cameraNear1, cameraNear2, cameraDV;
|
|
[SerializeField] RawImage topT, topN, bottomL, bottomC, bottomR, bottomN;
|
|
|
|
[SerializeField] SpriteRenderer background;
|
|
[SerializeField] Material stepperMaterial;
|
|
|
|
[Header("Properties")]
|
|
static List<QueuedMarch> queuedInputs = new();
|
|
RenderTexture[] renderTextures;
|
|
Sprite masterSprite;
|
|
HowMissed currentMissStage;
|
|
bool lessSteppers = false;
|
|
public enum HowMissed
|
|
{
|
|
NotMissed = 0,
|
|
MissedOff = 1,
|
|
MissedOn = 2
|
|
}
|
|
bool offColorActive;
|
|
bool goBop;
|
|
public GameEvent bop = new GameEvent();
|
|
List<double> switches = new();
|
|
private List<RiqEntity> bachEvents = new();
|
|
|
|
public static Lockstep instance;
|
|
|
|
public enum ZoomPresets
|
|
{
|
|
Regular,
|
|
NotThatFar,
|
|
Far,
|
|
VeryFar,
|
|
ExtremelyFar
|
|
}
|
|
|
|
void Awake()
|
|
{
|
|
instance = this;
|
|
currentBGOnColor = defaultBGColorOn;
|
|
currentBGOffColor = defaultBGColorOff;
|
|
var switchEvents = EventCaller.GetAllInGameManagerList("lockstep", new string[] { "onbeatSwitch", "offbeatSwitch" });
|
|
|
|
foreach (var switchEvent in switchEvents)
|
|
{
|
|
switches.Add(switchEvent.beat + switchEvent.length - 1);
|
|
}
|
|
|
|
bachEvents = EventCaller.GetAllInGameManagerList("lockstep", new string[] { "bach" });
|
|
|
|
renderTextures = new RenderTexture[3];
|
|
renderTextures[0] = new RenderTexture((int)rtSize.x, (int)rtSize.y, 24, RenderTextureFormat.ARGB32)
|
|
{
|
|
wrapMode = TextureWrapMode.Repeat,
|
|
};
|
|
renderTextures[1] = new RenderTexture((int)rtSize.x, (int)rtSize.y, 24, RenderTextureFormat.ARGB32)
|
|
{
|
|
wrapMode = TextureWrapMode.Repeat,
|
|
};
|
|
renderTextures[2] = new RenderTexture((int)rtSize.x, (int)rtSize.y, 24, RenderTextureFormat.ARGB32)
|
|
{
|
|
wrapMode = TextureWrapMode.Repeat,
|
|
};
|
|
|
|
cameraNear1.targetTexture = renderTextures[0];
|
|
cameraNear2.targetTexture = renderTextures[1];
|
|
cameraDV.targetTexture = renderTextures[2];
|
|
|
|
topT.texture = renderTextures[2];
|
|
topN.texture = renderTextures[0];
|
|
bottomL.texture = renderTextures[2];
|
|
bottomC.texture = renderTextures[2];
|
|
bottomR.texture = renderTextures[2];
|
|
bottomN.texture = renderTextures[1];
|
|
}
|
|
|
|
void OnDestroy()
|
|
{
|
|
foreach (var rt in renderTextures)
|
|
{
|
|
rt.Release();
|
|
}
|
|
}
|
|
|
|
private static bool ForceStepOnBeat(double beat)
|
|
{
|
|
return EventCaller.GetAllInGameManagerList("lockstep", new string[] { "marching" }).Find(x => beat >= x.beat && beat < x.beat + x.length) != null;
|
|
}
|
|
|
|
private void PersistColors(double beat)
|
|
{
|
|
var allEventsBeforeBeat = EventCaller.GetAllInGameManagerList("lockstep", new string[] { "" }).FindAll(x => x.beat < beat);
|
|
if (allEventsBeforeBeat.Count > 0)
|
|
{
|
|
allEventsBeforeBeat.Sort((x, y) => x.beat.CompareTo(y.beat));
|
|
var lastEvent = allEventsBeforeBeat[^1];
|
|
SetBackgroundColours(lastEvent["colorA"], lastEvent["colorB"], lastEvent["objColA"], lastEvent["objColB"], lastEvent["objColC"]);
|
|
}
|
|
}
|
|
|
|
private bool BachOnBeat(double beat)
|
|
{
|
|
return bachEvents.Find(x => beat >= x.beat && beat < x.beat + x.length) != null;
|
|
}
|
|
public override void OnGameSwitch(double beat)
|
|
{
|
|
QueueSwitchBGs(beat);
|
|
PersistColors(beat);
|
|
}
|
|
|
|
public override void OnPlay(double beat)
|
|
{
|
|
QueueSwitchBGs(beat);
|
|
PersistColors(beat);
|
|
}
|
|
|
|
private void QueueSwitchBGs(double beat)
|
|
{
|
|
double nextGameSwitchBeat = double.MaxValue;
|
|
List<RiqEntity> allEnds = EventCaller.GetAllInGameManagerList("gameManager", new string[] { "switchGame", "end" }).FindAll(x => x.beat > beat);
|
|
if (allEnds.Count > 0)
|
|
{
|
|
nextGameSwitchBeat = allEnds[0].beat;
|
|
}
|
|
|
|
var switchEventsOn = EventCaller.GetAllInGameManagerList("lockstep", new string[] { "onbeatSwitch" });
|
|
foreach (var on in switchEventsOn)
|
|
{
|
|
if (on.beat >= nextGameSwitchBeat) continue;
|
|
OnbeatSwitch(on.beat, beat, on["visual"]);
|
|
}
|
|
|
|
var switchEventsOff = EventCaller.GetAllInGameManagerList("lockstep", new string[] { "offbeatSwitch" });
|
|
foreach (var off in switchEventsOff)
|
|
{
|
|
if (off.beat >= nextGameSwitchBeat) continue;
|
|
OffbeatSwitch(off.beat, beat, off["visual"]);
|
|
}
|
|
}
|
|
|
|
void Start() {
|
|
stepperMaterial.SetColor("_ColorAlpha", stepperOut);
|
|
stepperMaterial.SetColor("_ColorBravo", stepperDark);
|
|
stepperMaterial.SetColor("_ColorDelta", stepperLight);
|
|
|
|
masterSprite = masterStepperSprite.sprite;
|
|
stepswitcherLeft.gameObject.SetActive(lessSteppers);
|
|
stepswitcherRight.gameObject.SetActive(lessSteppers);
|
|
masterStepperAnim.gameObject.SetActive(!lessSteppers);
|
|
|
|
UpdateAndRenderSlaves();
|
|
|
|
cameraNear1.Render();
|
|
cameraNear2.Render();
|
|
cameraDV.Render();
|
|
}
|
|
|
|
void UpdateAndRenderSlaves()
|
|
{
|
|
foreach (var stepper in slaveSteppers)
|
|
{
|
|
stepper.sprite = masterSprite;
|
|
}
|
|
}
|
|
|
|
void PlayStepperAnim(string animName, bool player, float timescale = 1f, float startpos = 0f, int layer = -1)
|
|
{
|
|
if (player) stepswitcherPlayer.DoScaledAnimationAsync(animName, timescale, startpos, layer);
|
|
if (lessSteppers)
|
|
{
|
|
stepswitcherLeft.DoScaledAnimationAsync(animName, timescale, startpos, layer);
|
|
stepswitcherRight.DoScaledAnimationAsync(animName, timescale, startpos, layer);
|
|
}
|
|
else
|
|
{
|
|
masterStepperAnim.DoScaledAnimationAsync(animName, timescale, startpos, layer);
|
|
}
|
|
}
|
|
|
|
public override void OnBeatPulse(double beat)
|
|
{
|
|
if (goBop)
|
|
{
|
|
PlayStepperAnim("Bop", true, 0.5f);
|
|
}
|
|
}
|
|
|
|
private void Update()
|
|
{
|
|
var cond = Conductor.instance;
|
|
if (cond.isPlaying && !cond.isPaused)
|
|
{
|
|
if (queuedInputs.Count > 0)
|
|
{
|
|
foreach (var input in queuedInputs)
|
|
{
|
|
if (input.force)
|
|
{
|
|
ForceMarching(input.beat, input.length, input.sound, input.amount, input.visual);
|
|
}
|
|
else
|
|
{
|
|
StartMarching(input.beat, input.sound, input.amount, input.visual);
|
|
}
|
|
}
|
|
queuedInputs.Clear();
|
|
}
|
|
if (PlayerInput.GetIsAction(InputAction_BasicPress) && !IsExpectingInputNow(InputAction_BasicPress))
|
|
{
|
|
currentMissStage = HowMissed.NotMissed;
|
|
double beatAnimCheck = cond.songPositionInBeatsAsDouble - 0.25;
|
|
if (beatAnimCheck % 1.0 >= 0.5)
|
|
{
|
|
stepswitcherPlayer.DoScaledAnimationAsync("OnbeatMarch", 0.5f);
|
|
}
|
|
else
|
|
{
|
|
stepswitcherPlayer.DoScaledAnimationAsync("OffbeatMarch", 0.5f);
|
|
}
|
|
SoundByte.PlayOneShot("miss");
|
|
ScoreMiss();
|
|
}
|
|
}
|
|
}
|
|
|
|
private void LateUpdate()
|
|
{
|
|
if (masterSprite != masterStepperSprite.sprite)
|
|
{
|
|
masterSprite = masterStepperSprite.sprite;
|
|
UpdateAndRenderSlaves();
|
|
}
|
|
}
|
|
|
|
public void SetZoom(int zoom)
|
|
{
|
|
GameCamera.AdditionalPosition = new Vector3(0, 0, (ZoomPresets)zoom switch
|
|
{
|
|
ZoomPresets.Regular => 0,
|
|
ZoomPresets.NotThatFar => -4.5f,
|
|
ZoomPresets.Far => -11,
|
|
ZoomPresets.VeryFar => -26,
|
|
ZoomPresets.ExtremelyFar => -63,
|
|
_ => throw new System.NotImplementedException()
|
|
});
|
|
}
|
|
|
|
public void Bop(double beat, float length, bool shouldBop, bool autoBop)
|
|
{
|
|
goBop = autoBop;
|
|
if (shouldBop)
|
|
{
|
|
for (int i = 0; i < length; i++)
|
|
{
|
|
BeatAction.New(instance, new List<BeatAction.Action>()
|
|
{
|
|
new BeatAction.Action(beat + i, delegate
|
|
{
|
|
PlayStepperAnim("Bop", true, 0.5f);
|
|
})
|
|
});
|
|
}
|
|
}
|
|
}
|
|
|
|
public static void HaiSound(double beat)
|
|
{
|
|
SoundByte.PlayOneShot("games/lockstep/hai", beat, 1, 1, false, null, 0.018);
|
|
}
|
|
|
|
public static void HoSound(double beat)
|
|
{
|
|
SoundByte.PlayOneShot("games/lockstep/ho", beat, 1, 1, false, null, 0.015);
|
|
}
|
|
|
|
public static void OnbeatSwitchSound(double beat, int hais, bool sound)
|
|
{
|
|
if (sound)
|
|
{
|
|
MultiSound.Play(new MultiSound.Sound[]
|
|
{
|
|
new MultiSound.Sound("lockstep/nha1", beat, 1, 1, false, 0),
|
|
new MultiSound.Sound("lockstep/nha2", beat + 0.5f, 1, 1, false, 0.01),
|
|
new MultiSound.Sound("lockstep/nha1", beat + 1f, 1, 1, false, 0),
|
|
new MultiSound.Sound("lockstep/nha2", beat + 1.5f, 1, 1, false, 0.01)
|
|
}, forcePlay: true);
|
|
}
|
|
|
|
if (hais > 0)
|
|
{
|
|
List<MultiSound.Sound> haisList = new();
|
|
|
|
for (int i = 0; i < hais; i++)
|
|
{
|
|
haisList.Add(new MultiSound.Sound("lockstep/hai", beat + 2 + i, 1, 1, false, 0.018));
|
|
}
|
|
|
|
double nextOffBeat = double.MaxValue;
|
|
var switchEventsOn = EventCaller.GetAllInGameManagerList("lockstep", new string[] { "offbeatSwitch" });
|
|
switchEventsOn.Sort((x, y) => x.beat.CompareTo(y.beat));
|
|
for (int i = 0; i < switchEventsOn.Count; i++)
|
|
{
|
|
if (switchEventsOn[i].beat > beat)
|
|
{
|
|
nextOffBeat = switchEventsOn[i].beat;
|
|
break;
|
|
}
|
|
}
|
|
|
|
var haisActual = haisList.FindAll(x => x.beat < nextOffBeat);
|
|
|
|
MultiSound.Play(haisActual.ToArray(), true, true);
|
|
}
|
|
}
|
|
|
|
private void OnbeatSwitch(double beat, double gameswitchBeat, bool visual)
|
|
{
|
|
List<BeatAction.Action> allActions = new List<BeatAction.Action>()
|
|
{
|
|
new BeatAction.Action(beat, delegate { if(visual) ChangeBeatBackGroundColour(false); }),
|
|
new BeatAction.Action(beat + 0.5f, delegate { if (visual) ChangeBeatBackGroundColour(true); }),
|
|
new BeatAction.Action(beat + 1f, delegate
|
|
{
|
|
if(visual) ChangeBeatBackGroundColour(false);
|
|
}),
|
|
new BeatAction.Action(beat + 1.5f, delegate
|
|
{
|
|
if (visual) ChangeBeatBackGroundColour(true);
|
|
}),
|
|
new BeatAction.Action(beat + 1.75f, delegate { if (!marchRecursing && !ForceStepOnBeat(beat + 2f)) MarchRecursive(beat + 2f); }),
|
|
new BeatAction.Action(beat + 2f, delegate { if (visual) ChangeBeatBackGroundColour(false); }),
|
|
};
|
|
List<BeatAction.Action> actions = new();
|
|
foreach (var action in allActions)
|
|
{
|
|
if (action.beat >= gameswitchBeat) actions.Add(action);
|
|
}
|
|
if (actions.Count > 0) BeatAction.New(instance, actions);
|
|
}
|
|
|
|
public static void OffbeatSwitchSound(double beat, bool hoSound, bool sound)
|
|
{
|
|
if (sound)
|
|
{
|
|
MultiSound.Play(new MultiSound.Sound[]
|
|
{
|
|
new MultiSound.Sound("lockstep/hai", beat, 1, 1, false, 0.018),
|
|
new MultiSound.Sound("lockstep/hai", beat + 1f, 1, 1, false, 0.018),
|
|
new MultiSound.Sound("lockstep/hai", beat + 2f, 1, 1, false, 0.018),
|
|
new MultiSound.Sound("lockstep/hahai1", beat + 3f, 1, 1, false, 0),
|
|
new MultiSound.Sound("lockstep/hahai2", beat + 3.5f, 1, 1, false, 0.014),
|
|
}, forcePlay: true);
|
|
}
|
|
if (hoSound)
|
|
{
|
|
List<MultiSound.Sound> hos = new List<MultiSound.Sound>
|
|
{
|
|
new MultiSound.Sound("lockstep/ho", beat + 4.5f, 1, 1, false, 0.015),
|
|
new MultiSound.Sound("lockstep/ho", beat + 5.5f, 1, 0.6835514f, false, 0.015),
|
|
new MultiSound.Sound("lockstep/ho", beat + 6.5f, 1, 0.3395127f, false, 0.015),
|
|
new MultiSound.Sound("lockstep/ho", beat + 7.5f, 1, 0.1200322f, false, 0.015),
|
|
};
|
|
|
|
double nextOnBeat = double.MaxValue;
|
|
var switchEventsOn = EventCaller.GetAllInGameManagerList("lockstep", new string[] { "onbeatSwitch" });
|
|
switchEventsOn.Sort((x, y) => x.beat.CompareTo(y.beat));
|
|
for (int i = 0; i < switchEventsOn.Count; i++)
|
|
{
|
|
if (switchEventsOn[i].beat > beat)
|
|
{
|
|
nextOnBeat = switchEventsOn[i].beat;
|
|
break;
|
|
}
|
|
}
|
|
|
|
var hosActual = hos.FindAll(x => x.beat < nextOnBeat);
|
|
|
|
MultiSound.Play(hosActual.ToArray(), true, true);
|
|
}
|
|
}
|
|
|
|
private void OffbeatSwitch(double beat, double gameswitchBeat, bool visual)
|
|
{
|
|
List<BeatAction.Action> allActions = new List<BeatAction.Action>()
|
|
{
|
|
new BeatAction.Action(beat, delegate { if (visual) ChangeBeatBackGroundColour(true); }),
|
|
new BeatAction.Action(beat + 1f, delegate { if (visual) ChangeBeatBackGroundColour(false); }),
|
|
new BeatAction.Action(beat + 2f, delegate { if (visual) ChangeBeatBackGroundColour(true); }),
|
|
new BeatAction.Action(beat + 3f, delegate
|
|
{
|
|
if (visual) ChangeBeatBackGroundColour(false);
|
|
}),
|
|
new BeatAction.Action(beat + 3.25f, delegate { if (!marchRecursing && !ForceStepOnBeat(beat + 3.5)) MarchRecursive(beat + 3.5f); }),
|
|
new BeatAction.Action(beat + 3.5f, delegate { if (visual) ChangeBeatBackGroundColour(true); }),
|
|
};
|
|
List<BeatAction.Action> actions = new();
|
|
foreach (var action in allActions)
|
|
{
|
|
if (action.beat >= gameswitchBeat) actions.Add(action);
|
|
}
|
|
if (actions.Count > 0) BeatAction.New(instance, actions);
|
|
}
|
|
|
|
private struct QueuedMarch
|
|
{
|
|
public double beat;
|
|
public float length;
|
|
public bool sound;
|
|
public int amount;
|
|
public bool visual;
|
|
public bool force;
|
|
}
|
|
public static void Marching(double beat, bool sound, int amount, bool visual, bool force = false, float length = 0)
|
|
{
|
|
if (GameManager.instance.currentGame == "lockstep")
|
|
{
|
|
if (force)
|
|
{
|
|
instance.ForceMarching(beat, length, sound, amount, visual);
|
|
}
|
|
else
|
|
{
|
|
instance.StartMarching(beat, sound, amount, visual);
|
|
}
|
|
}
|
|
else
|
|
{
|
|
queuedInputs.Add(new QueuedMarch
|
|
{
|
|
amount = amount,
|
|
beat = beat,
|
|
sound = sound,
|
|
visual = visual,
|
|
length = length,
|
|
force = force
|
|
});
|
|
}
|
|
}
|
|
|
|
private void ForceMarching(double beat, float length, bool sound, int amount, bool visual)
|
|
{
|
|
bool offBeat = beat % 1 != 0;
|
|
if (sound)
|
|
{
|
|
MultiSound.Sound[] sounds = new MultiSound.Sound[amount];
|
|
for (int i = 0; i < amount; i++)
|
|
{
|
|
sounds[i] = new MultiSound.Sound($"lockstep/" + (offBeat ? "ho" : "hai"), beat + i, 1, 1, false, offBeat ? 0.015 : 0.018);
|
|
}
|
|
MultiSound.Play(sounds, true, true);
|
|
}
|
|
List<BeatAction.Action> steps = new()
|
|
{
|
|
new BeatAction.Action(beat, delegate
|
|
{
|
|
if (visual) ChangeBeatBackGroundColour(offBeat);
|
|
if (BachOnBeat(beat)) bach.DoScaledAnimationAsync(offBeat ? "BachOff" : "BachOn", 0.5f);
|
|
EvaluateMarch(offBeat);
|
|
})
|
|
};
|
|
ScheduleInput(beat - 1, 1, InputAction_BasicPress, offBeat ? JustOff : JustOn, offBeat ? MissOff : MissOn, Nothing);
|
|
for (int i = 1; i < length; i++)
|
|
{
|
|
double stepBeat = beat + i;
|
|
steps.Add(new BeatAction.Action(stepBeat, delegate
|
|
{
|
|
if (BachOnBeat(stepBeat)) bach.DoScaledAnimationAsync(offBeat ? "BachOff" : "BachOn", 0.5f);
|
|
EvaluateMarch(offBeat);
|
|
}));
|
|
ScheduleInput(stepBeat - 1, 1, InputAction_BasicPress, offBeat ? JustOff : JustOn, offBeat ? MissOff : MissOn, Nothing);
|
|
}
|
|
BeatAction.New(this, steps);
|
|
}
|
|
|
|
private void StartMarching(double beat, bool sound, int amount, bool visual)
|
|
{
|
|
if (marchRecursing) return;
|
|
bool offBeat = beat % 1 != 0;
|
|
if (visual)
|
|
{
|
|
BeatAction.New(instance, new List<BeatAction.Action>()
|
|
{
|
|
new BeatAction.Action(beat, delegate { ChangeBeatBackGroundColour(offBeat); })
|
|
});
|
|
}
|
|
if (sound)
|
|
{
|
|
MultiSound.Sound[] sounds = new MultiSound.Sound[amount];
|
|
for (int i = 0; i < amount; i++)
|
|
{
|
|
sounds[i] = new MultiSound.Sound($"lockstep/" + (offBeat ? "ho" : "hai"), beat + i, 1, 1, false, offBeat ? 0.015 : 0.018);
|
|
}
|
|
MultiSound.Play(sounds, true, true);
|
|
}
|
|
MarchRecursive(beat);
|
|
}
|
|
|
|
private bool marchRecursing;
|
|
private void MarchRecursive(double beat)
|
|
{
|
|
marchRecursing = true;
|
|
if (NextStepIsSwitch(beat)) beat -= 0.5;
|
|
bool offBeat = beat % 1 != 0;
|
|
bool bachOnBeat = BachOnBeat(beat);
|
|
ScheduleInput(beat - 1, 1, InputAction_BasicPress, offBeat ? JustOff : JustOn, offBeat ? MissOff : MissOn, Nothing);
|
|
BeatAction.New(instance, new List<BeatAction.Action>()
|
|
{
|
|
new BeatAction.Action(beat, delegate
|
|
{
|
|
EvaluateMarch(offBeat);
|
|
MarchRecursive(beat + 1);
|
|
if (bachOnBeat) bach.DoScaledAnimationAsync(offBeat ? "BachOff" : "BachOn", 0.5f);
|
|
}),
|
|
});
|
|
}
|
|
|
|
private bool NextStepIsSwitch(double beat)
|
|
{
|
|
return switches.Contains(beat - 0.5);
|
|
}
|
|
|
|
public void EvaluateMarch(bool offBeat)
|
|
{
|
|
if (offBeat)
|
|
{
|
|
PlayStepperAnim("OffbeatMarch", false, 0.5f);
|
|
}
|
|
else
|
|
{
|
|
PlayStepperAnim("OnbeatMarch", false, 0.5f);
|
|
}
|
|
}
|
|
|
|
private void JustOn(PlayerActionEvent caller, float state)
|
|
{
|
|
currentMissStage = HowMissed.NotMissed;
|
|
stepswitcherPlayer?.DoScaledAnimationAsync("OnbeatMarch", 0.5f);
|
|
if (state >= 1f || state <= -1f)
|
|
{
|
|
SoundByte.PlayOneShot("nearMiss");
|
|
return;
|
|
}
|
|
SoundByte.PlayOneShotGame($"lockstep/foot{UnityEngine.Random.Range(1, 3)}");
|
|
SoundByte.PlayOneShotGame("lockstep/drumOn");
|
|
}
|
|
|
|
private void JustOff(PlayerActionEvent caller, float state)
|
|
{
|
|
currentMissStage = HowMissed.NotMissed;
|
|
stepswitcherPlayer?.DoScaledAnimationAsync("OffbeatMarch", 0.5f);
|
|
if (state >= 1f || state <= -1f)
|
|
{
|
|
SoundByte.PlayOneShot("nearMiss");
|
|
return;
|
|
}
|
|
SoundByte.PlayOneShotGame($"lockstep/foot{UnityEngine.Random.Range(1, 3)}");
|
|
SoundByte.PlayOneShotGame("lockstep/drumOff");
|
|
}
|
|
|
|
private void MissOn(PlayerActionEvent caller)
|
|
{
|
|
if (currentMissStage == HowMissed.MissedOn) return;
|
|
stepswitcherPlayer?.Play("OnbeatMiss", 0, 0);
|
|
SoundByte.PlayOneShotGame("lockstep/wayOff");
|
|
currentMissStage = HowMissed.MissedOn;
|
|
}
|
|
|
|
private void MissOff(PlayerActionEvent caller)
|
|
{
|
|
if (currentMissStage == HowMissed.MissedOff) return;
|
|
stepswitcherPlayer?.Play("OffbeatMiss", 0, 0);
|
|
SoundByte.PlayOneShotGame("lockstep/wayOff");
|
|
currentMissStage = HowMissed.MissedOff;
|
|
}
|
|
|
|
public void ChangeBeatBackGroundColour(bool off)
|
|
{
|
|
if (off)
|
|
{
|
|
background.color = currentBGOffColor;
|
|
offColorActive = true;
|
|
}
|
|
else
|
|
{
|
|
background.color = currentBGOnColor;
|
|
offColorActive = false;
|
|
}
|
|
}
|
|
|
|
public void SetBackgroundColours(Color onColor, Color offColor, Color outlineColor, Color darkColor, Color lightColor)
|
|
{
|
|
currentBGOnColor = onColor;
|
|
currentBGOffColor = offColor;
|
|
|
|
if (offColorActive)
|
|
{
|
|
background.color = currentBGOffColor;
|
|
}
|
|
else
|
|
{
|
|
background.color = currentBGOnColor;
|
|
}
|
|
|
|
stepperMaterial.SetColor("_ColorAlpha", outlineColor);
|
|
stepperMaterial.SetColor("_ColorBravo", darkColor);
|
|
stepperMaterial.SetColor("_ColorDelta", lightColor);
|
|
}
|
|
|
|
public void Nothing(PlayerActionEvent caller) {}
|
|
}
|
|
}
|