Even more space soccer animations + Clappy Trio Autoplay bug fixed

This commit is contained in:
Braedon 2022-01-24 22:49:40 -05:00
parent 8a42130953
commit aa86cac41b
16 changed files with 8022 additions and 49 deletions

View File

@ -189,7 +189,7 @@ Transform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 422879747917861779}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0.2850001, y: 0.199, z: 0}
m_LocalPosition: {x: 0.29, y: 0.41, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children:
- {fileID: 8092811434562901878}
@ -1005,8 +1005,22 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 848efddf5f5eaa94eacf8601e36f81bf, type: 3}
m_Name:
m_EditorClassIdentifier:
inList: 0
lastState: 0
state:
gameObject: {fileID: 0}
early: 0
perfect: 0
late: 0
createBeat: 0
isEligible: 0
eligibleHitsList: []
canKick: 0
canHighKick: 0
kickLeft: 0
dispenserBeat: 0
kickTimes: 0
ball: {fileID: 0}
--- !u!95 &8083744449129749329
Animator:
serializedVersion: 3
@ -1239,7 +1253,7 @@ Transform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3994873901200315503}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: -0.47293505, y: -5.7566233, z: 0}
m_LocalPosition: {x: -0.02, y: -5.7566233, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 1919782781487675894}
@ -1391,16 +1405,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 6b323a3095c4c2e4db991ebafc1384cc, type: 3}
m_Name:
m_EditorClassIdentifier:
inList: 0
lastState: 0
state:
gameObject: {fileID: 0}
early: 0
perfect: 0
late: 0
createBeat: 0
isEligible: 0
eligibleHitsList: []
kicker: {fileID: 2934863208182244691}
holder: {fileID: 7976131226454805035}
spriteHolder: {fileID: 6132156590540490080}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 9323724ed474d5446a64f84957e44cef
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: 2189bf0df8d4bcf4b94601149272d26d
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -36,13 +36,28 @@ AnimatorStateMachine:
m_Position: {x: 200, y: 0, z: 0}
- serializedVersion: 1
m_State: {fileID: -5556293797088629746}
m_Position: {x: 370, y: -80, z: 0}
m_Position: {x: 470, y: -110, z: 0}
- serializedVersion: 1
m_State: {fileID: -6379243465187239046}
m_Position: {x: 130, y: -130, z: 0}
m_Position: {x: 270, y: -170, z: 0}
- serializedVersion: 1
m_State: {fileID: 8478891986015278982}
m_Position: {x: 10, y: -80, z: 0}
m_Position: {x: 80, y: -250, z: 0}
- serializedVersion: 1
m_State: {fileID: 7214252332561217469}
m_Position: {x: 70, y: -180, z: 0}
- serializedVersion: 1
m_State: {fileID: 4293338196828537940}
m_Position: {x: 0, y: -120, z: 0}
- serializedVersion: 1
m_State: {fileID: 4874027166011885441}
m_Position: {x: 510, y: 60, z: 0}
- serializedVersion: 1
m_State: {fileID: 1683238663427647984}
m_Position: {x: 360, y: 160, z: 0}
- serializedVersion: 1
m_State: {fileID: 474450960241443026}
m_Position: {x: 310, y: 270, z: 0}
m_ChildStateMachines: []
m_AnyStateTransitions: []
m_EntryTransitions: []
@ -151,6 +166,32 @@ AnimatorController:
m_IKPass: 0
m_SyncedLayerAffectsTiming: 0
m_Controller: {fileID: 9100000}
--- !u!1102 &474450960241443026
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: ToeRight
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: dff9145efa9008a4daaea918da215697, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &933469538909251460
AnimatorState:
serializedVersion: 6
@ -177,6 +218,110 @@ AnimatorState:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &1683238663427647984
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: ToeLeft
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: 9c04a68b8fcd16e43a5a4c13580414bd, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &4293338196828537940
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: HighKickLeft_0
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: 9323724ed474d5446a64f84957e44cef, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &4874027166011885441
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: HighKickRight_1
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: 35a601045a812284bba989df8e3f9361, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &7214252332561217469
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: HighKickRight_0
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: 2189bf0df8d4bcf4b94601149272d26d, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:
--- !u!1102 &8478891986015278982
AnimatorState:
serializedVersion: 6

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 9c04a68b8fcd16e43a5a4c13580414bd
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: dff9145efa9008a4daaea918da215697
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 7400000
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

Before

Width:  |  Height:  |  Size: 886 KiB

After

Width:  |  Height:  |  Size: 912 KiB

View File

@ -7940,8 +7940,8 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: f86858990a87c764892672104bdaef1f, type: 3}
m_Name:
m_EditorClassIdentifier:
level: {fileID: 4900000, guid: fafaeee85f4121643a0699a4de97da53, type: 3}
music: {fileID: 8300000, guid: a0589cdba27fb254e90da17b4804c2fe, type: 3}
level: {fileID: 4900000, guid: 244c565c8088cfa4597e0ebda9c7de98, type: 3}
music: {fileID: 8300000, guid: e5cf71158cc9bff4a8fbfbca1e73e500, type: 3}
debugUI: 0
playOnStart: 0
editor: 1

View File

