HeavenStudio/Assets/Scripts/Games/KarateMan/KarateManJoe.cs

431 lines
16 KiB
C#
Raw Normal View History

using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using HeavenStudio.Util;
using HeavenStudio.InputSystem;
namespace HeavenStudio.Games.Scripts_KarateMan
{
public class KarateManJoe : MonoBehaviour
{
public Animator anim;
public Animator FaceAnim;
public GameEvent bop = new GameEvent();
public SpriteRenderer[] Shadows;
public Color BombGlowTint;
double bombGlowStart = double.MinValue;
float bombGlowLength = 0f;
Karate Man Additions Part 1 (#559) * starting out with adding so many things * voiceless kicks and combos (that one was easy) * queuing objects/specials * starting on cutting out the voice -i was using MultiSound.Delete() but i found it very inconsistent and janky so im switching to a check of the next block and if it should cut out the voice * got rid of basically all of the static variables in favor of checking the last color blocks -also means that the bg and object colors getting held over between remixes shouldn't happen anymore * removed all of the super backwards compatibility -im almost certain these blocks are only available in .tengoku files though, so nobody should have any issues * convert karateman to karateMan * conversion stuff start * voice cutting fully works and is consistent now color conversion isn't working, but ill fix it eventually background color isn't working rn either, and moving to the new system has caused a lot of errors * it compiles now this Background Appearance block got hands :bangbang: working on converting everything to the new bg color system this will be so annoying to build a RiqUpdater for. * bunch of small stuff i got this done while i was at a cabin * bg still broken :( * unconvert karateman from karateMan, bg finally works well. bg ALMOST finally works i'll be doing the fx stuff after, and ill combine it with the flow block * bg nearly done * i just might give up on bg compatibility i tried for like an hour and a half to convert it but i couldn't. minenice might be able to but idk. * background + lightbulb stuffs * FINALLY got old bg blocks updating + better bulb sfx store the keys of the objects in the dictionary that i want to remove, create the properties, then remove all of the objects using the keys. bulbs use a method that lets any sfx go through for the throw and hit, which means custom lightbulb cues :smiley: moved all queuing into one list, then a foreach checks the datamodel of each riqentity in the list camera bug fixed (call update in awake and start) recolorable barrels lol * and with that, it's finished! added backwards compatibility for bg fx and fixed the particles (oops i forgot to assign them in the inspector * fixed a bug the warning would not go away if you dragged the playback bar behind a warning cuz it wasn't checking for the beginning of a warning block * oops forgot to remove a debug log
2023-10-07 18:14:06 +00:00
float bombGlowIntensity = 0f;
const float bombGlowRatio = 1f;
double lastPunchTime = double.MinValue;
double lastComboMissTime = double.MinValue;
double lastUpperCutTime = double.MinValue;
2022-07-29 02:09:48 +00:00
public bool inCombo = false;
public bool lockedInCombo = false;
2022-08-08 00:24:07 +00:00
public bool comboWaiting = false;
int inComboId = -1;
2022-07-29 02:09:48 +00:00
int shouldComboId = -1;
public void SetComboId(int id) { inComboId = id; }
2022-07-29 02:09:48 +00:00
public void SetShouldComboId(int id) { shouldComboId = id; }
public int GetComboId() { return inComboId; }
public int GetShouldComboId() { return shouldComboId; }
2022-07-30 02:25:48 +00:00
public bool wantKick = false;
public bool inKick = false, inTouchCharge = false;
double lastChargeTime = double.MinValue;
double unPrepareTime = double.MinValue;
double noNuriJabTime = double.MinValue;
bool canEmote = false;
public int wantFace = 0;
2022-07-30 02:25:48 +00:00
public bool inSpecial
{
get
{
return inCombo || lockedInCombo || inKick || inNuriLock || inTouchCharge;
}
}
public bool inNuriLock { get { return (Conductor.instance.songPositionInBeatsAsDouble >= noNuriJabTime && Conductor.instance.songPositionInBeatsAsDouble < noNuriJabTime + 1f); } }
2022-07-30 02:25:48 +00:00
public void RequestBop()
{
var cond = Conductor.instance;
if (cond.songPositionInBeatsAsDouble > bop.startBeat && cond.songPositionInBeatsAsDouble < bop.startBeat + bop.length && cond.songPositionInBeatsAsDouble >= unPrepareTime && !inCombo) Bop();
}
private void Update()
{
var cond = Conductor.instance;
if (cond.songPositionInBeatsAsDouble < bombGlowStart)
{
bombGlowIntensity = 1f;
}
else
{
float glowProg = cond.GetPositionFromBeat(bombGlowStart, bombGlowLength);
bombGlowIntensity = 1f - glowProg;
if (cond.songPositionInBeatsAsDouble >= bombGlowStart + bombGlowLength)
{
bombGlowStart = double.MinValue;
bombGlowLength = 0f;
}
}
Karate Man Additions Part 1 (#559) * starting out with adding so many things * voiceless kicks and combos (that one was easy) * queuing objects/specials * starting on cutting out the voice -i was using MultiSound.Delete() but i found it very inconsistent and janky so im switching to a check of the next block and if it should cut out the voice * got rid of basically all of the static variables in favor of checking the last color blocks -also means that the bg and object colors getting held over between remixes shouldn't happen anymore * removed all of the super backwards compatibility -im almost certain these blocks are only available in .tengoku files though, so nobody should have any issues * convert karateman to karateMan * conversion stuff start * voice cutting fully works and is consistent now color conversion isn't working, but ill fix it eventually background color isn't working rn either, and moving to the new system has caused a lot of errors * it compiles now this Background Appearance block got hands :bangbang: working on converting everything to the new bg color system this will be so annoying to build a RiqUpdater for. * bunch of small stuff i got this done while i was at a cabin * bg still broken :( * unconvert karateman from karateMan, bg finally works well. bg ALMOST finally works i'll be doing the fx stuff after, and ill combine it with the flow block * bg nearly done * i just might give up on bg compatibility i tried for like an hour and a half to convert it but i couldn't. minenice might be able to but idk. * background + lightbulb stuffs * FINALLY got old bg blocks updating + better bulb sfx store the keys of the objects in the dictionary that i want to remove, create the properties, then remove all of the objects using the keys. bulbs use a method that lets any sfx go through for the throw and hit, which means custom lightbulb cues :smiley: moved all queuing into one list, then a foreach checks the datamodel of each riqentity in the list camera bug fixed (call update in awake and start) recolorable barrels lol * and with that, it's finished! added backwards compatibility for bg fx and fixed the particles (oops i forgot to assign them in the inspector * fixed a bug the warning would not go away if you dragged the playback bar behind a warning cuz it wasn't checking for the beginning of a warning block * oops forgot to remove a debug log
2023-10-07 18:14:06 +00:00
UpdateJoeColour();
2022-08-13 01:06:41 +00:00
if (canEmote && wantFace >= 0)
{
SetFaceExpressionForced(wantFace);
if (wantFace == (int)KarateMan.KarateManFaces.Surprise) wantFace = -1;
2022-08-13 01:06:41 +00:00
}
if (cond.songPositionInBeatsAsDouble >= noNuriJabTime && cond.songPositionInBeatsAsDouble < noNuriJabTime + 1f)
2022-08-13 01:06:41 +00:00
{
anim.DoScaledAnimation("JabNoNuri", noNuriJabTime, 1f);
bop.startBeat = noNuriJabTime + 1f;
}
else if (cond.songPositionInBeatsAsDouble >= noNuriJabTime + 1f && noNuriJabTime != double.MinValue)
2022-08-13 01:06:41 +00:00
{
bop.startBeat = noNuriJabTime + 1f;
noNuriJabTime = double.MinValue;
2022-08-13 01:06:41 +00:00
}
if (unPrepareTime != double.MinValue && cond.songPositionInBeatsAsDouble >= unPrepareTime)
{
unPrepareTime = double.MinValue;
anim.speed = 1f;
anim.Play("Beat", -1, 0);
}
2022-07-29 02:09:48 +00:00
if (inCombo && shouldComboId == -2)
{
float missProg = cond.GetPositionFromBeat(lastComboMissTime, 3f);
2022-07-29 02:09:48 +00:00
if (missProg >= 0f && missProg < 1f)
{
anim.DoScaledAnimation("LowKickMiss", lastComboMissTime, 3f);
2022-07-30 02:25:48 +00:00
bop.startBeat = lastComboMissTime + 3f;
2022-07-29 02:09:48 +00:00
}
else if (missProg >= 1f)
{
anim.speed = 1f;
bop.startBeat = lastComboMissTime + 3f;
lastComboMissTime = double.MinValue;
2022-07-29 02:09:48 +00:00
inCombo = false;
inComboId = -1;
shouldComboId = -1;
}
}
2022-07-30 02:25:48 +00:00
if (inKick)
{
float chargeProg = cond.GetPositionFromBeat(lastChargeTime, 1.75f);
2022-07-30 02:25:48 +00:00
if (chargeProg >= 0f && chargeProg < 1f)
{
anim.DoScaledAnimation("ManCharge", lastChargeTime, 1.75f);
bop.startBeat = lastChargeTime + 1.75f;
2022-07-30 02:25:48 +00:00
}
else if (cond.songPositionAsDouble >= lastChargeTime + 2.75f)
2022-07-30 02:25:48 +00:00
{
anim.speed = 1f;
bop.startBeat = lastChargeTime + 2.75f;
lastChargeTime = double.MinValue;
2022-07-30 02:25:48 +00:00
inKick = false;
}
}
if (PlayerInput.GetIsAction(KarateMan.InputAction_Press) && !inSpecial)
{
if (!KarateMan.instance.IsExpectingInputNow(KarateMan.InputAction_Press))
{
Punch(1, PlayerInput.CurrentControlStyle == InputController.ControlStyles.Touch);
SoundByte.PlayOneShotGame("karateman/swingNoHit", forcePlay: true);
}
}
if (PlayerInput.GetIsAction(KarateMan.InputAction_TouchUp) && lastChargeTime != double.MinValue && !(inTouchCharge || inKick))
{
lastChargeTime = double.MinValue;
}
if (lastChargeTime != double.MinValue && cond.songPositionInBeatsAsDouble > lastChargeTime + 0.25 && PlayerInput.GetIsAction(KarateMan.InputAction_Pressing) && !(inKick || inTouchCharge))
2022-07-29 02:09:48 +00:00
{
if (PlayerInput.CurrentControlStyle == InputController.ControlStyles.Touch)
{
Debug.Log("Touch charge");
inTouchCharge = true;
anim.DoScaledAnimationAsync("ManChargeOut", 0.5f);
}
}
if (PlayerInput.GetIsAction(KarateMan.InputAction_AltDown) && KarateMan.IsComboEnable && !inSpecial)
{
if (!KarateMan.instance.IsExpectingInputNow(KarateMan.InputAction_AltDown))
2022-07-29 02:09:48 +00:00
{
//start a forced-fail combo sequence
ForceFailCombo(cond.songPositionInBeatsAsDouble);
KarateMan.instance.ScoreMiss(2);
2022-07-29 02:09:48 +00:00
}
}
else if (PlayerInput.GetIsAction(KarateMan.InputAction_AltUp) || PlayerInput.GetIsAction(KarateMan.InputAction_TouchUp))
{
if (PlayerInput.GetIsAction(KarateMan.InputAction_TouchUp) && inComboId != -1 && !lockedInCombo)
{
inComboId = -1;
}
if (!KarateMan.instance.IsExpectingInputNow(KarateMan.InputAction_AltUp))
{
if (inComboId != -1 && !lockedInCombo)
{
inComboId = -1;
}
}
}
2022-07-30 02:25:48 +00:00
if ((!GameManager.instance.autoplay)
&& (PlayerInput.GetIsAction(KarateMan.InputAction_Flick) || PlayerInput.GetIsAction(KarateMan.InputAction_BasicRelease))
&& !PlayerInput.GetIsAction(KarateMan.InputAction_Pressing))
2022-07-30 02:25:48 +00:00
{
if (wantKick)
{
//stopped holding, don't charge
wantKick = false;
}
else if (inKick || inTouchCharge)
{
if (PlayerInput.GetIsAction(KarateMan.InputAction_Flick) && !KarateMan.instance.IsExpectingInputNow(KarateMan.InputAction_Flick))
{
Kick(cond.songPositionInBeatsAsDouble);
SoundByte.PlayOneShotGame("karateman/swingKick", forcePlay: true);
}
else if (PlayerInput.GetIsAction(KarateMan.InputAction_TouchUp))
{
Kick(cond.songPositionInBeatsAsDouble, true);
}
}
2022-07-30 02:25:48 +00:00
}
}
public void Bop()
{
anim.speed = 1f;
anim.Play("Beat", -1, 0);
lastChargeTime = double.MinValue;
}
public bool Punch(int forceHand = 0, bool touchCharge = false)
{
if (GameManager.instance.currentGame != "karateman") return false;
var cond = Conductor.instance;
2022-07-29 02:09:48 +00:00
bool straight = false;
anim.speed = 1f;
unPrepareTime = double.MinValue;
lastChargeTime = double.MinValue;
inKick = false;
switch (forceHand)
{
case 0:
Controller Support Update (#511) * 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: commit a6ce193ce5c0f7a43c63300c567531d430337aa0 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 commit 9b24ac48382591a57d0c33d3e3196a6681d58cde 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 commit 6105bb4f64a4128cc0e223724a54bc5421c7cd13 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 commit 576b4a001774b21cce47ff2ace26b2b1a212ad90 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 commit 10f8fa7f5a92e431b28b7becdc9484a7f0d97a16 Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 17:38:24 2023 -0400 add "updater" for the old marching entity commit 118cd4993da42f6779b2cc2b85bbdae1d2fa27c4 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 commit 8df235a85b0557a6e2e6622582253634ebcb57f6 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 commit 9980445723d3af784de3a56d8200c11b8985ac9a 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 commit 2f595824608fad4fd3cc69818b5da590aeea7534 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 commit aff1e3d889505ee33ade1e7e5ced5534ff8ad0e9 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 commit c9accfa52d87a475fc3e033ee47bfe5db31ef166 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 commit b40ec128a5c12fe1b38ad7f1bb79d0f3d5292ed6 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 commit 95c9b3469582a3126ca51b38528b7d2c8d69747e Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 16:13:08 2023 +0200 modernised rockers pass turn commit 0debf553918a241f9a2287745295b230274fdad0 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 commit 6eac745eaebc502b2b3d733ab3bce5ffd5a94dd5 Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 15:51:35 2023 +0200 gandw on balls has been added commit 349867d983e17aa124d3834191225d9f294265ad Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 14:59:56 2023 +0200 Proper inactive handling now commit d469c6c3fab6266d8a3f68dc1e993980448e59bd Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 13:52:15 2023 +0200 OnSpawnBall reimplemented commit dd290b333136075c30a340ae8c811af2f6e05d19 Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 13:37:09 2023 +0200 new sounds commit 757e1c2c5ed87bf09d33006551c2d7ea40a3b786 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 commit 8ce1d8276b1740724dc1d5200ec27b1b0f2c7c78 Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 21:36:57 2023 +0200 ball transporter anims for pass turn commit af0d9bae19aa08bc2078b8fb7214381a0e28cc76 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 commit db21d51673be4ed326fbf6dcec97116956ddcd84 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 commit 41157a038c3318dd68884dbce3f09cffc46188ab Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 14:04:32 2023 +0200 Some new curves commit 7d754f570661e77545765978b9a642bf590ae6de Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 12:03:21 2023 +0200 Rockers can do it too now commit c196947251d8fa588f1b4129d47c99216227c45f 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 commit 9f953d505fb6a4090171c65bd68f17c37df1772b Merge: 2a8d8d6f df120f08 Author: minenice55 <star.elementa@gmail.com> Date: Sun Jun 11 15:55:40 2023 -0400 Merge branch 'master' into release_1 commit 2a8d8d6fd2c38df74102b2ad5e2ec0e25b314289 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 commit 13adf5b07b520f68c571c4a7a87fb6d25e98ccd7 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 commit 9e3e594209e775633ebfc43774136010081e7f8b 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 commit 1c1c731dd1adfe444f1b1d55624f9ea15ca5a5f9 Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 23:00:30 2023 -0400 add updater for marching orders turn commit 210be54ba3b48189aabba90e3643326172217767 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 commit af8395fb6a673da7d593b0c4cb1ce094887af742 Merge: 81eafec9 b1fab52a Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 22:30:32 2023 -0400 Merge branch 'master' into release_1 commit 81eafec9866a823ccceac95dd9c06000541a898e 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 commit 67b6658cd37c4d4628f71675164919e65600eada Author: AstrlJelly <bdlawson115@gmail.com> Date: Sat Jun 10 16:55:10 2023 -0400 convert float to double and all that commit a4b66367fda2a6efe9f346882db00d0d588f26d6 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 commit 08a664ba2a50d41243f3e355c7e3d351f246bb1b 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 commit faf3fbf97c3a2842c85d9adcecde98b78f59068d 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 commit bb2ae7433907e75c96508411bfcf1bc19608d970 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: commit e782e3a5b4c31e5e620c8048eed8261c03c56f82 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 commit ce74719c1a8c324269b3df4699871a8ecba07a65 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 commit 5b8cfef1b0179dffe77b02a40fce8ee37f7ed5c9 Author: patata <patataofcourse@gmail.com> Date: Sat Jun 17 17:20:15 2023 +0200 Update issue template to include .riq/.zip info commit 9c61b760bb4cc8b93074f57b73e63a9b5a61202b Author: ev <85412919+evdial@users.noreply.github.com> Date: Thu Jun 15 15:05:07 2023 -0400 assbuns commit ae7451e9d3182c7e965919d661fc2ac47b3034b7 Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Thu Jun 15 20:56:40 2023 +0200 made small idle not crazy commit 4c5c95237c50bb1a9805fcd7233cb2d915e7574d Author: ev <85412919+evdial@users.noreply.github.com> Date: Thu Jun 15 14:33:57 2023 -0400 fsd commit 083d91623816011017a67c66cf9cdafb348943e6 Author: ev <85412919+evdial@users.noreply.github.com> Date: Thu Jun 15 14:16:38 2023 -0400 anim commit b3664e01b37e1c317712dfbde947f0f99ba79cb4 Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Thu Jun 15 20:13:11 2023 +0200 Fixed stuff also scaled now yippee commit 71e3a0ce6bcf0ccae3de304ff2586b566cc36e83 Author: ev <85412919+evdial@users.noreply.github.com> Date: Thu Jun 15 13:50:10 2023 -0400 many commit 534b06301dc9deeb8638553265ca5a5c49a1c41a Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 21:28:21 2023 -0400 Squashed commit of the following: (#474) commit a6ce193ce5c0f7a43c63300c567531d430337aa0 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 commit 9b24ac48382591a57d0c33d3e3196a6681d58cde 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 commit 6105bb4f64a4128cc0e223724a54bc5421c7cd13 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 commit 576b4a001774b21cce47ff2ace26b2b1a212ad90 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 commit 10f8fa7f5a92e431b28b7becdc9484a7f0d97a16 Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 17:38:24 2023 -0400 add "updater" for the old marching entity commit 118cd4993da42f6779b2cc2b85bbdae1d2fa27c4 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 commit 8df235a85b0557a6e2e6622582253634ebcb57f6 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 commit 9980445723d3af784de3a56d8200c11b8985ac9a 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 commit 2f595824608fad4fd3cc69818b5da590aeea7534 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 commit aff1e3d889505ee33ade1e7e5ced5534ff8ad0e9 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 commit c9accfa52d87a475fc3e033ee47bfe5db31ef166 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 commit b40ec128a5c12fe1b38ad7f1bb79d0f3d5292ed6 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 commit 95c9b3469582a3126ca51b38528b7d2c8d69747e Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 16:13:08 2023 +0200 modernised rockers pass turn commit 0debf553918a241f9a2287745295b230274fdad0 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 commit 6eac745eaebc502b2b3d733ab3bce5ffd5a94dd5 Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 15:51:35 2023 +0200 gandw on balls has been added commit 349867d983e17aa124d3834191225d9f294265ad Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 14:59:56 2023 +0200 Proper inactive handling now commit d469c6c3fab6266d8a3f68dc1e993980448e59bd Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 13:52:15 2023 +0200 OnSpawnBall reimplemented commit dd290b333136075c30a340ae8c811af2f6e05d19 Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 13:37:09 2023 +0200 new sounds commit 757e1c2c5ed87bf09d33006551c2d7ea40a3b786 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 commit 8ce1d8276b1740724dc1d5200ec27b1b0f2c7c78 Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 21:36:57 2023 +0200 ball transporter anims for pass turn commit af0d9bae19aa08bc2078b8fb7214381a0e28cc76 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 commit db21d51673be4ed326fbf6dcec97116956ddcd84 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 commit 41157a038c3318dd68884dbce3f09cffc46188ab Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 14:04:32 2023 +0200 Some new curves commit 7d754f570661e77545765978b9a642bf590ae6de Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 12:03:21 2023 +0200 Rockers can do it too now commit c196947251d8fa588f1b4129d47c99216227c45f 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 commit 9f953d505fb6a4090171c65bd68f17c37df1772b Merge: 2a8d8d6f df120f08 Author: minenice55 <star.elementa@gmail.com> Date: Sun Jun 11 15:55:40 2023 -0400 Merge branch 'master' into release_1 commit 2a8d8d6fd2c38df74102b2ad5e2ec0e25b314289 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 commit 13adf5b07b520f68c571c4a7a87fb6d25e98ccd7 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 commit 9e3e594209e775633ebfc43774136010081e7f8b 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 commit 1c1c731dd1adfe444f1b1d55624f9ea15ca5a5f9 Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 23:00:30 2023 -0400 add updater for marching orders turn commit 210be54ba3b48189aabba90e3643326172217767 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 commit af8395fb6a673da7d593b0c4cb1ce094887af742 Merge: 81eafec9 b1fab52a Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 22:30:32 2023 -0400 Merge branch 'master' into release_1 commit 81eafec9866a823ccceac95dd9c06000541a898e 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 commit 67b6658cd37c4d4628f71675164919e65600eada Author: AstrlJelly <bdlawson115@gmail.com> Date: Sat Jun 10 16:55:10 2023 -0400 convert float to double and all that commit a4b66367fda2a6efe9f346882db00d0d588f26d6 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 commit 08a664ba2a50d41243f3e355c7e3d351f246bb1b 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 commit faf3fbf97c3a2842c85d9adcecde98b78f59068d 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 commit bb2ae7433907e75c96508411bfcf1bc19608d970 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 commit a6ce193ce5c0f7a43c63300c567531d430337aa0 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 commit 9b24ac48382591a57d0c33d3e3196a6681d58cde 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 commit 6105bb4f64a4128cc0e223724a54bc5421c7cd13 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 commit 576b4a001774b21cce47ff2ace26b2b1a212ad90 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 commit 10f8fa7f5a92e431b28b7becdc9484a7f0d97a16 Author: minenice55 <star.elementa@gmail.com> Date: Tue Jun 13 17:38:24 2023 -0400 add "updater" for the old marching entity commit 118cd4993da42f6779b2cc2b85bbdae1d2fa27c4 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 commit 8df235a85b0557a6e2e6622582253634ebcb57f6 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 commit 9980445723d3af784de3a56d8200c11b8985ac9a 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 commit 2f595824608fad4fd3cc69818b5da590aeea7534 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 commit aff1e3d889505ee33ade1e7e5ced5534ff8ad0e9 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 commit c9accfa52d87a475fc3e033ee47bfe5db31ef166 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 commit b40ec128a5c12fe1b38ad7f1bb79d0f3d5292ed6 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 commit 95c9b3469582a3126ca51b38528b7d2c8d69747e Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 16:13:08 2023 +0200 modernised rockers pass turn commit 0debf553918a241f9a2287745295b230274fdad0 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 commit 6eac745eaebc502b2b3d733ab3bce5ffd5a94dd5 Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 15:51:35 2023 +0200 gandw on balls has been added commit 349867d983e17aa124d3834191225d9f294265ad Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 14:59:56 2023 +0200 Proper inactive handling now commit d469c6c3fab6266d8a3f68dc1e993980448e59bd Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 13:52:15 2023 +0200 OnSpawnBall reimplemented commit dd290b333136075c30a340ae8c811af2f6e05d19 Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Tue Jun 13 13:37:09 2023 +0200 new sounds commit 757e1c2c5ed87bf09d33006551c2d7ea40a3b786 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 commit 8ce1d8276b1740724dc1d5200ec27b1b0f2c7c78 Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 21:36:57 2023 +0200 ball transporter anims for pass turn commit af0d9bae19aa08bc2078b8fb7214381a0e28cc76 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 commit db21d51673be4ed326fbf6dcec97116956ddcd84 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 commit 41157a038c3318dd68884dbce3f09cffc46188ab Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 14:04:32 2023 +0200 Some new curves commit 7d754f570661e77545765978b9a642bf590ae6de Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Mon Jun 12 12:03:21 2023 +0200 Rockers can do it too now commit c196947251d8fa588f1b4129d47c99216227c45f 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 commit 9f953d505fb6a4090171c65bd68f17c37df1772b Merge: 2a8d8d6f df120f08 Author: minenice55 <star.elementa@gmail.com> Date: Sun Jun 11 15:55:40 2023 -0400 Merge branch 'master' into release_1 commit 2a8d8d6fd2c38df74102b2ad5e2ec0e25b314289 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 commit 13adf5b07b520f68c571c4a7a87fb6d25e98ccd7 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 commit 9e3e594209e775633ebfc43774136010081e7f8b 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 commit 1c1c731dd1adfe444f1b1d55624f9ea15ca5a5f9 Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 23:00:30 2023 -0400 add updater for marching orders turn commit 210be54ba3b48189aabba90e3643326172217767 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 commit af8395fb6a673da7d593b0c4cb1ce094887af742 Merge: 81eafec9 b1fab52a Author: minenice55 <star.elementa@gmail.com> Date: Sat Jun 10 22:30:32 2023 -0400 Merge branch 'master' into release_1 commit 81eafec9866a823ccceac95dd9c06000541a898e 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 commit 67b6658cd37c4d4628f71675164919e65600eada Author: AstrlJelly <bdlawson115@gmail.com> Date: Sat Jun 10 16:55:10 2023 -0400 convert float to double and all that commit a4b66367fda2a6efe9f346882db00d0d588f26d6 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 commit 08a664ba2a50d41243f3e355c7e3d351f246bb1b 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 commit faf3fbf97c3a2842c85d9adcecde98b78f59068d 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 commit bb2ae7433907e75c96508411bfcf1bc19608d970 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 :+1: * 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 * separate controller initializers update JSL * set initial player on joyshocks * loaders have their own namespace * port PlayerActionEvent IsHittable rename timing margin values simplify some player action event logic * 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 * Revert "Merge branch 'master' into new-controller-support" This reverts commit 2bf4c14f68a6f4f512504feb21d0ea5242e4a0fc, reversing changes made to b9c5fd4581750de0e4aefffa9b4a2ab9564971d1. * Squashed commit of the following: commit d68e71775ad4cdbb0dafd551d231a0d557149965 Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Wed Jun 28 06:51:53 2023 +0200 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 * update packages for mac * assign plugin platforms * JSL polling via event * JSL timestamped input * initial prep for rebinding controls rename some bindings properly expose newer JSL stuff * update JSL plugin support for DualSense Edge (treated as DualSense) * methods for working on controller binds doc parts of the InputController class * show bindings in settings menu * 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> * Revert "Merge branch 'master' into new-controller-support" This reverts commit 3f0edd8657074fea4ff93a91b3822ba10f9e98c1, reversing changes made to 804d7fad3b6498bc80da9646115a1d1e30254961. * Squashed commit of the following: commit dfe144cf4b12b797296a3ecabc473f03bc744ed9 Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Thu Jul 13 02:35:47 2023 +0200 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> commit 8a968b0a38c337500a73519277390f05fae6c525 Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Wed Jul 12 18:49:32 2023 +0200 Second Contact Rework + Small CNR API changes (#500) * Just need to rewrite how player text works * text almost fixed * text is now fixed * ellipses added * Removed cnr api from rockers and working dough * oops commit d68e71775ad4cdbb0dafd551d231a0d557149965 Author: Rapandrasmus <78219215+Rapandrasmus@users.noreply.github.com> Date: Wed Jun 28 06:51:53 2023 +0200 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 * working controller remapping * better differentiate between physical buttons and virtual actions fix bugs with single joy-con * add 90hz input debouncing * fix display issue in joycon pairing UI * start fixing issues with split pair todo: make the con read the paired controller as well * saving/loading custom binds * fix issues with joy-con pairs fix binding reset issue with joyshocks * apply same fix to kb swap kb east and south action binds * implement IsHittable in places that need it as examples * pj party needed IsHittable as well --------- 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>
2023-07-31 02:32:11 +00:00
if (cond.songPositionInBeatsAsDouble - lastPunchTime < 0.25f + (Minigame.JustLateTime() - 1f))
{
lastPunchTime = double.MinValue;
2022-07-30 02:25:48 +00:00
anim.DoScaledAnimationAsync("Straight", 0.5f);
2022-07-29 02:09:48 +00:00
straight = true;
}
else
{
lastPunchTime = cond.songPositionInBeatsAsDouble;
2022-07-30 02:25:48 +00:00
anim.DoScaledAnimationAsync("Jab", 0.5f);
}
break;
case 1:
2022-07-30 02:25:48 +00:00
anim.DoScaledAnimationAsync("Jab", 0.5f);
break;
case 2:
2022-07-30 02:25:48 +00:00
anim.DoScaledAnimationAsync("Straight", 0.5f);
2022-07-29 02:09:48 +00:00
straight = true;
break;
2022-08-13 01:06:41 +00:00
case 3:
lastPunchTime = double.MinValue;
2022-08-13 01:06:41 +00:00
anim.DoNormalizedAnimation("JabNoNuri");
noNuriJabTime = cond.songPositionInBeatsAsDouble;
2022-08-13 01:06:41 +00:00
break;
}
if (touchCharge)
{
lastChargeTime = cond.songPositionInBeatsAsDouble;
bop.startBeat = double.MaxValue;
}
else
{
bop.startBeat = cond.songPositionInBeatsAsDouble + 0.5f;
}
2022-07-29 02:09:48 +00:00
return straight; //returns what hand was used to punch the object
}
public void ComboSequence(int seq)
{
if (GameManager.instance.currentGame != "karateman") return;
2022-07-29 02:09:48 +00:00
var cond = Conductor.instance;
bop.startBeat = cond.songPositionInBeatsAsDouble + 1f;
unPrepareTime = double.MinValue;
2022-07-29 02:09:48 +00:00
switch (seq)
{
case 0:
anim.Play("LowJab", -1, 0);
break;
case 1:
anim.Play("LowKick", -1, 0);
break;
case 2:
anim.DoScaledAnimationAsync("BackHand", 0.5f);
2022-08-08 00:24:07 +00:00
comboWaiting = true;
break;
case 3:
anim.DoScaledAnimationAsync("UpperCut", 0.5f);
lockedInCombo = false;
2022-08-08 00:24:07 +00:00
comboWaiting = false;
break;
case 4:
anim.Play("ToReady", -1, 0);
bop.startBeat = cond.songPositionInBeatsAsDouble + 0.5f;
lockedInCombo = false;
2022-08-08 00:24:07 +00:00
comboWaiting = false;
2022-07-29 02:09:48 +00:00
break;
default:
break;
}
}
public void ComboMiss(double beat)
2022-07-29 02:09:48 +00:00
{
var cond = Conductor.instance;
lastComboMissTime = beat;
bop.startBeat = beat + 3f;
unPrepareTime = double.MinValue;
anim.DoNormalizedAnimation("LowKickMiss");
}
public void ForceFailCombo(double beat)
{
if (inCombo) return;
BeatAction.New(this, new List<BeatAction.Action>()
{
new BeatAction.Action(beat, delegate { Punch(1); inCombo = true; inComboId = -1; shouldComboId = -1;}),
new BeatAction.Action(beat + 0.25f, delegate { Punch(2); }),
new BeatAction.Action(beat + 0.5f, delegate { ComboSequence(0); }),
new BeatAction.Action(beat + 0.75f, delegate { shouldComboId = -2; ComboMiss(beat + 0.75f); }),
});
MultiSound.Play(new MultiSound.Sound[]
{
new MultiSound.Sound("karateman/swingNoHit", beat),
new MultiSound.Sound("karateman/swingNoHit_Alt", beat + 0.25f),
new MultiSound.Sound("karateman/swingNoHit_Alt", beat + 0.5f),
new MultiSound.Sound("karateman/comboMiss", beat + 0.75f),
}, forcePlay: true);
}
2022-07-30 02:25:48 +00:00
public void StartKickCharge(double beat)
2022-07-30 02:25:48 +00:00
{
wantKick = true;
unPrepareTime = double.MinValue;
BeatAction.New(this, new List<BeatAction.Action>()
2022-07-30 02:25:48 +00:00
{
new BeatAction.Action(beat, delegate {
2022-07-30 02:25:48 +00:00
if (wantKick)
{
wantKick = false;
inKick = true;
lastChargeTime = beat;
bop.startBeat = beat + 1.75f;
2022-07-30 02:25:48 +00:00
}
})
});
}
public void Kick(double beat, bool oldReturn = false)
2022-07-30 02:25:48 +00:00
{
if (!(inKick || inTouchCharge)) return;
//play the kick animation and reset stance
anim.speed = 1f;
bop.startBeat = beat + 1f;
unPrepareTime = double.MinValue;
lastChargeTime = double.MinValue;
2022-07-30 02:25:48 +00:00
inKick = false;
inTouchCharge = false;
if (oldReturn)
{
anim.DoScaledAnimationAsync("ManReturn", 0.5f);
}
else
{
anim.DoScaledAnimationAsync("ManKick", 0.5f);
}
2022-07-30 02:25:48 +00:00
}
public void MarkCanEmote()
{
canEmote = true;
}
public void MarkNoEmote()
{
canEmote = false;
}
Karate Man Additions Part 1 (#559) * starting out with adding so many things * voiceless kicks and combos (that one was easy) * queuing objects/specials * starting on cutting out the voice -i was using MultiSound.Delete() but i found it very inconsistent and janky so im switching to a check of the next block and if it should cut out the voice * got rid of basically all of the static variables in favor of checking the last color blocks -also means that the bg and object colors getting held over between remixes shouldn't happen anymore * removed all of the super backwards compatibility -im almost certain these blocks are only available in .tengoku files though, so nobody should have any issues * convert karateman to karateMan * conversion stuff start * voice cutting fully works and is consistent now color conversion isn't working, but ill fix it eventually background color isn't working rn either, and moving to the new system has caused a lot of errors * it compiles now this Background Appearance block got hands :bangbang: working on converting everything to the new bg color system this will be so annoying to build a RiqUpdater for. * bunch of small stuff i got this done while i was at a cabin * bg still broken :( * unconvert karateman from karateMan, bg finally works well. bg ALMOST finally works i'll be doing the fx stuff after, and ill combine it with the flow block * bg nearly done * i just might give up on bg compatibility i tried for like an hour and a half to convert it but i couldn't. minenice might be able to but idk. * background + lightbulb stuffs * FINALLY got old bg blocks updating + better bulb sfx store the keys of the objects in the dictionary that i want to remove, create the properties, then remove all of the objects using the keys. bulbs use a method that lets any sfx go through for the throw and hit, which means custom lightbulb cues :smiley: moved all queuing into one list, then a foreach checks the datamodel of each riqentity in the list camera bug fixed (call update in awake and start) recolorable barrels lol * and with that, it's finished! added backwards compatibility for bg fx and fixed the particles (oops i forgot to assign them in the inspector * fixed a bug the warning would not go away if you dragged the playback bar behind a warning cuz it wasn't checking for the beginning of a warning block * oops forgot to remove a debug log
2023-10-07 18:14:06 +00:00
public void UpdateJoeColour()
{
Karate Man Additions Part 1 (#559) * starting out with adding so many things * voiceless kicks and combos (that one was easy) * queuing objects/specials * starting on cutting out the voice -i was using MultiSound.Delete() but i found it very inconsistent and janky so im switching to a check of the next block and if it should cut out the voice * got rid of basically all of the static variables in favor of checking the last color blocks -also means that the bg and object colors getting held over between remixes shouldn't happen anymore * removed all of the super backwards compatibility -im almost certain these blocks are only available in .tengoku files though, so nobody should have any issues * convert karateman to karateMan * conversion stuff start * voice cutting fully works and is consistent now color conversion isn't working, but ill fix it eventually background color isn't working rn either, and moving to the new system has caused a lot of errors * it compiles now this Background Appearance block got hands :bangbang: working on converting everything to the new bg color system this will be so annoying to build a RiqUpdater for. * bunch of small stuff i got this done while i was at a cabin * bg still broken :( * unconvert karateman from karateMan, bg finally works well. bg ALMOST finally works i'll be doing the fx stuff after, and ill combine it with the flow block * bg nearly done * i just might give up on bg compatibility i tried for like an hour and a half to convert it but i couldn't. minenice might be able to but idk. * background + lightbulb stuffs * FINALLY got old bg blocks updating + better bulb sfx store the keys of the objects in the dictionary that i want to remove, create the properties, then remove all of the objects using the keys. bulbs use a method that lets any sfx go through for the throw and hit, which means custom lightbulb cues :smiley: moved all queuing into one list, then a foreach checks the datamodel of each riqentity in the list camera bug fixed (call update in awake and start) recolorable barrels lol * and with that, it's finished! added backwards compatibility for bg fx and fixed the particles (oops i forgot to assign them in the inspector * fixed a bug the warning would not go away if you dragged the playback bar behind a warning cuz it wasn't checking for the beginning of a warning block * oops forgot to remove a debug log
2023-10-07 18:14:06 +00:00
Color mainCol = KarateMan.instance.BodyColor;
Color highlightCol = KarateMan.instance.HighlightColor;
if (bombGlowIntensity > 0)
{
highlightCol = Color.LerpUnclamped(highlightCol, mainCol, bombGlowIntensity);
mainCol = Color.LerpUnclamped(mainCol, BombGlowTint, bombGlowIntensity * bombGlowRatio);
}
KarateMan.instance.MappingMaterial.SetColor("_ColorAlpha", mainCol);
KarateMan.instance.MappingMaterial.SetColor("_ColorBravo", new Color(1, 0, 0, 1));
KarateMan.instance.MappingMaterial.SetColor("_ColorDelta", highlightCol);
}
public void Prepare(double beat, float length)
{
anim.speed = 0f;
anim.Play("Beat", -1, 0);
unPrepareTime = beat + length;
}
public void SetFaceExpressionForced(int face)
{
FaceAnim.DoScaledAnimationAsync("Face" + face.ToString("D2"));
}
public void SetFaceExpression(int face, bool ignoreCheck = false)
{
wantFace = face;
if (canEmote || ignoreCheck)
FaceAnim.DoScaledAnimationAsync("Face" + face.ToString("D2"));
}
public void ApplyBombGlow()
{
bombGlowStart = double.MaxValue;
bombGlowLength = 0f;
bombGlowIntensity = 1f;
}
public void RemoveBombGlow(double beat, float length = 0.5f)
{
Karate Man Additions Part 1 (#559) * starting out with adding so many things * voiceless kicks and combos (that one was easy) * queuing objects/specials * starting on cutting out the voice -i was using MultiSound.Delete() but i found it very inconsistent and janky so im switching to a check of the next block and if it should cut out the voice * got rid of basically all of the static variables in favor of checking the last color blocks -also means that the bg and object colors getting held over between remixes shouldn't happen anymore * removed all of the super backwards compatibility -im almost certain these blocks are only available in .tengoku files though, so nobody should have any issues * convert karateman to karateMan * conversion stuff start * voice cutting fully works and is consistent now color conversion isn't working, but ill fix it eventually background color isn't working rn either, and moving to the new system has caused a lot of errors * it compiles now this Background Appearance block got hands :bangbang: working on converting everything to the new bg color system this will be so annoying to build a RiqUpdater for. * bunch of small stuff i got this done while i was at a cabin * bg still broken :( * unconvert karateman from karateMan, bg finally works well. bg ALMOST finally works i'll be doing the fx stuff after, and ill combine it with the flow block * bg nearly done * i just might give up on bg compatibility i tried for like an hour and a half to convert it but i couldn't. minenice might be able to but idk. * background + lightbulb stuffs * FINALLY got old bg blocks updating + better bulb sfx store the keys of the objects in the dictionary that i want to remove, create the properties, then remove all of the objects using the keys. bulbs use a method that lets any sfx go through for the throw and hit, which means custom lightbulb cues :smiley: moved all queuing into one list, then a foreach checks the datamodel of each riqentity in the list camera bug fixed (call update in awake and start) recolorable barrels lol * and with that, it's finished! added backwards compatibility for bg fx and fixed the particles (oops i forgot to assign them in the inspector * fixed a bug the warning would not go away if you dragged the playback bar behind a warning cuz it wasn't checking for the beginning of a warning block * oops forgot to remove a debug log
2023-10-07 18:14:06 +00:00
if (double.IsNaN(bombGlowIntensity)) return;
bombGlowStart = beat;
bombGlowLength = length;
bombGlowIntensity = 0f;
}
}
}