multiple games

This commit is contained in:
minenice55 2023-09-21 21:23:34 -04:00
parent d1f20a3778
commit 4d2ae2f636
26 changed files with 10105 additions and 94 deletions

View file

@ -1310,7 +1310,7 @@ SpriteRenderer:
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_SortingOrder: -1
m_Sprite: {fileID: 471275613544938806, guid: 1f442840d85d9e944819c7e21ab38483, type: 3}
m_Color: {r: 1, g: 1, b: 1, a: 0.41960785}
m_FlipX: 0
@ -12337,7 +12337,7 @@ ParticleSystemRenderer:
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 4
m_SortingOrder: 0
m_RenderMode: 0
m_MeshDistribution: 0
m_SortMode: 0
@ -14435,7 +14435,6 @@ MonoBehaviour:
SoundSequences: []
EligibleHits: []
scheduledInputs: []
firstEnable: 0
soccer: {fileID: 6033749656558512970, guid: 3f09924efb4db354aa2899ebbebfbcf5, type: 3}
basket: {fileID: 5811262171106880114, guid: 5f00b13cb8a13dc49b2fc7d78e9c8a5d, type: 3}
football: {fileID: 8037004963704552774, guid: 8945cdc8b29cf4640b7f7d1c678be884, type: 3}
@ -14457,7 +14456,7 @@ MonoBehaviour:
anchor: {fileID: 0}
positions:
- tag:
pos: {x: -12.2, y: -2.75, z: 0}
pos: {x: -12.5, y: -2.75, z: 0}
target: {fileID: 0}
height: 4.4
duration: 1
@ -14466,7 +14465,7 @@ MonoBehaviour:
- key: rot
value: 135
- tag:
pos: {x: -6.7, y: -2.75, z: 0}
pos: {x: -7.75, y: -2.75, z: 0}
target: {fileID: 0}
height: 2.75
duration: 1.2
@ -14475,19 +14474,19 @@ MonoBehaviour:
- key: rot
value: 202.5
- tag:
pos: {x: -1.2, y: -2.75, z: 0}
pos: {x: -2.15, y: -2.75, z: 0}
target: {fileID: 0}
height: 2.5
duration: 1.2
duration: 1.25
useLastRealPos: 0
values:
- key: rot
value: 151.875
- tag:
pos: {x: 4.3, y: -2.75, z: 0}
pos: {x: 3.5, y: -2.75, z: 0}
target: {fileID: 0}
height: 1.8
duration: 1.5
duration: 1.6
useLastRealPos: 0
values:
- key: rot
@ -14582,7 +14581,7 @@ MonoBehaviour:
anchor: {fileID: 0}
positions:
- tag:
pos: {x: -12, y: -2.75, z: 0}
pos: {x: -12.25, y: -2.75, z: 0}
target: {fileID: 0}
height: 4.4
duration: 1

View file

@ -5223,3 +5223,10 @@ AnimationClip:
floatParameter: 0
intParameter: 0
messageOptions: 0
- time: 0.8
functionName: EnableBop
data:
objectReferenceParameter: {fileID: 0}
floatParameter: 0
intParameter: 0
messageOptions: 0

View file

@ -81,6 +81,12 @@ AnimatorStateMachine:
- serializedVersion: 1
m_State: {fileID: 3405943571545831607}
m_Position: {x: 435, y: 565, z: 0}
- serializedVersion: 1
m_State: {fileID: 124305183826925708}
m_Position: {x: -150, y: 280, z: 0}
- serializedVersion: 1
m_State: {fileID: -1689300076074279085}
m_Position: {x: 60, y: 280, z: 0}
m_ChildStateMachines: []
m_AnyStateTransitions: []
m_EntryTransitions: []
@ -189,6 +195,33 @@ AnimatorState:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &-1689300076074279085
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: UnReady
m_Speed: 1
m_CycleOffset: 0
m_Transitions:
- {fileID: 5072795465433690740}
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: 12ed406172ab704469eef9441d6ced24, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!91 &9100000
AnimatorController:
m_ObjectHideFlags: 0
@ -211,6 +244,32 @@ AnimatorController:
m_IKPass: 0
m_SyncedLayerAffectsTiming: 0
m_Controller: {fileID: 9100000}
--- !u!1102 &124305183826925708
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Ready
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: 1e68bbb68caf176428534ae09e098aa4, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &388957863343072032
AnimatorState:
serializedVersion: 6
@ -263,6 +322,28 @@ AnimatorState:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1101 &5072795465433690740
AnimatorStateTransition:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name:
m_Conditions: []
m_DstStateMachine: {fileID: 0}
m_DstState: {fileID: 388957863343072032}
m_Solo: 0
m_Mute: 0
m_IsExit: 0
serializedVersion: 3
m_TransitionDuration: 0
m_TransitionOffset: 0
m_ExitTime: 1
m_HasExitTime: 1
m_HasFixedDuration: 1
m_InterruptionSource: 0
m_OrderedInterruption: 1
m_CanTransitionToSelf: 1
--- !u!1101 &8680951295974053903
AnimatorStateTransition:
m_ObjectHideFlags: 1

