mirror of
https://github.com/RHeavenStudioPlus/HeavenStudioPlus.git
synced 2024-11-09 19:25:10 +00:00
Fan Club Sound Fix (#613)
* title screen prompt won't switch out of mouse * fix fan club crowd sounds not being scheduled properly * remove extra rain drop from kman particle (again smh)
This commit is contained in:
parent
84d766bb7e
commit
ba6c1a52bb
5 changed files with 84 additions and 72 deletions
2
.vscode/settings.json
vendored
2
.vscode/settings.json
vendored
|
@ -51,5 +51,5 @@
|
||||||
"temp/": true,
|
"temp/": true,
|
||||||
"Temp/": true
|
"Temp/": true
|
||||||
},
|
},
|
||||||
"dotnet.defaultSolution": "HeavenStudio-AstrlJelly.sln"
|
"dotnet.defaultSolution": "HeavenStudio.sln"
|
||||||
}
|
}
|
|
@ -26958,7 +26958,7 @@ MonoBehaviour:
|
||||||
- name: crowd_hai
|
- name: crowd_hai
|
||||||
sequence:
|
sequence:
|
||||||
game: 1
|
game: 1
|
||||||
force: 0
|
force: 1
|
||||||
clips:
|
clips:
|
||||||
- clip: fanClub/crowd_hai_jp
|
- clip: fanClub/crowd_hai_jp
|
||||||
beat: 0
|
beat: 0
|
||||||
|
@ -27100,7 +27100,7 @@ MonoBehaviour:
|
||||||
- name: crowd_kamone
|
- name: crowd_kamone
|
||||||
sequence:
|
sequence:
|
||||||
game: 1
|
game: 1
|
||||||
force: 0
|
force: 1
|
||||||
clips:
|
clips:
|
||||||
- clip: fanClub/crowd_ka_jp
|
- clip: fanClub/crowd_ka_jp
|
||||||
beat: 0
|
beat: 0
|
||||||
|
@ -27133,7 +27133,7 @@ MonoBehaviour:
|
||||||
- name: crowd_iina
|
- name: crowd_iina
|
||||||
sequence:
|
sequence:
|
||||||
game: 1
|
game: 1
|
||||||
force: 0
|
force: 1
|
||||||
clips:
|
clips:
|
||||||
- clip: fanClub/crowd_ii_jp
|
- clip: fanClub/crowd_ii_jp
|
||||||
beat: 0
|
beat: 0
|
||||||
|
|
|
@ -10,7 +10,8 @@ namespace HeavenStudio.Games.Loaders
|
||||||
using static Minigames;
|
using static Minigames;
|
||||||
public static class NtrIdolLoader
|
public static class NtrIdolLoader
|
||||||
{
|
{
|
||||||
public static Minigame AddGame(EventCaller eventCaller) {
|
public static Minigame AddGame(EventCaller eventCaller)
|
||||||
|
{
|
||||||
return new Minigame("fanClub", "Fan Club", "ff78ff", false, false, new List<GameAction>()
|
return new Minigame("fanClub", "Fan Club", "ff78ff", false, false, new List<GameAction>()
|
||||||
{
|
{
|
||||||
new GameAction("bop", "Bop")
|
new GameAction("bop", "Bop")
|
||||||
|
@ -33,7 +34,7 @@ namespace HeavenStudio.Games.Loaders
|
||||||
new Param("toggle2", false, "Disable response SFX", "Disable the monkeys's response")
|
new Param("toggle2", false, "Disable response SFX", "Disable the monkeys's response")
|
||||||
},
|
},
|
||||||
inactiveFunction = delegate { var e = eventCaller.currentEntity; FanClub.WarnHai(e.beat, e["toggle"]);},
|
inactiveFunction = delegate { var e = eventCaller.currentEntity; FanClub.WarnHai(e.beat, e["toggle"]);},
|
||||||
preFunction = delegate { var e = eventCaller.currentEntity; FanClub.HaiSound(e.beat, e["toggle"]); }
|
preFunction = delegate { var e = eventCaller.currentEntity; FanClub.HaiSound(e.beat, e["toggle"], e["toggle2"]); }
|
||||||
},
|
},
|
||||||
new GameAction("I suppose", "I Suppose!")
|
new GameAction("I suppose", "I Suppose!")
|
||||||
{
|
{
|
||||||
|
@ -47,7 +48,7 @@ namespace HeavenStudio.Games.Loaders
|
||||||
new Param("alt", false, "Alternate cue", "Use an alternate cue")
|
new Param("alt", false, "Alternate cue", "Use an alternate cue")
|
||||||
},
|
},
|
||||||
inactiveFunction = delegate { var e = eventCaller.currentEntity; FanClub.WarnKamone(e.beat, e["toggle"], 0, e["type"], e["alt"]);},
|
inactiveFunction = delegate { var e = eventCaller.currentEntity; FanClub.WarnKamone(e.beat, e["toggle"], 0, e["type"], e["alt"]);},
|
||||||
preFunction = delegate { var e = eventCaller.currentEntity; FanClub.KamoneSound(e.beat, e["toggle"], 0, e["type"], e["alt"]); }
|
preFunction = delegate { var e = eventCaller.currentEntity; FanClub.KamoneSound(e.beat, e["toggle"], e["toggle2"], 0, e["type"], e["alt"]); }
|
||||||
},
|
},
|
||||||
new GameAction("double clap", "Double Clap")
|
new GameAction("double clap", "Double Clap")
|
||||||
{
|
{
|
||||||
|
@ -120,13 +121,15 @@ namespace HeavenStudio.Games
|
||||||
|
|
||||||
public class FanClub : Minigame
|
public class FanClub : Minigame
|
||||||
{
|
{
|
||||||
public enum IdolBopType {
|
public enum IdolBopType
|
||||||
|
{
|
||||||
Both,
|
Both,
|
||||||
Idol,
|
Idol,
|
||||||
Spectators,
|
Spectators,
|
||||||
None
|
None
|
||||||
}
|
}
|
||||||
public enum IdolAnimations {
|
public enum IdolAnimations
|
||||||
|
{
|
||||||
Bop,
|
Bop,
|
||||||
PeaceVocal,
|
PeaceVocal,
|
||||||
Peace,
|
Peace,
|
||||||
|
@ -140,23 +143,27 @@ namespace HeavenStudio.Games
|
||||||
Dab,
|
Dab,
|
||||||
None
|
None
|
||||||
}
|
}
|
||||||
public enum KamoneResponseType {
|
public enum KamoneResponseType
|
||||||
|
{
|
||||||
Through,
|
Through,
|
||||||
Jump,
|
Jump,
|
||||||
ThroughFast,
|
ThroughFast,
|
||||||
JumpFast,
|
JumpFast,
|
||||||
}
|
}
|
||||||
public enum StageAnimations {
|
public enum StageAnimations
|
||||||
|
{
|
||||||
Reset,
|
Reset,
|
||||||
Flash,
|
Flash,
|
||||||
Spot
|
Spot
|
||||||
}
|
}
|
||||||
public enum IdolPerformanceType {
|
public enum IdolPerformanceType
|
||||||
|
{
|
||||||
Normal,
|
Normal,
|
||||||
Arrange,
|
Arrange,
|
||||||
// Tour(this one is fan made so ?)
|
// Tour(this one is fan made so ?)
|
||||||
}
|
}
|
||||||
public enum IdolType {
|
public enum IdolType
|
||||||
|
{
|
||||||
All,
|
All,
|
||||||
Idol,
|
Idol,
|
||||||
LeftDancer,
|
LeftDancer,
|
||||||
|
@ -657,8 +664,6 @@ namespace HeavenStudio.Games
|
||||||
new BeatAction.Action(beat + 6f, delegate { PlayOneClap(beat + 6f); DoIdolClaps();}),
|
new BeatAction.Action(beat + 6f, delegate { PlayOneClap(beat + 6f); DoIdolClaps();}),
|
||||||
new BeatAction.Action(beat + 7f, delegate { PlayOneClap(beat + 7f); DoIdolClaps();}),
|
new BeatAction.Action(beat + 7f, delegate { PlayOneClap(beat + 7f); DoIdolClaps();}),
|
||||||
});
|
});
|
||||||
|
|
||||||
if (!noResponse) PlaySoundSequence("fanClub", "crowd_hai", beat + 4f);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void WarnHai(double beat, bool noSound = false, int type = 0)
|
public static void WarnHai(double beat, bool noSound = false, int type = 0)
|
||||||
|
@ -666,8 +671,9 @@ namespace HeavenStudio.Games
|
||||||
wantHais = beat;
|
wantHais = beat;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void HaiSound(double beat, bool noSound = false, int type = 0)
|
public static void HaiSound(double beat, bool noSound = false, bool noResponse = false, int type = 0)
|
||||||
{
|
{
|
||||||
|
if (!noResponse) PlaySoundSequence("fanClub", "crowd_hai", beat + 4f);
|
||||||
if (noSound) return;
|
if (noSound) return;
|
||||||
PlaySoundSequence("fanClub", "arisa_hai", beat);
|
PlaySoundSequence("fanClub", "arisa_hai", beat);
|
||||||
}
|
}
|
||||||
|
@ -718,9 +724,6 @@ namespace HeavenStudio.Games
|
||||||
}
|
}
|
||||||
}),
|
}),
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
if (!noResponse) PlaySoundSequence("fanClub", alt ? "crowd_iina" : "crowd_kamone", beat + 2f);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void WarnKamone(double beat, bool noSound = false, int type = 0, int responseType = (int)KamoneResponseType.Through, bool alt = false)
|
public static void WarnKamone(double beat, bool noSound = false, int type = 0, int responseType = (int)KamoneResponseType.Through, bool alt = false)
|
||||||
|
@ -730,8 +733,9 @@ namespace HeavenStudio.Games
|
||||||
wantKamoneAlt = alt;
|
wantKamoneAlt = alt;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void KamoneSound(double beat, bool noSound = false, int type = 0, int responseType = (int) KamoneResponseType.Through, bool alt = false)
|
public static void KamoneSound(double beat, bool noSound = false, bool noResponse = false, int type = 0, int responseType = (int)KamoneResponseType.Through, bool alt = false)
|
||||||
{
|
{
|
||||||
|
if (!noResponse) PlaySoundSequence("fanClub", alt ? "crowd_iina" : "crowd_kamone", beat + 2f);
|
||||||
if (noSound) return;
|
if (noSound) return;
|
||||||
if (responseType == (int)KamoneResponseType.ThroughFast || responseType == (int)KamoneResponseType.JumpFast)
|
if (responseType == (int)KamoneResponseType.ThroughFast || responseType == (int)KamoneResponseType.JumpFast)
|
||||||
{
|
{
|
||||||
|
|
|
@ -91,8 +91,16 @@ namespace HeavenStudio.InputSystem
|
||||||
|
|
||||||
public override void UpdateState()
|
public override void UpdateState()
|
||||||
{
|
{
|
||||||
if (GameManager.instance == null) return;
|
Camera cam;
|
||||||
Camera cam = GameManager.instance.CursorCam;
|
if (GameManager.instance == null || GameManager.instance.CursorCam == null)
|
||||||
|
{
|
||||||
|
cam = Camera.main;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
cam = GameManager.instance.CursorCam;
|
||||||
|
}
|
||||||
|
if (cam == null) return;
|
||||||
|
|
||||||
hasFlicked = false;
|
hasFlicked = false;
|
||||||
hasSwiped = false;
|
hasSwiped = false;
|
||||||
|
|
|
@ -142,15 +142,15 @@ namespace HeavenStudio
|
||||||
SoundByte.PlayOneShot("ui/UIEnter");
|
SoundByte.PlayOneShot("ui/UIEnter");
|
||||||
|
|
||||||
var nextController = newController;
|
var nextController = newController;
|
||||||
|
var lastController = PlayerInput.GetInputController(1);
|
||||||
|
|
||||||
if (newController is InputMouse)
|
if ((newController is InputMouse) && (lastController is not InputMouse))
|
||||||
{
|
{
|
||||||
Debug.Log("Mouse used, selecting keyboard instead");
|
Debug.Log("Mouse used, selecting keyboard instead");
|
||||||
nextController = controllers[0];
|
nextController = controllers[0];
|
||||||
}
|
}
|
||||||
Debug.Log("Assigning controller: " + newController.GetDeviceName());
|
Debug.Log("Assigning controller: " + newController.GetDeviceName());
|
||||||
|
|
||||||
var lastController = PlayerInput.GetInputController(1);
|
|
||||||
if (lastController != nextController)
|
if (lastController != nextController)
|
||||||
{
|
{
|
||||||
if (nextController == null)
|
if (nextController == null)
|
||||||
|
|
Loading…
Reference in a new issue