@ -6,12 +6,8 @@ using RhythmHeavenMania.Util;
namespace RhythmHeavenMania.Games.ClappyTrio
{
public class ClappyTrioPlayer : MonoBehaviour
public class ClappyTrioPlayer : PlayerActionObject
{
public bool early;
public bool perfect;
public bool late;
private float lastClapBeat;
private float lastClapLength;
[SerializeField] private bool clapVacant;
@ -24,24 +20,30 @@ namespace RhythmHeavenMania.Games.ClappyTrio
public bool canHit;
private GameObject clapEffect;
int aceTimes = 0;
private void Start()
{
clapEffect = transform.GetChild(4).GetChild(3).gameObject;
}
public override void OnAce()
{
Clap(true);
}
private void Update()
{
if (PlayerInput.Pressed())
{
Clap();
Clap(false);
}
if (clapVacant == true)
{
float normalizedBeat = (Conductor.instance.GetLoopPositionFromBeat(lastClapBeat, lastClapLength));
if (normalizedBeat > Minigame.EarlyTime() && normalizedBeat < Minigame.PerfectTime() && lastIndex == 0)
/*if (normalizedBeat > Minigame.EarlyTime() && normalizedBeat < Minigame.PerfectTime() && lastIndex == 0)
{
SetEligibility(true, false, false);
lastIndex++;
@ -60,6 +62,16 @@ namespace RhythmHeavenMania.Games.ClappyTrio
lastClapLength = 0;
lastClapBeat = 0;
hit = false;
}*/
StateCheck(normalizedBeat);
if (normalizedBeat > Minigame.LateTime())
{
clapVacant = false;
lastIndex = 0;
lastClapLength = 0;
lastClapBeat = 0;
}
}
}
@ -74,30 +86,17 @@ namespace RhythmHeavenMania.Games.ClappyTrio
public void SetClapAvailability(float startBeat, float length)
{
ResetAce();
lastClapBeat = startBeat;
clapVacant = true;
lastClapLength = length;
}
private void SetEligibility(bool early, bool perfect, bool late)
private void Clap(bool overrideCanHit)
{
this.early = false;
this.perfect = false;
this.late = false;
bool canHit = state.early != true && state.late != true && state.perfect == true && hit == false;
if (early)
this.early = true;
else if (perfect)
this.perfect = true;
else if (late)
this.late = true;
}
private void Clap()
{
bool canHit = early != true && late != true && perfect == true && hit == false;
if (canHit)
if (canHit || overrideCanHit)
{
clapEffect.SetActive(true);
Jukebox.PlayOneShotGame("clappyTrio/rightClap");

View File

@ -33,7 +33,7 @@ namespace RhythmHeavenMania.Games
{
OnAce();
AceVisuals();
// aceTimes++;
aceTimes++;
}
}
}

View File

@ -85,7 +85,7 @@ namespace RhythmHeavenMania.Games.SpaceSoccer
{
if (dispensing)
{
float normalizedBeatAnim = Conductor.instance.GetLoopPositionFromBeat(dispensedBeat, 2.5f);
float normalizedBeatAnim = Conductor.instance.GetLoopPositionFromBeat(dispensedBeat, 2.35f);
holder.transform.position = dispenseCurve.GetPoint(normalizedBeatAnim);
spriteHolder.transform.eulerAngles = new Vector3(0, 0, Mathf.Lerp(0f, -1440f, normalizedBeatAnim));
@ -128,9 +128,9 @@ namespace RhythmHeavenMania.Games.SpaceSoccer
}
else if (highKicked.enabled)
{
float normalizedBeatAnim = Conductor.instance.GetLoopPositionFromBeat(highKicked.startBeat, 1.85f);
float normalizedBeatAnim = Conductor.instance.GetLoopPositionFromBeat(highKicked.startBeat, 1.8f);
holder.transform.position = highKickCurve.GetPoint(normalizedBeatAnim);
spriteHolder.transform.eulerAngles = new Vector3(0, 0, Mathf.Lerp(lastSpriteRot, -460f, normalizedBeatAnim));
spriteHolder.transform.eulerAngles = new Vector3(0, 0, Mathf.Lerp(lastSpriteRot, lastSpriteRot + 360f, normalizedBeatAnim));
// if (state.perfect) Debug.Break();

View File

@ -55,13 +55,27 @@ namespace RhythmHeavenMania.Games.SpaceSoccer
{
kickTimes++;
if (kickLeft)
if (highKick)
{
anim.Play("KickLeft", 0, 0);
if (kickLeft)
{
anim.Play("HighKickLeft_0", 0, 0);
}
else
{
anim.Play("HighKickRight_0", 0, 0);
}
}
else
else if (!highKick)
{
anim.Play("KickRight", 0, 0);
if (kickLeft)
{
anim.Play("KickLeft", 0, 0);
}
else
{
anim.Play("KickRight", 0, 0);
}
}
if (highKick == false)
{
@ -77,6 +91,8 @@ namespace RhythmHeavenMania.Games.SpaceSoccer
public void HighKick(bool hit)
{
kickTimes++;
if (hit)
{
Jukebox.PlayOneShotGame("spaceSoccer/highkicktoe1_hit");
@ -86,6 +102,15 @@ namespace RhythmHeavenMania.Games.SpaceSoccer
Jukebox.PlayOneShotGame("spaceSoccer/highkicktoe1");
}
if (kickLeft)
{
anim.Play("HighKickLeft_0", 0, 0);
}
else
{
anim.Play("HighKickRight_0", 0, 0);
}
ball.HighKick();
ResetState();
}
@ -100,6 +125,16 @@ namespace RhythmHeavenMania.Games.SpaceSoccer
{
Jukebox.PlayOneShotGame("spaceSoccer/highkicktoe3");
}
if (kickLeft)
{
anim.Play("ToeLeft", 0, 0);
}
else
{
anim.Play("ToeRight", 0, 0);
}
ball.Toe();
kickPrepare = false;
ResetState();