View file

@ -12516,3 +12516,10 @@ AnimationClip:
floatParameter: 0
intParameter: 0
messageOptions: 0
- time: 0.73333335
functionName: EnableBop
data:
objectReferenceParameter: {fileID: 0}
floatParameter: 0
intParameter: 0
messageOptions: 0

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 1e68bbb68caf176428534ae09e098aa4
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 12ed406172ab704469eef9441d6ced24
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:

View file

@ -195,7 +195,6 @@ namespace HeavenStudio.Games
new("NtrNinjaTouchRelease", new int[] { IAEmptyCat, IAReleaseCat, IAEmptyCat },
IA_Empty, IA_TouchBasicRelease, IA_Empty);
private void Awake()
{
instance = this;

View file

@ -39,7 +39,7 @@ namespace HeavenStudio.Games.Scripts_DoubleDate
public void Init(double beat)
{
game.ScheduleInput(beat, 1f, InputType.STANDARD_DOWN, Just, Miss, Empty);
game.ScheduleInput(beat, 1f, DoubleDate.InputAction_FlickPress, Just, Miss, Empty);
path = game.GetPath("BasketBallIn");
UpdateLastRealPos();
pathStartBeat = beat - 1f;

View file

@ -96,6 +96,13 @@ namespace HeavenStudio.Games
public BallType type;
}
public static PlayerInput.InputAction InputAction_TouchPress =
new("RvlDateTouchRelease", new int[] { IAEmptyCat, IAPressCat, IAEmptyCat },
IA_Empty, IA_TouchBasicPress, IA_Empty);
public static PlayerInput.InputAction InputAction_TouchRelease =
new("RvlDateTouchRelease", new int[] { IAEmptyCat, IAReleaseCat, IAEmptyCat },
IA_Empty, IA_TouchBasicRelease, IA_Empty);
// Editor gizmo to draw trajectories
new void OnDrawGizmos()
{
@ -167,7 +174,15 @@ namespace HeavenStudio.Games
queuedBalls.Clear();
}
}
if (PlayerInput.Pressed() && !IsExpectingInputNow(InputType.STANDARD_DOWN))
if (PlayerInput.GetIsAction(InputAction_TouchPress))
{
boyAnim.DoScaledAnimationAsync("Ready", 1f);
}
if (PlayerInput.GetIsAction(InputAction_TouchRelease) && !IsExpectingInputNow(InputAction_FlickPress))
{
boyAnim.DoScaledAnimationAsync("UnReady", 1f);
}
if (PlayerInput.GetIsAction(InputAction_FlickPress) && !IsExpectingInputNow(InputAction_FlickPress))
{
SoundByte.PlayOneShotGame("doubleDate/kick_whiff");
Kick(true, true, false);

View file

@ -39,7 +39,7 @@ namespace HeavenStudio.Games.Scripts_DoubleDate
public void Init(double beat)
{
game.ScheduleInput(beat, 1.5f, InputType.STANDARD_DOWN, Just, Miss, Empty);
game.ScheduleInput(beat, 1.5f, DoubleDate.InputAction_FlickPress, Just, Miss, Empty);
path = game.GetPath("FootBallInNoHit"); // there's a second path for footballs that hit the weasels, use that if the weasels haven't been hit recently
UpdateLastRealPos();
pathStartBeat = beat - 1f;

View file

@ -39,7 +39,7 @@ namespace HeavenStudio.Games.Scripts_DoubleDate
public void Init(double beat)
{
game.ScheduleInput(beat, 1f, InputType.STANDARD_DOWN, Just, Miss, Empty);
game.ScheduleInput(beat, 1f, DoubleDate.InputAction_FlickPress, Just, Miss, Empty);
path = game.GetPath("SoccerIn");
UpdateLastRealPos();
pathStartBeat = beat - 1f;

View file

@ -42,7 +42,7 @@ namespace HeavenStudio.Games.Scripts_DrummingPractice
private void Update()
{
if (player && PlayerInput.GetIsAction(DrummingPractice.InputAction_BasicPress) && !DrummingPractice.instance.IsExpectingInputNow(DrummingPractice.InputAction_BasicPress.inputLockCategory))
if (player && PlayerInput.GetIsAction(DrummingPractice.InputAction_BasicPress) && !DrummingPractice.instance.IsExpectingInputNow(DrummingPractice.InputAction_BasicPress))
{
Hit(false, false);
}

View file

@ -23,7 +23,7 @@ namespace HeavenStudio.Games.Scripts_Fireworks
public void Init(double beat)
{
game.ScheduleInput(beat, 1f, InputType.STANDARD_DOWN, Just, Out, Out);
game.ScheduleInput(beat, 1f, Fireworks.InputAction_BasicPress, Just, Out, Out);
startBeat = beat;
}

View file

@ -67,7 +67,7 @@ namespace HeavenStudio.Games.Scripts_Fireworks
{
startBeat = beat;
startY = transform.position.y - offSet;
game.ScheduleInput(beat, isSparkler ? 1f : 3f, InputType.STANDARD_DOWN, Just, Out, Out);
game.ScheduleInput(beat, isSparkler ? 1f : 3f, Fireworks.InputAction_BasicPress, Just, Out, Out);
anim.DoScaledAnimationAsync(isSparkler ? "Sparkler" : "Rocket", isSparkler ? 1f : 0.5f);
selectedParticleEffect = particleEffects[explosionToChoose];
}

View file

@ -3,6 +3,7 @@ using System.Text;
using System.Collections.Generic;
using UnityEngine;
using HeavenStudio.Util;
using HeavenStudio.InputSystem;
using TMPro;
using Jukebox;
using UnityEngine.Assertions.Must;
@ -159,6 +160,19 @@ namespace HeavenStudio.Games
idle
}
protected static bool IA_PadAny(out double dt)
{
return PlayerInput.GetPadDown(InputController.ActionsPad.East, out dt)
|| PlayerInput.GetPadDown(InputController.ActionsPad.Up, out dt)
|| PlayerInput.GetPadDown(InputController.ActionsPad.Down, out dt)
|| PlayerInput.GetPadDown(InputController.ActionsPad.Left, out dt)
|| PlayerInput.GetPadDown(InputController.ActionsPad.Right, out dt);
}
public static PlayerInput.InputAction InputAction_Press =
new("CtrInterpreterPress", new int[] { IAPressCat, IAFlickCat, IAPressCat },
IA_PadAny, IA_TouchBasicPress, IA_BatonBasicPress);
void OnDestroy()
{
foreach (var evt in scheduledInputs)
@ -299,7 +313,7 @@ namespace HeavenStudio.Games
lastReportedBeat = Math.Round(Conductor.instance.songPositionInBeatsAsDouble);
}
if ((PlayerInput.Pressed() || PlayerInput.GetAnyDirectionDown()) && !IsExpectingInputNow(InputType.STANDARD_DOWN | InputType.DIRECTION_DOWN))
if (PlayerInput.GetIsAction(InputAction_Press) && !IsExpectingInputNow(InputAction_Press))
{
translator.DoScaledAnimationAsync("translator_eh", 0.5f);
if (isSpeaking)
@ -401,7 +415,7 @@ namespace HeavenStudio.Games
{
var input = inputs[i];
double relativeBeat = input.beat - intervalBeat;
ScheduleInput(beat, length + relativeBeat, InputType.STANDARD_DOWN | InputType.DIRECTION_DOWN, AlienTapping, AlienOnMiss, AlienEmpty);
ScheduleInput(beat, length + relativeBeat, InputAction_Press, AlienTapping, AlienOnMiss, AlienEmpty);
callDiagList.Add(input["dialogue"]);
}
BeatAction.New(this, new List<BeatAction.Action>()

View file

@ -28,10 +28,6 @@ namespace HeavenStudio.Games.Scripts_FirstContact
{
if (ace)
{
//if(game.version == 1)
//{
// Jukebox.PlayOneShotGame("firstContact/citrusRemix/1_r");
//}
SoundByte.PlayOneShotGame("firstContact/" + RandomizerLines());
}
else

View file

@ -32,7 +32,7 @@ namespace HeavenStudio.Games.Scripts_LaunchParty
void Update()
{
if (GameManager.instance.currentGame != "launchParty") Destroy(gameObject);
if (PlayerInput.Pressed() && !game.IsExpectingInputNow(InputType.STANDARD_DOWN) && !noInput)
if (PlayerInput.GetIsAction(LaunchParty.InputAction_BasicPress) && !game.IsExpectingInputNow(LaunchParty.InputAction_BasicPress) && !noInput)
{
SoundByte.PlayOneShotGame("launchParty/miss");
SoundByte.PlayOneShotGame("launchParty/rocket_endBad");
@ -50,7 +50,7 @@ namespace HeavenStudio.Games.Scripts_LaunchParty
public void InitFamilyRocket(double beat)
{
game.ScheduleInput(beat, 3f, InputType.STANDARD_DOWN, JustFamilyRocket, Miss, Nothing);
game.ScheduleInput(beat, 3f, LaunchParty.InputAction_BasicPress, JustFamilyRocket, Miss, Nothing);
MultiSound.Play(new MultiSound.Sound[]
{
@ -74,7 +74,7 @@ namespace HeavenStudio.Games.Scripts_LaunchParty
public void InitPartyCracker(double beat)
{
game.ScheduleInput(beat, 2f, InputType.STANDARD_DOWN, JustPartyCracker, Miss, Nothing);
game.ScheduleInput(beat, 2f, LaunchParty.InputAction_BasicPress, JustPartyCracker, Miss, Nothing);
MultiSound.Play(new MultiSound.Sound[]
{
@ -102,7 +102,7 @@ namespace HeavenStudio.Games.Scripts_LaunchParty
public void InitBell(double beat)
{
game.ScheduleInput(beat, 2f, InputType.STANDARD_DOWN, JustBell, Miss, Nothing);
game.ScheduleInput(beat, 2f, LaunchParty.InputAction_BasicPress, JustBell, Miss, Nothing);
MultiSound.Play(new MultiSound.Sound[]
{
@ -134,7 +134,7 @@ namespace HeavenStudio.Games.Scripts_LaunchParty
public void InitBowlingPin(double beat)
{
game.ScheduleInput(beat, 2f, InputType.STANDARD_DOWN, JustBowlingPin, Miss, Nothing);
game.ScheduleInput(beat, 2f, LaunchParty.InputAction_BasicPress, JustBowlingPin, Miss, Nothing);
MultiSound.Play(new MultiSound.Sound[]
{

View file

@ -363,7 +363,7 @@ namespace HeavenStudio.Games
}
queuedInputs.Clear();
}
if (PlayerInput.Pressed() && !IsExpectingInputNow(InputType.STANDARD_DOWN))
if (PlayerInput.GetIsAction(InputAction_BasicPress) && !IsExpectingInputNow(InputAction_BasicPress))
{
currentMissStage = HowMissed.NotMissed;
double beatAnimCheck = cond.songPositionInBeatsAsDouble - 0.25;
@ -616,7 +616,7 @@ namespace HeavenStudio.Games
EvaluateMarch(offBeat);
})
};
ScheduleInput(beat - 1, 1, InputType.STANDARD_DOWN, offBeat ? JustOff : JustOn, offBeat ? MissOff : MissOn, Nothing);
ScheduleInput(beat - 1, 1, InputAction_BasicPress, offBeat ? JustOff : JustOn, offBeat ? MissOff : MissOn, Nothing);
for (int i = 1; i < length; i++)
{
double stepBeat = beat + i;
@ -625,7 +625,7 @@ namespace HeavenStudio.Games
if (BachOnBeat(stepBeat)) bach.DoScaledAnimationAsync(offBeat ? "BachOff" : "BachOn", 0.5f);
EvaluateMarch(offBeat);
}));
ScheduleInput(stepBeat - 1, 1, InputType.STANDARD_DOWN, offBeat ? JustOff : JustOn, offBeat ? MissOff : MissOn, Nothing);
ScheduleInput(stepBeat - 1, 1, InputAction_BasicPress, offBeat ? JustOff : JustOn, offBeat ? MissOff : MissOn, Nothing);
}
BeatAction.New(this, steps);
}
@ -660,7 +660,7 @@ namespace HeavenStudio.Games
if (NextStepIsSwitch(beat)) beat -= 0.5;
bool offBeat = beat % 1 != 0;
bool bachOnBeat = BachOnBeat(beat);
ScheduleInput(beat - 1, 1, InputType.STANDARD_DOWN, offBeat ? JustOff : JustOn, offBeat ? MissOff : MissOn, Nothing);
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

View file

@ -1,4 +1,5 @@
using HeavenStudio.Util;
using HeavenStudio.InputSystem;
using System;
using System.Collections.Generic;
using UnityEngine;
@ -10,14 +11,15 @@ namespace HeavenStudio.Games.Loaders
using static Minigames;
public static class pcoMeatLoader
{
public static Minigame AddGame(EventCaller eventCaller) {
public static Minigame AddGame(EventCaller eventCaller)
{
return new Minigame("meatGrinder", "Meat Grinder", "501d18", false, false, new List<GameAction>()
{
new GameAction("MeatToss", "Meat Toss")
{
function = delegate {
var e = eventCaller.currentEntity;
MeatGrinder.instance.MeatToss(e.beat);
var e = eventCaller.currentEntity;
MeatGrinder.instance.MeatToss(e.beat);
},
defaultLength = 2f,
priority = 2,
@ -25,14 +27,14 @@ namespace HeavenStudio.Games.Loaders
new GameAction("MeatCall", "Meat Call")
{
function = delegate {
var e = eventCaller.currentEntity;
MeatGrinder.instance.MeatCall(e.beat);
var e = eventCaller.currentEntity;
MeatGrinder.instance.MeatCall(e.beat);
},
defaultLength = 0.5f,
priority = 2,
preFunctionLength = 1f,
preFunction = delegate {
var e = eventCaller.currentEntity;
var e = eventCaller.currentEntity;
MeatGrinder.PreInterval(e.beat, 4f);
},
},
@ -49,8 +51,8 @@ namespace HeavenStudio.Games.Loaders
new GameAction("bop", "Bop")
{
function = delegate {
var e = eventCaller.currentEntity;
MeatGrinder.instance.Bop(e.beat, e.length, e["bop"], e["bossBop"]);
var e = eventCaller.currentEntity;
MeatGrinder.instance.Bop(e.beat, e.length, e["bop"], e["bossBop"]);
},
parameters = new List<Param>()
{
@ -61,9 +63,9 @@ namespace HeavenStudio.Games.Loaders
priority = 1,
},
},
new List<string>() {"pco", "normal", "repeat"},
new List<string>() { "pco", "normal", "repeat" },
"pcomeat", "en",
new List<string>() {}
new List<string>() { }
);
}
}
@ -105,7 +107,20 @@ namespace HeavenStudio.Games
Dark,
Light,
}
protected static bool IA_PadAny(out double dt)
{
return PlayerInput.GetPadDown(InputController.ActionsPad.East, out dt)
|| PlayerInput.GetPadDown(InputController.ActionsPad.Up, out dt)
|| PlayerInput.GetPadDown(InputController.ActionsPad.Down, out dt)
|| PlayerInput.GetPadDown(InputController.ActionsPad.Left, out dt)
|| PlayerInput.GetPadDown(InputController.ActionsPad.Right, out dt);
}
public static PlayerInput.InputAction InputAction_Press =
new("PcoMeatPress", new int[] { IAPressCat, IAFlickCat, IAPressCat },
IA_PadAny, IA_TouchBasicPress, IA_BatonBasicPress);
private void Awake()
{
instance = this;
@ -113,7 +128,8 @@ namespace HeavenStudio.Games
void OnDestroy()
{
if (!Conductor.instance.isPlaying || Conductor.instance.isPaused) {
if (!Conductor.instance.isPlaying || Conductor.instance.isPaused)
{
if (queuedInputs.Count > 0) queuedInputs.Clear();
if (queuedIntervals.Count > 0) queuedIntervals.Clear();
intervalStarted = false;
@ -122,27 +138,29 @@ namespace HeavenStudio.Games
foreach (var evt in scheduledInputs) evt.Disable();
}
private void Update()
private void Update()
{
if ((PlayerInput.Pressed() || PlayerInput.GetAnyDirectionDown()) && (!IsExpectingInputNow(InputType.STANDARD_DOWN) || !IsExpectingInputNow(InputType.DIRECTION_DOWN))) {
if (PlayerInput.GetIsAction(InputAction_Press) && !IsExpectingInputNow(InputAction_Press))
{
TackAnim.DoScaledAnimationAsync("TackEmptyHit", 0.5f);
TackAnim.SetBool("tackMeated", false);
SoundByte.PlayOneShotGame(sfxName+"whiff");
SoundByte.PlayOneShotGame(sfxName + "whiff");
bossAnnoyed = false;
}
if (bossAnnoyed) BossAnim.SetBool("bossAnnoyed", true);
if (queuedIntervals.Count > 0) {
if (queuedIntervals.Count > 0)
{
foreach (var interval in queuedIntervals) StartInterval(interval.beat, interval.length);
queuedIntervals.Clear();
}
}
private void LateUpdate()
private void LateUpdate()
{
if (Conductor.instance.ReportBeat(ref lastReportedBeat)
&& !BossAnim.IsPlayingAnimationName("BossCall")
&& !BossAnim.IsPlayingAnimationName("BossCall")
&& !BossAnim.IsPlayingAnimationName("BossSignal")
&& bossBop)
{
@ -153,8 +171,10 @@ namespace HeavenStudio.Games
public void Bop(double beat, double length, bool doesBop, bool autoBop)
{
bossBop = autoBop;
if (doesBop) {
for (int i = 0; i < length; i++) {
if (doesBop)
{
for (int i = 0; i < length; i++)
{
BeatAction.New(instance, new List<BeatAction.Action>() {
new BeatAction.Action(beat + i, delegate {
if (!BossAnim.IsPlayingAnimationName("BossCall") && !BossAnim.IsPlayingAnimationName("BossSignal")) {
@ -170,19 +190,21 @@ namespace HeavenStudio.Games
{
if (MeatGrinder.instance.intervalStarted || MeatGrinder.queuedIntervals.Count > 0) return;
MeatGrinder.queuedIntervals.Add(new QueuedInterval() {
MeatGrinder.queuedIntervals.Add(new QueuedInterval()
{
beat = beat,
length = length,
});
SoundByte.PlayOneShotGame("meatGrinder/startSignal", beat - 1, forcePlay: true);
if (GameManager.instance.currentGame == "meatGrinder") {
if (GameManager.instance.currentGame == "meatGrinder")
{
BeatAction.New(MeatGrinder.instance, new List<BeatAction.Action>() {
new BeatAction.Action(beat - 1, delegate {
new BeatAction.Action(beat - 1, delegate {
MeatGrinder.instance.BossAnim.DoScaledAnimationAsync("BossSignal", 0.5f);
}),
});
});
}
}
@ -198,11 +220,11 @@ namespace HeavenStudio.Games
new BeatAction.Action(beat + length - 0.33f, delegate { PassTurn(beat); }),
});
}
public void MeatToss(double beat)
{
SoundByte.PlayOneShotGame(sfxName+"toss");
SoundByte.PlayOneShotGame(sfxName + "toss");
MeatToss Meat = Instantiate(MeatBase, gameObject.transform).GetComponent<MeatToss>();
Meat.startBeat = beat;
Meat.cueLength = 1f;
@ -210,11 +232,11 @@ namespace HeavenStudio.Games
Meat.meatType = "DarkMeat";
}
public void MeatCall(double beat)
public void MeatCall(double beat)
{
BossAnim.DoScaledAnimationAsync("BossCall", 0.5f);
SoundByte.PlayOneShotGame(sfxName+"signal");
SoundByte.PlayOneShotGame(sfxName + "signal");
StartInterval(beat, beatInterval);
queuedInputs.Add(beat - intervalStartBeat);
@ -227,7 +249,7 @@ namespace HeavenStudio.Games
{
BeatAction.New(instance, new List<BeatAction.Action>()
{
new BeatAction.Action(input + beatInterval , delegate {
new BeatAction.Action(input + beatInterval , delegate {
MeatToss Meat = Instantiate(MeatBase, gameObject.transform).GetComponent<MeatToss>();
Meat.startBeat = beat;
Meat.cueLength = beatInterval + input;
@ -235,7 +257,7 @@ namespace HeavenStudio.Games
Meat.meatType = "LightMeat";
}),
});
}
queuedInputs.Clear();
}

View file

@ -27,7 +27,7 @@ namespace HeavenStudio.Games.Scripts_MeatGrinder
private void Start()
{
game.ScheduleInput(startBeat, cueLength, InputType.STANDARD_DOWN | InputType.DIRECTION_DOWN, Hit, Miss, Nothing);
game.ScheduleInput(startBeat, cueLength, MeatGrinder.InputAction_Press, Hit, Miss, Nothing);
BeatAction.New(this, new List<BeatAction.Action>() {
new BeatAction.Action(cueBased ? startBeat + 0.66f : cueLength + startBeat - 1 + 0.66f, delegate {

View file

@ -255,7 +255,7 @@ namespace HeavenStudio.Games
string dir = (stepIterate % 2 == 1) ? "Right" : "Left";
metronomeAnim.DoScaledAnimationAsync("MetronomeGo" + dir, 0.5f);
SoundByte.PlayOneShotGame("mrUpbeat/metronome" + dir);
ScheduleInput(beat, 0.5f, InputType.STANDARD_DOWN, Success, Miss, Nothing);
ScheduleInput(beat, 0.5f, InputAction_BasicPress, Success, Miss, Nothing);
BeatAction.New(this, new List<BeatAction.Action>() {
new(beat + 1, delegate { RecursiveStepping(beat + 1); })
});
@ -267,7 +267,7 @@ namespace HeavenStudio.Games
var actions = new List<BeatAction.Action>();
for (int i = 0; i < length; i++)
{
ScheduleInput(beat + i, 0.5f, InputType.STANDARD_DOWN, Success, Miss, Nothing);
ScheduleInput(beat + i, 0.5f, InputAction_BasicPress, Success, Miss, Nothing);
actions.Add(new BeatAction.Action(beat + i, delegate {
string dir = (stepIterate % 2 == 1) ? "Right" : "Left";
metronomeAnim.DoScaledAnimationAsync("MetronomeGo" + dir, 0.5f);

View file

@ -30,7 +30,7 @@ namespace HeavenStudio.Games.Scripts_MrUpbeat
{
blipText.transform.localScale = Vector3.one;
if (PlayerInput.Pressed() && !game.IsExpectingInputNow(InputType.STANDARD_DOWN)) {
if (PlayerInput.GetIsAction(MrUpbeat.InputAction_BasicPress) && !game.IsExpectingInputNow(MrUpbeat.InputAction_BasicPress)) {
Step(true);
}
}

View file

@ -278,8 +278,7 @@ namespace HeavenStudio.Games
private void Update()
{
// input stuff
if (PlayerInput.Pressed() && !IsExpectingInputNow(InputType.STANDARD_DOWN)) {
Debug.Log("ooops" + PlayerInput.Pressed());
if (PlayerInput.GetIsAction(InputAction_BasicPress) && !IsExpectingInputNow(InputAction_BasicPress)) {
MonkArmsAnim.DoScaledAnimationAsync("WristSlap", 0.5f);
SoundByte.PlayOneShotGame(sfxName+"slap");
isStaring = false;
@ -432,7 +431,7 @@ namespace HeavenStudio.Games
DumplingClone.startBeat = beat;
DumplingClone.sr.sprite = dumplingSprites[0];
dumplings.Add(DumplingClone);
ScheduleInput(beat, 1f, InputType.STANDARD_DOWN, Hit, Miss, Early);
ScheduleInput(beat, 1f, InputAction_BasicPress, Hit, Miss, Early);
}),
new BeatAction.Action(beat+0.5f, delegate {
OneGiverAnim.DoScaledAnimationAsync("GiveOut", 0.5f);
@ -462,7 +461,7 @@ namespace HeavenStudio.Games
DumplingClone1.startBeat = beat-0.5f;
DumplingClone1.sr.sprite = dumplingSprites[1];
dumplings.Add(DumplingClone1);
ScheduleInput(beat, 1f, InputType.STANDARD_DOWN, Hit, Miss, Early);
ScheduleInput(beat, 1f, InputAction_BasicPress, Hit, Miss, Early);
//DumplingClone1.otherAnim = DumplingClone2.gameObject.GetComponent<Animator>();
}),
new BeatAction.Action(beat, delegate {
@ -473,7 +472,7 @@ namespace HeavenStudio.Games
DumplingClone2.startBeat = beat-0.5f;
DumplingClone2.sr.sprite = dumplingSprites[2];
dumplings.Add(DumplingClone2);
ScheduleInput(beat, 1.5f, InputType.STANDARD_DOWN, Hit, Miss, Early);
ScheduleInput(beat, 1.5f, InputAction_BasicPress, Hit, Miss, Early);
}),
});
}
@ -502,7 +501,7 @@ namespace HeavenStudio.Games
DumplingClone1.startBeat = beat;
DumplingClone1.sr.sprite = dumplingSprites[3];
dumplings.Add(DumplingClone1);
ScheduleInput(beat, 1f, InputType.STANDARD_DOWN, Hit, Miss, Early); }),
ScheduleInput(beat, 1f, InputAction_BasicPress, Hit, Miss, Early); }),
new BeatAction.Action(beat+0.5f, delegate {
// first out
@ -517,7 +516,7 @@ namespace HeavenStudio.Games
DumplingClone2.startBeat = beat+1.3f;
DumplingClone2.sr.sprite = dumplingSprites[4];
dumplings.Add(DumplingClone2);
ScheduleInput(beat, 2f, InputType.STANDARD_DOWN, Hit, Miss, Early); }),
ScheduleInput(beat, 2f, InputAction_BasicPress, Hit, Miss, Early); }),
new BeatAction.Action(beat+1.75f, delegate {
// second out
@ -532,7 +531,7 @@ namespace HeavenStudio.Games
DumplingClone3.startBeat = beat+2.3f;
DumplingClone3.sr.sprite = dumplingSprites[5];
dumplings.Add(DumplingClone3);
ScheduleInput(beat, 3f, InputType.STANDARD_DOWN, Hit, Miss, Early); }),
ScheduleInput(beat, 3f, InputAction_BasicPress, Hit, Miss, Early); }),
new BeatAction.Action(beat+2.75f, delegate {
// third out

View file

@ -35,7 +35,7 @@ namespace HeavenStudio.Games.Loaders
{
function = delegate { RhythmSomen.instance.Slurp(eventCaller.currentEntity.beat); }
},
new GameAction("bop", "Bop")
new GameAction("bop", "Bop")
{
function = delegate { var e = eventCaller.currentEntity; RhythmSomen.instance.ToggleBop(e.beat, e.length, e["toggle2"], e["toggle"]); },
resizable = true,
@ -46,9 +46,9 @@ namespace HeavenStudio.Games.Loaders
}
}
},
new List<string>() {"pco", "normal"},
new List<string>() { "pco", "normal" },
"pcosomen", "en",
new List<string>() {}
new List<string>() { }
);
}
}
@ -93,7 +93,7 @@ namespace HeavenStudio.Games
SomenPlayer.Play("HeadBob", -1, 0);
}
if (PlayerInput.Pressed() && !IsExpectingInputNow())
if (PlayerInput.GetIsAction(InputAction_BasicPress) && !IsExpectingInputNow(InputAction_BasicPress))
{
SoundByte.PlayOneShotGame("rhythmSomen/somen_mistake");
FrontArm.Play("ArmPluck", -1, 0);
@ -146,7 +146,7 @@ namespace HeavenStudio.Games
public void DoFarCrane(double beat)
{
//Far Drop Multisound
ScheduleInput(beat, 3f, InputType.STANDARD_DOWN, CatchSuccess, CatchMiss, CatchEmpty);
ScheduleInput(beat, 3f, InputAction_BasicPress, CatchSuccess, CatchMiss, CatchEmpty);
MultiSound.Play(new MultiSound.Sound[] {
new MultiSound.Sound("rhythmSomen/somen_lowerfar", beat),
new MultiSound.Sound("rhythmSomen/somen_drop", beat + 1f),
@ -165,7 +165,7 @@ namespace HeavenStudio.Games
public void DoCloseCrane(double beat)
{
//Close Drop Multisound
ScheduleInput(beat, 2f, InputType.STANDARD_DOWN, CatchSuccess, CatchMiss, CatchEmpty);
ScheduleInput(beat, 2f, InputAction_BasicPress, CatchSuccess, CatchMiss, CatchEmpty);
MultiSound.Play(new MultiSound.Sound[] {
new MultiSound.Sound("rhythmSomen/somen_lowerclose", beat),
new MultiSound.Sound("rhythmSomen/somen_drop", beat + 1f),
@ -184,24 +184,24 @@ namespace HeavenStudio.Games
public void DoBothCrane(double beat)
{
//Both Drop Multisound
ScheduleInput(beat, 2f, InputType.STANDARD_DOWN, CatchSuccess, CatchMiss, CatchEmpty);
ScheduleInput(beat, 3f, InputType.STANDARD_DOWN, CatchSuccess, CatchMiss, CatchEmpty);
ScheduleInput(beat, 2f, InputAction_BasicPress, CatchSuccess, CatchMiss, CatchEmpty);
ScheduleInput(beat, 3f, InputAction_BasicPress, CatchSuccess, CatchMiss, CatchEmpty);
MultiSound.Play(new MultiSound.Sound[] {
new MultiSound.Sound("rhythmSomen/somen_lowerfar", beat),
new MultiSound.Sound("rhythmSomen/somen_doublealarm", beat),
new MultiSound.Sound("rhythmSomen/somen_drop", beat + 1f),
new MultiSound.Sound("rhythmSomen/somen_woosh", beat + 1.5f),
new MultiSound.Sound("rhythmSomen/somen_lowerfar", beat),
new MultiSound.Sound("rhythmSomen/somen_doublealarm", beat),
new MultiSound.Sound("rhythmSomen/somen_drop", beat + 1f),
new MultiSound.Sound("rhythmSomen/somen_woosh", beat + 1.5f),
});
BeatAction.New(instance, new List<BeatAction.Action>()
{
{
new BeatAction.Action(beat, delegate { CloseCrane.Play("DropClose", -1, 0);}),
new BeatAction.Action(beat, delegate { FarCrane.Play("Drop", -1, 0);}),
new BeatAction.Action(beat + 1.0f, delegate { CloseCrane.Play("OpenClose", -1, 0);}),
new BeatAction.Action(beat + 1.0f, delegate { FarCrane.Play("Open", -1, 0);}),
new BeatAction.Action(beat + 1.5f, delegate { CloseCrane.Play("LiftClose", -1, 0);}),
new BeatAction.Action(beat + 1.5f, delegate { FarCrane.Play("Lift", -1, 0);}),
});
});
}
@ -211,9 +211,9 @@ namespace HeavenStudio.Games
SoundByte.PlayOneShotGame("rhythmSomen/somen_bell");
BeatAction.New(instance, new List<BeatAction.Action>()
{
new BeatAction.Action(beat, delegate { EffectExclam.Play("ExclamAppear", -1, 0);}),
});
{
new BeatAction.Action(beat, delegate { EffectExclam.Play("ExclamAppear", -1, 0);}),
});
}