From ec5cc164931788250d4cafa712bbc342e1f267ba Mon Sep 17 00:00:00 2001 From: Jenny Crowe Date: Mon, 14 Feb 2022 01:53:58 -0700 Subject: [PATCH] Rhythm Rally: Basic gameplay setup --- .../Scripts/Editor/BezierPoint3DEditor.cs | 6 +- Assets/Resources/Games/rhythmRally.prefab | 311 ++++++++++++++++-- Assets/Resources/Sfx/games/rhythmRally.meta | 8 + .../Sfx/games/rhythmRally/Return.ogg | Bin 0 -> 8947 bytes .../Sfx/games/rhythmRally/Return.ogg.meta | 22 ++ .../Sfx/games/rhythmRally/ReturnBounce.ogg | Bin 0 -> 9534 bytes .../games/rhythmRally/ReturnBounce.ogg.meta | 22 ++ .../Resources/Sfx/games/rhythmRally/Serve.ogg | Bin 0 -> 8922 bytes .../Sfx/games/rhythmRally/Serve.ogg.meta | 22 ++ .../Sfx/games/rhythmRally/ServeBounce.ogg | Bin 0 -> 9612 bytes .../games/rhythmRally/ServeBounce.ogg.meta | 22 ++ .../Resources/Sfx/games/rhythmRally/Tink.ogg | Bin 0 -> 9255 bytes .../Sfx/games/rhythmRally/Tink.ogg.meta | 22 ++ .../Resources/Sfx/games/rhythmRally/Tonk.ogg | Bin 0 -> 8884 bytes .../Sfx/games/rhythmRally/Tonk.ogg.meta | 22 ++ .../Sfx/games/rhythmRally/Whistle.ogg | Bin 0 -> 23564 bytes .../Sfx/games/rhythmRally/Whistle.ogg.meta | 22 ++ .../Games/RhythmRally/Paddler.controller | 41 ++- Assets/Scripts/Games/RhythmRally/Paddlers.cs | 101 ++++++ .../Games/RhythmRally/Paddlers.cs.meta | 11 + .../Scripts/Games/RhythmRally/RhythmRally.cs | 253 +++++++++++++- Assets/Scripts/Minigames.cs | 6 +- 22 files changed, 842 insertions(+), 49 deletions(-) create mode 100644 Assets/Resources/Sfx/games/rhythmRally.meta create mode 100644 Assets/Resources/Sfx/games/rhythmRally/Return.ogg create mode 100644 Assets/Resources/Sfx/games/rhythmRally/Return.ogg.meta create mode 100644 Assets/Resources/Sfx/games/rhythmRally/ReturnBounce.ogg create mode 100644 Assets/Resources/Sfx/games/rhythmRally/ReturnBounce.ogg.meta create mode 100644 Assets/Resources/Sfx/games/rhythmRally/Serve.ogg create mode 100644 Assets/Resources/Sfx/games/rhythmRally/Serve.ogg.meta create mode 100644 Assets/Resources/Sfx/games/rhythmRally/ServeBounce.ogg create mode 100644 Assets/Resources/Sfx/games/rhythmRally/ServeBounce.ogg.meta create mode 100644 Assets/Resources/Sfx/games/rhythmRally/Tink.ogg create mode 100644 Assets/Resources/Sfx/games/rhythmRally/Tink.ogg.meta create mode 100644 Assets/Resources/Sfx/games/rhythmRally/Tonk.ogg create mode 100644 Assets/Resources/Sfx/games/rhythmRally/Tonk.ogg.meta create mode 100644 Assets/Resources/Sfx/games/rhythmRally/Whistle.ogg create mode 100644 Assets/Resources/Sfx/games/rhythmRally/Whistle.ogg.meta create mode 100644 Assets/Scripts/Games/RhythmRally/Paddlers.cs create mode 100644 Assets/Scripts/Games/RhythmRally/Paddlers.cs.meta diff --git a/Assets/Plugins/NaughtyBezierCurves/Scripts/Editor/BezierPoint3DEditor.cs b/Assets/Plugins/NaughtyBezierCurves/Scripts/Editor/BezierPoint3DEditor.cs index e8624a8e..0fce2762 100644 --- a/Assets/Plugins/NaughtyBezierCurves/Scripts/Editor/BezierPoint3DEditor.cs +++ b/Assets/Plugins/NaughtyBezierCurves/Scripts/Editor/BezierPoint3DEditor.cs @@ -37,14 +37,16 @@ namespace NaughtyBezierCurves.Editor EditorGUILayout.PropertyField(this.leftHandleLocalPosition); if (EditorGUI.EndChangeCheck()) { - this.rightHandleLocalPosition.vector3Value = -this.leftHandleLocalPosition.vector3Value; + if (this.handleType.enumValueIndex == (int)BezierPoint3D.HandleType.Connected) + this.rightHandleLocalPosition.vector3Value = -this.leftHandleLocalPosition.vector3Value; } EditorGUI.BeginChangeCheck(); EditorGUILayout.PropertyField(this.rightHandleLocalPosition); if (EditorGUI.EndChangeCheck()) { - this.leftHandleLocalPosition.vector3Value = -this.rightHandleLocalPosition.vector3Value; + if (this.handleType.enumValueIndex == (int)BezierPoint3D.HandleType.Connected) + this.leftHandleLocalPosition.vector3Value = -this.rightHandleLocalPosition.vector3Value; } this.serializedObject.ApplyModifiedProperties(); diff --git a/Assets/Resources/Games/rhythmRally.prefab b/Assets/Resources/Games/rhythmRally.prefab index 4d19119e..60b64e81 100644 --- a/Assets/Resources/Games/rhythmRally.prefab +++ b/Assets/Resources/Games/rhythmRally.prefab @@ -31,7 +31,7 @@ Transform: - {fileID: 3078425781313688086} - {fileID: 4228713593463920381} - {fileID: 4959957736091286558} - - {fileID: 1845910055258765698} + - {fileID: 227248172885675867} - {fileID: 3001474442492713424} - {fileID: 2651138408829433753} m_Father: {fileID: 3337760827311893485} @@ -48,7 +48,7 @@ GameObject: - component: {fileID: 1845910055258765698} - component: {fileID: 6371738825610660614} m_Layer: 10 - m_Name: GameObject + m_Name: ServeCurve m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -61,16 +61,16 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 513601240051193262} - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalRotation: {x: -0, y: 0.029666247, z: -0, w: 0.9995599} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 8175507810436109978} - {fileID: 8145851341164007221} - {fileID: 5184658146293876446} - m_Father: {fileID: 4631944531018638297} - m_RootOrder: 4 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_Father: {fileID: 227248172885675867} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 3.4, z: 0} --- !u!114 &6371738825610660614 MonoBehaviour: m_ObjectHideFlags: 0 @@ -544,6 +544,53 @@ MeshCollider: m_Convex: 0 m_CookingOptions: 30 m_Mesh: {fileID: 10210, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &2973188548200904564 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5582897510054026688} + - component: {fileID: 489672749043040511} + m_Layer: 10 + m_Name: Point 0 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5582897510054026688 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2973188548200904564} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 2.1} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 2492954830728060394} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &489672749043040511 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2973188548200904564} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b0cca3244f403c24f819a870f31cdc29, type: 3} + m_Name: + m_EditorClassIdentifier: + curve: {fileID: 2715991891693212353} + handleType: 0 + leftHandleLocalPosition: {x: 0, y: -0.5382855, z: 0.5024216} + rightHandleLocalPosition: {x: -0, y: 0.5382855, z: -0.5024216} --- !u!1 &3112497704503559489 GameObject: m_ObjectHideFlags: 0 @@ -553,6 +600,7 @@ GameObject: serializedVersion: 6 m_Component: - component: {fileID: 3001474442492713424} + - component: {fileID: 2423225589381961324} m_Layer: 10 m_Name: Paddlers m_TagString: Untagged @@ -576,6 +624,29 @@ Transform: m_Father: {fileID: 4631944531018638297} m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &2423225589381961324 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3112497704503559489} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: dbf752ba115326446a543da7b734edb8, 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: [] + aceTimes: 0 --- !u!1 &3340141389927785323 GameObject: m_ObjectHideFlags: 0 @@ -698,7 +769,7 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3667855830336901894} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0.8373877, z: 1.925} + m_LocalPosition: {x: 0, y: 0, z: 2.1} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1845910055258765698} @@ -853,7 +924,7 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4262381482084858378} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0.06567192, y: 0.8302344, z: -2.1034844} + m_LocalPosition: {x: 0, y: 0, z: -2.1} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1845910055258765698} @@ -873,8 +944,8 @@ MonoBehaviour: m_EditorClassIdentifier: curve: {fileID: 6371738825610660614} handleType: 0 - leftHandleLocalPosition: {x: -0.42184877, y: 0.749552, z: 0.25117397} - rightHandleLocalPosition: {x: 0.42184877, y: -0.749552, z: -0.25117397} + leftHandleLocalPosition: {x: 0, y: 0.5382855, z: 0.5024216} + rightHandleLocalPosition: {x: -0, y: -0.5382855, z: -0.5024216} --- !u!1 &4412551583113167986 GameObject: m_ObjectHideFlags: 0 @@ -900,7 +971,7 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4412551583113167986} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0.74140847, z: -0.3736241} + m_LocalPosition: {x: 0, y: 0, z: -0.3736241} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1845910055258765698} @@ -920,8 +991,110 @@ MonoBehaviour: m_EditorClassIdentifier: curve: {fileID: 6371738825610660614} handleType: 1 - leftHandleLocalPosition: {x: 0, y: 0.8176588, z: 0.45496285} - rightHandleLocalPosition: {x: 0.22773409, y: 0.8552635, z: -0.3745283} + leftHandleLocalPosition: {x: 0, y: 0.55, z: 0.45496285} + rightHandleLocalPosition: {x: 0, y: 0.45, z: -0.4549628} +--- !u!1 &5224037407349900874 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6753035230022650674} + - component: {fileID: 967116196545722175} + m_Layer: 10 + m_Name: Point 1 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6753035230022650674 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5224037407349900874} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: -0.3736241} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 2492954830728060394} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &967116196545722175 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5224037407349900874} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b0cca3244f403c24f819a870f31cdc29, type: 3} + m_Name: + m_EditorClassIdentifier: + curve: {fileID: 2715991891693212353} + handleType: 1 + leftHandleLocalPosition: {x: 0, y: 0.55, z: 0.45496285} + rightHandleLocalPosition: {x: 0, y: 0.45, z: -0.4549628} +--- !u!1 &6878547494759724039 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2492954830728060394} + - component: {fileID: 2715991891693212353} + m_Layer: 10 + m_Name: ReturnCurve + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2492954830728060394 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6878547494759724039} + m_LocalRotation: {x: -0, y: 0.9995599, z: -0, w: -0.029666154} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 5582897510054026688} + - {fileID: 6753035230022650674} + - {fileID: 2008423486364638542} + m_Father: {fileID: 227248172885675867} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 183.4, z: 0} +--- !u!114 &2715991891693212353 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6878547494759724039} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 066a41e004f415b4eb74d5e61a2aadbe, type: 3} + m_Name: + m_EditorClassIdentifier: + curveColor: {r: 0, g: 1, b: 0, a: 1} + startPointColor: {r: 1, g: 0, b: 0, a: 1} + endPointColor: {r: 0, g: 0, b: 1, a: 1} + sampling: 25 + keyPoints: + - {fileID: 489672749043040511} + - {fileID: 967116196545722175} + - {fileID: 4405872811281721058} + normalizedTime: 0.5 --- !u!1 &7041748797742148697 GameObject: m_ObjectHideFlags: 0 @@ -1086,6 +1259,53 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 +--- !u!1 &7366375554666111783 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2008423486364638542} + - component: {fileID: 4405872811281721058} + m_Layer: 10 + m_Name: Point 2 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2008423486364638542 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7366375554666111783} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: -2.1} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 2492954830728060394} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &4405872811281721058 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7366375554666111783} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: b0cca3244f403c24f819a870f31cdc29, type: 3} + m_Name: + m_EditorClassIdentifier: + curve: {fileID: 2715991891693212353} + handleType: 0 + leftHandleLocalPosition: {x: 0, y: 0.5382855, z: 0.5024216} + rightHandleLocalPosition: {x: -0, y: -0.5382855, z: -0.5024216} --- !u!1 &8070718553788868724 GameObject: m_ObjectHideFlags: 0 @@ -1136,9 +1356,50 @@ MonoBehaviour: renderQuadTrans: {fileID: 743597382397742394} cameraPos: {fileID: 6509993024069972873} ball: {fileID: 1668061868608559892} - curve3D: {fileID: 6371738825610660614} + ballShadow: {fileID: 7207398029238753263} + serveCurve: {fileID: 6371738825610660614} + returnCurve: {fileID: 2715991891693212353} playerAnim: {fileID: 9089436218394572253} opponentAnim: {fileID: 4559734961269837672} + rallySpeed: 1 + started: 0 + missed: 0 + served: 0 + serveBeat: 0 + targetBeat: 0 + paddlers: {fileID: 2423225589381961324} +--- !u!1 &9182704984975526523 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 227248172885675867} + m_Layer: 10 + m_Name: Curves + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &227248172885675867 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 9182704984975526523} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0.712, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: + - {fileID: 1845910055258765698} + - {fileID: 2492954830728060394} + m_Father: {fileID: 4631944531018638297} + m_RootOrder: 4 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1001 &146447278275535207 PrefabInstance: m_ObjectHideFlags: 0 @@ -1344,16 +1605,16 @@ PrefabInstance: objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: cebeb8610d89fb34688750080a285ddb, type: 3} ---- !u!4 &397144130134918796 stripped -Transform: - m_CorrespondingSourceObject: {fileID: -8679921383154817045, guid: cebeb8610d89fb34688750080a285ddb, type: 3} - m_PrefabInstance: {fileID: 146447278275535207} - m_PrefabAsset: {fileID: 0} --- !u!1 &1065418898597387318 stripped GameObject: m_CorrespondingSourceObject: {fileID: 919132149155446097, guid: cebeb8610d89fb34688750080a285ddb, type: 3} m_PrefabInstance: {fileID: 146447278275535207} m_PrefabAsset: {fileID: 0} +--- !u!4 &397144130134918796 stripped +Transform: + m_CorrespondingSourceObject: {fileID: -8679921383154817045, guid: cebeb8610d89fb34688750080a285ddb, type: 3} + m_PrefabInstance: {fileID: 146447278275535207} + m_PrefabAsset: {fileID: 0} --- !u!95 &4559734961269837672 Animator: serializedVersion: 3 @@ -1994,9 +2255,9 @@ PrefabInstance: objectReference: {fileID: 0} m_RemovedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: cebeb8610d89fb34688750080a285ddb, type: 3} ---- !u!4 &7291063904195614871 stripped -Transform: - m_CorrespondingSourceObject: {fileID: -8679921383154817045, guid: cebeb8610d89fb34688750080a285ddb, type: 3} +--- !u!1 &7954728381481796141 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 919132149155446097, guid: cebeb8610d89fb34688750080a285ddb, type: 3} m_PrefabInstance: {fileID: 7108288251017691004} m_PrefabAsset: {fileID: 0} --- !u!4 &2075964892847120759 stripped @@ -2004,9 +2265,9 @@ Transform: m_CorrespondingSourceObject: {fileID: 9109367605909020171, guid: cebeb8610d89fb34688750080a285ddb, type: 3} m_PrefabInstance: {fileID: 7108288251017691004} m_PrefabAsset: {fileID: 0} ---- !u!1 &7954728381481796141 stripped -GameObject: - m_CorrespondingSourceObject: {fileID: 919132149155446097, guid: cebeb8610d89fb34688750080a285ddb, type: 3} +--- !u!4 &7291063904195614871 stripped +Transform: + m_CorrespondingSourceObject: {fileID: -8679921383154817045, guid: cebeb8610d89fb34688750080a285ddb, type: 3} m_PrefabInstance: {fileID: 7108288251017691004} m_PrefabAsset: {fileID: 0} --- !u!95 &9089436218394572253 diff --git a/Assets/Resources/Sfx/games/rhythmRally.meta b/Assets/Resources/Sfx/games/rhythmRally.meta new file mode 100644 index 00000000..5b797a1e --- /dev/null +++ b/Assets/Resources/Sfx/games/rhythmRally.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 4c744f63674c0944696afb5461b82c32 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Sfx/games/rhythmRally/Return.ogg b/Assets/Resources/Sfx/games/rhythmRally/Return.ogg new file mode 100644 index 0000000000000000000000000000000000000000..df2f73dc71d8fd72ea2c9dfb7522adbc0433e519 GIT binary patch literal 8947 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 literal 0 HcmV?d00001 diff --git a/Assets/Resources/Sfx/games/rhythmRally/Return.ogg.meta b/Assets/Resources/Sfx/games/rhythmRally/Return.ogg.meta new file mode 100644 index 00000000..b00e87ed --- /dev/null +++ b/Assets/Resources/Sfx/games/rhythmRally/Return.ogg.meta @@ -0,0 +1,22 @@ +fileFormatVersion: 2 +guid: d854894fefdb48d4f935a0441e54ca5b +AudioImporter: + externalObjects: {} + serializedVersion: 6 + defaultSettings: + loadType: 0 + sampleRateSetting: 0 + sampleRateOverride: 44100 + compressionFormat: 1 + quality: 1 + conversionMode: 0 + platformSettingOverrides: {} + forceToMono: 0 + normalize: 1 + preloadAudioData: 1 + loadInBackground: 0 + ambisonic: 0 + 3D: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Sfx/games/rhythmRally/ReturnBounce.ogg b/Assets/Resources/Sfx/games/rhythmRally/ReturnBounce.ogg new file mode 100644 index 0000000000000000000000000000000000000000..dd473b0d44d9adb876c27e483d099e619acb31f6 GIT binary patch literal 9534 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 BNO=GN literal 0 HcmV?d00001 diff --git a/Assets/Resources/Sfx/games/rhythmRally/ReturnBounce.ogg.meta b/Assets/Resources/Sfx/games/rhythmRally/ReturnBounce.ogg.meta new file mode 100644 index 00000000..ba9f92c2 --- /dev/null +++ b/Assets/Resources/Sfx/games/rhythmRally/ReturnBounce.ogg.meta @@ -0,0 +1,22 @@ +fileFormatVersion: 2 +guid: 173cbb29d51db6d409a6c80bc5a3e46e +AudioImporter: + externalObjects: {} + serializedVersion: 6 + defaultSettings: + loadType: 0 + sampleRateSetting: 0 + sampleRateOverride: 44100 + compressionFormat: 1 + quality: 1 + conversionMode: 0 + platformSettingOverrides: {} + forceToMono: 0 + normalize: 1 + preloadAudioData: 1 + loadInBackground: 0 + ambisonic: 0 + 3D: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Sfx/games/rhythmRally/Serve.ogg b/Assets/Resources/Sfx/games/rhythmRally/Serve.ogg new file mode 100644 index 0000000000000000000000000000000000000000..b98654d340a1805bb4367ead5c5fb7a9fd24e94a GIT binary patch literal 8922 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 literal 0 HcmV?d00001 diff --git a/Assets/Resources/Sfx/games/rhythmRally/ServeBounce.ogg.meta b/Assets/Resources/Sfx/games/rhythmRally/ServeBounce.ogg.meta new file mode 100644 index 00000000..82975082 --- /dev/null +++ b/Assets/Resources/Sfx/games/rhythmRally/ServeBounce.ogg.meta @@ -0,0 +1,22 @@ +fileFormatVersion: 2 +guid: 6d40249697886244897f3513c8005b88 +AudioImporter: + externalObjects: {} + serializedVersion: 6 + defaultSettings: + loadType: 0 + sampleRateSetting: 0 + sampleRateOverride: 44100 + compressionFormat: 1 + quality: 1 + conversionMode: 0 + platformSettingOverrides: {} + forceToMono: 0 + normalize: 1 + preloadAudioData: 1 + loadInBackground: 0 + ambisonic: 0 + 3D: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Sfx/games/rhythmRally/Tink.ogg b/Assets/Resources/Sfx/games/rhythmRally/Tink.ogg new file mode 100644 index 0000000000000000000000000000000000000000..0c95ebf240feb45d42b51f329def59f4264ea1b4 GIT binary patch literal 9255 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 literal 0 HcmV?d00001 diff --git a/Assets/Resources/Sfx/games/rhythmRally/Tink.ogg.meta b/Assets/Resources/Sfx/games/rhythmRally/Tink.ogg.meta new file mode 100644 index 00000000..b11415d3 --- /dev/null +++ b/Assets/Resources/Sfx/games/rhythmRally/Tink.ogg.meta @@ -0,0 +1,22 @@ +fileFormatVersion: 2 +guid: f85a462359c62d2488297f10ae8dbad9 +AudioImporter: + externalObjects: {} + serializedVersion: 6 + defaultSettings: + loadType: 0 + sampleRateSetting: 0 + sampleRateOverride: 44100 + compressionFormat: 1 + quality: 1 + conversionMode: 0 + platformSettingOverrides: {} + forceToMono: 0 + normalize: 1 + preloadAudioData: 1 + loadInBackground: 0 + ambisonic: 0 + 3D: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Sfx/games/rhythmRally/Tonk.ogg b/Assets/Resources/Sfx/games/rhythmRally/Tonk.ogg new file mode 100644 index 0000000000000000000000000000000000000000..593fc4682f681d53b6c9b4634c9d8c2afc5437b2 GIT binary patch literal 8884 zcmeHsc~sL!*YG4^2_ayB0AVQ&5F~-11Of$@8UjHGi)=wa(GZEUh-DMSrTwvKh=A;} zT6Q6T51>%Rr4bFX3nDJ)gSdigwYb){yc4i}`}KRy`+Vm-=lk!SGnq4U@11*pbC;Pr zlXcs+`2#fgT-L8%?C2L88KaC)N#Dc^A`|2wv`foplDI|UQ>bqK zca-AdR2thk5CyOh!tf-^kkMQo00aQ|6q7xfxHbR^0HLbn)IN5P8gbl4GS7*xa*XtLI7U_$`%XKm^t@fVWkJ2>D`zjFHI&3dR*TCb0|YJ; ztj#03w-X234Tr}l>wc#DYT1q1a{L3lc(CjYU7sYpk+kzh(*EF*j18yu2cOE=a5E$H zeMT7Rz~}m5|K0cUy0COI3RIao7C)fXnCREscdWsrA80{?aJfpzD)}a~{95;htx?A# z%ex|)yJ7}A=z|^j1rlgg1^L&2s>rg2|Eq2dE*Ad#%8KZ-04%7>%W;O6<0u?I%H?>v z@`8r@0JJH~k1mU6u1#QGPFMx&+C-QBLeJqho=g5Pg52x?uo#B2IKzIZ4L_^#c)Rrp zt8XND-GHi)Yvg|}DGUAr7h+twwKxjF+UABWs0D#+N!3_q{GudCAgX>yE*mYI8+KGL zdsNj#EFZs+8BlJ1x~Zgm!GhaI^d3N4(gsRpRi&e42_x?KviikdvSzt*YtvN-)0?SK z@6`)~bdgufl$&k^!MVYsWse(A6Jam2u-v@!big9N&u-DQsbb`U<2^VdbFw`8v`Q%K zeGIR7Ijkaw{oQ?7&~9NjNxhY+1uy=iS#ae=FRsfMTMST74A~6Q<@-Sv2q;krPL}oM+gdNAc*OcwMCr|IA!B#~jn*_%glxwL{0WcaG}_{p~}??S$hz z;Y5<~R+n(Y5Br0=J_pQV*xbFb^DmJj4-pf`oCj|C3jZBBRn(mO4mqao`IO-NrOCzH zGRvAuk3MOt!Tl|ABE-i^#K%P98Bq>3vp6!dOmezr`@r#M-T$`!898g?DX_xG;lxw^ z5;;_0?M=qwp^&mdmA z9}@LNLcpQy)^Il`tFB%@<429kaNEOzYCWKS8D;2&G4#N|$decMao|Nn4Qt5{4_KsQ zOqSMamKJAm_@A{<5Ytxy*3WF9ps@hd81u6%C`D?^VKL!J@}HM~A3=!=uLl0D2B3?h)ZtHuU2SZMMjTM!-~(1Z+5Ht0*%JI})oy)Ht?3}0RZGg0 z$Nz{9c)#H`EIkUn zYCJu%hZ!dM*B^%ffS{BC0<;ELe|}S~nOeHIZVCq~P^&VXsAqfBLnn*o9%n2se5 zUS;||bSSQmtm%uRdyKo}31JeHX~KkEjiWQk4JudW;JT^enn*M}UZC0)Yp7zFKS>7S=!0`EzC0chGI=bSwoWqo+PXV!ik-sx*|DD0#6sT zoQM~CqezHE!g<}t>6n1Uv0jx#^0fQ7DRxDFV+Yp2 z>(nbi)bB6>BIpZQVO&N%ev2j>R~_cbb~6t5^RuAUuzWT&wzGKSkrB zd~OrD&d-mg2#_xv;4cW9aiB#3{0y_bEro(1#~BKn%XnOoplMuBg6T~Yaf>|1Da>cU zJlUJuUjkv~_2H1NqQGwjgsH=XBN39+75cGfD-vM-Q3**mYW&J{=H>bk-Z zF|F%9G!TTrrG#u$HLfoVIb_vED&KAltriVoTWqtDy>+$+^_uV zND0u*$m#N%SRHl&;RMr5XfwSne;}&U^Zf?k3^@XdGpoP0ID;zBgt<+BBI*kZ{TAk8 z7gA(+6_sbIn$UL({ouR|C}S~qh6=$!84Cz5ys{G6DvOB1d`MUS836@B{+|(05M;AB z19s#oc#)h|-dSjy4li-$}3IImKMhi=1rKI421IsNJ4REUXFD`OetYyZv z(yCZb2lGmM0GvcagiMi)%&69jxc4|vLgasV&_({TH`1x!q8N*~O=`T$fk^o(f?M<5K4d;{e*L`byu-Zvy#4&1ro)`_`ZI8%+Eez?3 z>sqCy*kw-MuHIb2cI)fCVWi{KQ>RatO7sISgyEz_qut%J-Zb zHJ550b425iZ+HAg-jCf$4Z9y)XctwR@7o8k2#0KHxwBcbMorq2s#)d-V%At-6Oa^2YREa6uNXx6#sZJYB5hD=!$ps<%np;~nki z)S7BcRT77l)TBnH#Z;u4&}d7C4K2(lE}T=B`f{~B3~aP6Y09o%#aVQI>-W=n^`POZ z>)Ad84u{hkbb@(}tK_S#jVLOK>%;yDv|TuH@jxsK8l5F(d$;pZsz@QcsJ^F>u{y22 zI$8x^XcOCs+Iyqz4J^v=(e@`AgXj|1V`vag5htm z3Cp{S-t=${ZM0(FTpT_(8+cXKQWXVO0aeyHJC&LkOpY;#vZ+6HNiEN=6o_;TGFg(+ z`wV$;DLb3zbC3fg8fiEEN>;eK zZ3Jge0s;601?}(o@u`{&ogS1W$fgF;LpXLd=nqCHDb-%U8H=(a0WL$wowvo3DhX_R z8zRkAqbE=!kx0gxc!`TjQshc*QNmXydSb}x!>+2}>~e|KQJN9L>M z6Z4JCf_7Ay)El{ zTa>Y2!Vk!{8d$M_@5vAh*_!VWJ&j5W#P{_5`r>ip^lCM1s-V_N!%`e9R?`4{nZQ?@ zhY@5)wYTzF$FvntVDzR4*NelZ5|-P2f!x%urII{CX020Yid9r_U2R-p>YffFLJ^|_ z^n>>b0-83^$xFKs8$OF@cs{-7*2!<5zWvfNtavCdeWSS(5cj=Oxmh=deplPO z0Y{0wfM?HnuNSrVKQ-UzQegNVxjcF~S(hHHRAHAfpXyS9i)b~X29spymY>}nB{Tp2U!T`-~Zgcif| znn;18I2Op~cu=w58)!K9J$6s^8Snv!;Di?$9dS~yUBMcSysq)3K2*;#wpQx7_9&8+ zZZoQ+0|2LaqB?bYa9AM?1nER`d^KvFWawUTps$R~2N*1(UMZmHCJ9gqme;G%SJleH zzY=03jV1!lF@aM>%iW>c#(uYEptAvgKvUh5>VbOPMck?P_&G))AUVYyYZab>`|8I_ zFZMGOq%NC^bf+nz$+8YFR$3D}>$rcV(xxO75-lcli=_=(4{x|roE=0$04|hVD-h~u zA`|N9*)_n(-i5fvBJa0RE4KE80UUg7VLVs8A>Cr&eFXGV9Td^d?BQhs5ULq!2%(R< zj40C3C*2$=TBAcW`c#UO>pPw1utSkfgy$*S;c?}Xt#65-8%;z?28zoYLRxh^T~O3P zH*Dsi_Fg62_W7-C6;t3}4S{im8*qfb!%IM;Afsx6v7yToC!svD%v}UqM zh(p=>TqCZHcv|7zQLnyDr#2g6f%H&zXL6!y*~_JxfG;!yfPxxIVk?uUL&?j#fHX=O z&0_6Kg$??sU3k#hW9}o)&u=Lf(oHVjFJ0=mr2WWARVv&^4f)f$4w{4`ry4$Fx$OyP z$uFfH_pkw@jVeF@1kYrfIQ{76hA9Her9w@O8W$VH4 zb*Z*uU5!9(Q3!zfJ~BaX+W~g0`Q;3*^Q2h4R;<0HYVTQ%$`wQ&3$Ns$j1>uxkjX~! zsRBbjD?mfBbCB(1?n>_!WC>&>PqfJ1gnC;F*$7VJlvJ@b+ND5a^vBS(P8^N#z-Ap> zKIzM87bP_C;^5KK)?H?ni3Agpi$2zg>~>H+91jXJFu6BYfTbY9&;iS4(GN_$Y)ow=vDM}$n$5Ugh2XQl}-M^MU#y=9= zb%BDE1+{*?X*(Vtpx|Qxw&8hNzT>?DODxW(&GrR{gTk&GZOKzOg2Ay1kBnVw!4U0w$Z{4cGIW&@y zpqmi|I|m64Lj+uak>}4R8+#E>n&PY2)@2XB7mhg_5ZZA_swTG9nwUvOV=-!EP#@M# zRtQI`QLFivd;s<7F&zWM2rxtTf&;uAT39eywFyN4TY|fkT&m zZaY}#a&Co1QAH|xZS&n-xUgv@igmsQfACdO+HlpqNA)i>5wMAM0^6!arleq$3<}W> z=XrN3e?NJrr1|-aBdHOzah=z(Z*IpQTOIJjjc+C1hr&gX<|ZkaS>uZPicz$@(mi8X z_x6+4DnM#*nH%bxeUqyBk49{uuW}4Q#AE}f#{|O2*zx}^Pgb&aMx5&D&RN? zGiMEX>&@JxJ~oQTx>63!9r&@UelP{-EK>}Tr2;V4ar`D(`?APupF*;SHLqoPhEuR@ zwWtX6*R%H3LYM4K(qct^aJ*IMOEmr4tHuwtHi8gdY&!!_ig3!d28!o-zut6xIlY!} zuJXi+Z#3@S_}P_3@H&*(xBsg6n#oX9tA%m>P(Y~yDE1qBYN_AaQ1g%30shL1WfPTg z`(r*$X1#Ndy5vOq=dDdW zT^epS3bG6{QVLLe9tvZ`8`G@Y?f@5mK$f^_w+GSHsb*J)y~yf?2`7S!6Jm2&n9zdP znjV2>eW4s1f%k|{V@scusUj06z3N_OU3kW{J2lKrf6rZT*z0`xOt{_0e<+(-%ihRX zBkZ4zmfV^zJ))n)O1!T(c=P)YvzNojqKpLGLs>?;y>=JXzId1LTycADM;W#Dwhfc`!6f@j zRjt{|$3`HC_)73qH&>;<;gCi;6@@AEQTwE7O#xG!U*8v=ee-2o*sRI#dvTk7QQdu! zE6R0qZjHIPf^B9zAX(}T_n!-87pB#(hn}@vy?>BDJN3znqW`B3xG$#-|=P8XOzJv5H5>@Tfbl6b@C z`%f=#y<4{J>xQ~t$0-qUY2_u|=G$IqX$vx9mSMP6T8L%&jYc+#9eGJfZwD$qd3zux zgR!P9kHEJ(ssO^rklRO8SPDwHh}fLnpZ{hVVT$+b``pb-74BH?()enP+44DMLsC_U ze`lxKiR*+tc_Z15`zEPb`(z#t0LguNQDXHE))6yN|jec0b zlBw;Gl!6cTCCQyCw&+p1s_&YVWb4 zBHr6%_oQJ{`%t$l_lA-#PTJ~9*|n$x%?0s!&STHsKG0bC?Ak9UKg@59JN!I6ex`t> zwR_o(K2fb*08mDRC_HPue_RzD)D&mtH9p1V0(Om&M16hIO5yL>i`R1d8P- z>)tySMNS>nnTGvOj|VQ5YS(>OWljtNK(4OB%}dcs@u9ML@7MLt(iA=TGIrf}!j+fH z6Q*mzTyVGa%_nF6g$+}V{^?(C`|j4Q#BGoFO}^LWE1j6vGF88lu+sl+!4J1);(9^F zy%a@EkkYO@g&VzVzdw7Z>BSdbp?ebS+e!yYZSn7E`77SI`ix(xyu75M@0!P29d^M4 z<=mN5YX`V~+ukSrSbFD@?_N8DJxfx4>s{x+QgQSCk+bb59M;(XZrs;?Hz6*pYi(vl zYtqko5`)*Mt?&B0oQvm6U4nChZO_Q&hwg9pJ@;%K10+YBT96PLUdSy69!?nbvQlQ?aEY{ zaMMJ)EyN#j^9qGk3-O2D^vjanJqqltlBnxZw|#{EuN#OM1ohyHG+8nT7f!XEY491l zyl--4gTU2=vkp&=$9}ydYW8D5k=tXG#k&1DbGbuL)cRMO9DY{Tgj9W8 z9xE76D=ph|7@?sm{a05ORqUBK8-RO%=+2uBbZ6U39=3YTKHg5YA8loceyd;4fG2Cu zR>mByuACcw=dfhT^W)*y@9n?)KG^cr(Gwp9t#O#LwQ2cS%4%};xmRd}F`9GU@#~eA zNZVKAp7`~68>tWs7MWDyxdx?ksb_o0bLj#UGjho=29Q`_;aNrDj4fCw@@EzKUxNQs g^t*yGniBr{z3F}@l=7_2?^p89laW9EEnJ}eFGCW4<^TWy literal 0 HcmV?d00001 diff --git a/Assets/Resources/Sfx/games/rhythmRally/Tonk.ogg.meta b/Assets/Resources/Sfx/games/rhythmRally/Tonk.ogg.meta new file mode 100644 index 00000000..ef0ace36 --- /dev/null +++ b/Assets/Resources/Sfx/games/rhythmRally/Tonk.ogg.meta @@ -0,0 +1,22 @@ +fileFormatVersion: 2 +guid: e2ddc1622db075346a98dfb35d80c638 +AudioImporter: + externalObjects: {} + serializedVersion: 6 + defaultSettings: + loadType: 0 + sampleRateSetting: 0 + sampleRateOverride: 44100 + compressionFormat: 1 + quality: 1 + conversionMode: 0 + platformSettingOverrides: {} + forceToMono: 0 + normalize: 1 + preloadAudioData: 1 + loadInBackground: 0 + ambisonic: 0 + 3D: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Sfx/games/rhythmRally/Whistle.ogg b/Assets/Resources/Sfx/games/rhythmRally/Whistle.ogg new file mode 100644 index 0000000000000000000000000000000000000000..f6b4109be183b38d2a0a76f06fb6b361904826e7 GIT binary patch literal 23564 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Π6kzrB^2QdHhxWXHQPHb~#(wxP^>rG)EI*Uvf2Ek{r7q5+ui~_6<~jVTH_+@wk#adU1f_@>_$-+fPwj(y)^=++QOfD?>odC_ zO;3;mH4~FbuAZfGUse21s6Rcpdy*2ZBcJbTRN8l)zjnFH&ca~lbLsPUog-ldmpI|7 zpI&`|>;yG;iCI})-Z%afbp+YF^tv$V?mpjV0<48OkA+&ttDKG6{ceE1jTl6%=`kTt z5_S1LX4B}bO2FZ-bsTPnV^}hE|WW+!#QP4$?lBL z^?`W7Xd7#scRpIhakh@C%~Rq!5@nEMA8Z_PJa_dMRL1X)V+gJ%d?bLpqk5G@nED*& z34vseuDjp2CJRbt8i>9Y0|Oy6;<2U;-~kBZnm8jm%szLTm#b-eXxFaakSKAzVKmr8 z^`sg?;NdLmP(R1foXtJE`e+1BCu|=cLo8O4^0lThO-V}Emob-FMG*1$h95Sbg}R_C zOTjS^!{@Km0B?!#$7v%mAz-bF7#wEWhm5Hn$Iu})NPB8Od!g>{mvtFWjt*;2?k|O} z9Hw7OdXSs^U9{hG#U=xX#f8-05tkQ08-F@o)MC(q_1`u=lhWnyj3 zyIm)Hr5r8^#dx(!^XWU!cA1RTxOX#ldw1*0qf6PnpBQtx)6=Pk#^jWg%-OpzRJ#-t zO#19*2r5lnd)(|Rpl(qM?^+L1yRl7qqm;qDrg*WX#&FQyoP@ucbQ>KsA_a^FesKza%++^jR=a_d5v7PQk&vb3g}=kWsgUD~eJtD()lO7L z3&hbQ$@Y1npAqm~sM~?HoHHCr7ttbIN{4V^Tz|&%Vc<)d!=%zQ9%PL$Md_XV@C1Fk zdh3>Jg;?1j`A?a|MrAS&f&Vdjo1b(@r zt?ih}BWWmsF(vW+?tR+{TRb$=m0Bog@?NK1QZ7@oYhrUpJHvdE{NtnY8W9}}bB}Ky z*UBI`&DJV4bWa3<5?VL=A3XIK%21j*LU=2`9P#nQOfh2L!?+0)*j zRHArtw~fdk;f?xN6P0f?RH+kf0LtLge z2^cv5X$xZY8~vON*Mnzg@hNyo0b{f=vn=ZZPj#ij%6p_%&WzwoR}&Oaws;U1c3Kgq``Ej!(2!+JunXaJUUq)saXaRWD1Wmgqlq5 z^N(!dt3B$m-}7<~a%1`6_nb9&>!8AxVDII=3HR}Ehp8z60n~*Oi@`S1)Vx_-d#FV} z9>|QMan{NmShbD%5M3Qzq3LEETQaq=>Qlm4G<6OY4OT(ezclx&zEvA}yQ-LYsy3A{ z`co>qk~7H*6{Eor9;=UP+`Y2vPLlwPn z?N(O0x6x@4%j1`4<6@Uo~@?ml8Z4HeQ>tdq=gR~&%Xou z$vhcIHsS^e5$|~G2-y+`gAbc5Z#hX2O%4sz!2>&l3?f59Oyu`(qaV#alA5Z0^Ekb* z!i1ik3a^F&Q~;w^kFMQLnAXGmn0;}nI+`!#K|Fl?E4H!cQzHO`(A%?gpUq4X7(3c- zrf~t_eT53;ER!fcGD{uJ5>58~B^lU={W6c)>D$a{Ehp!g`oa62Nzdt#rgD-$6O9)K z_3%9lcXKVw$=mPcmgNN<{mN$y;Bada#?i%Mr=+==Ss~%ZeZ92&i6r?zPM(pNrpx@K z-s_&w>io}9gmD(noKzf^9w1)v>?|lUmaZz_p!-;EY;bRB@0)2ZuAX#r5d->zYIqtLED>K!o7)z1*dza6kKC|&{SPo-qQliE6s@W#5yUK;JW z|2=!Lm(`JnPNnsfMfI&9F$8CuVRf|fB%nfkBPi`YKv78SO?fEq6`Vg`^&(;x>$;u& z8ZMMUWaDWGz^XPXw{K1yo>eQ&YjZg0T5F<*zpElf7^ePI<8d2vuD1LX*c`Tv4s;h_+%1le? zR?hx}&Pi=@gQK%!<$>Fn^ULnd3ohTa>jjbHc)F8kqjxp43M+C82tWU{XOH+vKNpqm4!r^lWKCv<2PWxpcJiBr3aUh8 zzLhMBeR1G96ei)ayI6O9+tf_>vB53O^K!|OLnK{ie>g%ih^Z%xJ8;wXwf}c|bV{}D z@o3g_=*0*54*&^i0-xMea?j%=&XOmR7Li?QP3@d+&DJ=P@7@`ZG+*1h!&Q=!Mqm!j zSgOz?i+kvV&nAiULv08!@3q|zcgSaI**6-BFp+MK!~)O`8~aF)a0e#znv~TkKmW<1 zsV74W>~s&m8v-z+^`+W(P7#a7a(V7D{H}}6SuU3MZwP7tP%!}Be-U-@#Hv)}ML^)^ zyZ86*G<0T1{p?^{QE8Roc{U7*jb(OQNz}E zJ@1@pjNaH!wBJ$~^+99d4cIzTP+2BKQ*LA;)Y^#0YBu7IndnlN_K;TK_vOp&JvP7VV0P)uNO4EUexN3h zO9WWBIugGy*(0&V)?y@tt*?t)hHaK%%rMl7|H@;>&VJq22mzfv3%P@D9b>bv6C=}d zbwk!}jhAO-pG*u^ej&vzzeDpf3y&)~feEf8j>W->2`tFMQn^lfbg_fdytX>WzyPEOH2~djz#KWfHrM+0tPuttB zAJH&fA+b6;xdMg;!k zq4M02GSe&EwQyx_*!YRIp_R|{=8NL-IMiQf3NqmV6KlUxTV?Ro74ioe-}s{GW~!|W zeP!Jms&g>pqejoN)6K-GCVQJMB9V;uu=&`=` zwMpM|=7cZ|S`2x~+td^VM{!pgapwUoMg=T{Y?ktG_VJ-TBT~dVq)S1#S zq&g$0lH?`)q3LS=;RPJ4z>)a{tDj;&-gr_ND>fAhCeUd$2*7x~lxTMp1 z!P8DX?Oybi^VOeygLmAQc`i=5oD#mr)Da~6ihE}H01 zaS_$|P|oq?aHqY9>3hVJp_PNkrx@!2g3j8wsA7n(+au=Z)V*wUJ0o7~+kq|HJYh(RZIzcGU=<{cHRcUCMC4PQfP!q4ytTsvj zFJ3T2zeLiL-wNl{Svc|#Vm_Re2#!B*>kJwFakg8nH7Ce0iBwPGRzzvJ5&e7)7Q z*0e_NE}QtN9se8R1Pa+$+dwUg;ct2Yx`%sK_{ZNbtLw&wWtesMU5`&H)0Ni?#FBdU z;hy`;gL&1{FcNZP3dafX%V~T$1irr8+T-OzRw>mr;Z);`)J@$EJH+l@eLH?0r2Fib zV}EG2?@!c(P=H53GbG%HUM4T^%kubVa_0yI$T!|g-(f%;P}kTXR{T{+rc|zFYQ|kA zk3}?mE5kkk@JnUI`}^w3)BiX;xw_KwO|wpd4ikj&#K18yObo^c%sns>7_H^I(8{FEd{d)&*~{)t!RAhxk>)X*M2?x z{QN|wi5vze6&C6Jg~yx)IrenypN}0|4#6IaSm_M^F5GK|!7!qhQ8}$P%HEsq(nh}L z$dd#5jfuakx=+ussGBA#vSRvQ)T|@65@vxY1 z38%~&idEpS8*+}o0?dZGE6D`_uTn3iyF|EO%HI&j<}VjBKlPHMtMiD;p4HYdmdLWj z1FsII?;qdfI6b~7+tJ;ruDq?Wy76WE#PuSq<&9O(!uReTUEMd0(@)aV4fPhM#@jCN z&+JcDt@I9m?6?GHx#eUlG?8zi@Qy1^WE9x0g>OOTW{SgoPX}#0=MZ?OEhh+cehAwf zDsrXCX1ZrCHvM7&FnXVl9-gBFiJ~ zTz&PUXYCRn*t&axusO7ve8{v4BN6JszK~k1gS4iw14ijRB+sWWTvr}gkbl4FOdc8( zo}KKSPY!3B7=P1x=KI#aRVe4^s9a^fdf3W@KrtRi*vd{4csqlO0}zP`lN+!AZ9C7g zl6av&w}bnOV^w-CxS(B6#w`Kh0J=8$wy!uZa6HM8L0)QEZ94DikZ-tdsmrn*1pEUA z5<-k$5UBZ zIWi5)t_<1?-?Rz$T9(r$Kg@MmFRlow;FHD=@RrV7-a3RGz`7eqPtRgVQM=e%R!t|j zBrkWGE|7TPQ%sv)(yuY%s7+>g1Zha?+HUK_1iBFATXcIKyeUl5b6Ti_y&EB4 z8R9wTufB>zVZ#(Km@W5Xui)@EXQ>yQ?5jKJJ44?wo^Tnj)q{L;ukT^_;Hnd`VZm(U zXo#*Oob?Ki>|R|ccF$iKF6(SOG$x>7Pf6$RiD_Kb@ip%lc{q*BbpWX95KVP9+HjDqgd zFh7O%FT^#BOiF4?aPn4zSH$5d=^YpH&Wq`dF`i@(3mUpVS?xV+vFcGnxpaQbTxnxD zSy{zokI`M@2l3na}k;k^` zJqq8m%3X0UlIfagbi)ouW7uFld54WySu6O`3TUkGA>=Jc4_WS*{FqTb=uFsPmfh#X z$bivtx2k@P@Y#s52$zCvT{fbI-Xwh3k6z&9GX{HCCa-WzzB61`n4RHQC@#(`_Ms&m z+yk~&gV>1ajXW#p<;JF0z|=;;N>>DEB1+zM;Rn;_jVriYr%$3LvoPJ=7w2N5niL~P zK<*eCYxG1UiT(l3nK!LIc(L%Uf+G*ZMrR{@2Yq3K39J;;sOo>Ih|o8PxPC1x)kfJY zJ;n{&ngogu=R)XN61FPAp3E0PiqZi}MIb>xx{27G1Y~|@@D}8*y};AKz+Selv!;BHy?Nn82Wbme#rUd(PjJb?84|x zs@EKJ)#at#=+4`F3*U*4_4GQYkE8Yz8)K#$r_=XyD)5&_4{1&i4x0yw*eF?M$t|z( z@v||REveBwtKBiy<7Mm%6b$2je1>bJ*Q!T7oy%x_%zLUnF+C&pYxMqs69j_7WrT!U z(#v7ey(D|^q?t~4!&cqrnySZS6mrKJZT7KyLdae_k%wR^&ym9Z(ie-u7gk5gWO*Af zX+xefnYSCLi~L#2QM!2^D#?e^fJ;&{pQZ0UBEA z%X3$~9hX2JKNqzMF}vG~viG0ztW@&+=uYg}@;ggwIJ}Swy%Zkozm!6Vdywt+M_6IH zWOl=j&jvT8Ms3)@+s+7a)VYsz>~dZh8Df8|5dwESbR)wj+XA)_jSDNSCo(@FiY?h-TMePqI$ajjN^p$<%5I$ zHvnd^5F6?Y3&D<+Re@j}f}WJ%7O$WL`tYD?Z0vS~kks_5pAi zgwP8NpdU2+z^4XIMTL;3PY3~ll*5Ycv9qm-A9v=5tmvTX{^%!CPG zqmnxqSZ@#e{)iXcDg+oWXoVfl_ngdots-Ue?#y0*s(;&x1_c92h}cX$NXL%dc+of? zj#55I#9$G0uZBW4~uuJ7BL8#etnshhH1i`vIy2G(o z`Zssenc)hDxU0L^?vnVYu&s^dgA0H;e0(KP;q(42P`jReaYAE8;0mi#xp^xW`Xs=N zO#%wHNe_k>b4Ov=v45rf;%oxcYF{t$kGZ#aB9wVL$Az-?Vl9ua9mYC^nr-HIIlfhp zL|p6>JNiC2L5q>0PanCN+@|Hq?nmiXEgL4yH)YOiA3WH)Q@4-RePPbliy1GLlE7VA z_IDiY+Ujl~9)CZv)Q)!=4RiEOrGVn02p9ON(B<}uwD5Oq_P{+t9~P{>`$IUjKOsu$ zbVh_mbPQE^fHFP+x{`PQxRT*zWf*0D`+Kzav-1Xk0O}Gg>#u=nLMv`-fM2xDz|mM z^5hDOyVd>ZE|+6@cj;W;td%oxT3|R(!MOR@aCCZQ;z=u74?tf27*R+8#)SasBc|~) zwsE0vU`)5(Y1Vi-4{II8^AEpVUg>v{hPIwyn2X?H@?Mh6M3M@KeaG;Lh}PO+tLGPa zdA{(Yr@l@PvVOF}KDncIo$Qi!K4P!pgGwt<@GrB*3)x@G0RHjtS;HW*9j7T<>|p-F z>ljV#6&`w5SRE1g+4s0n(DbJCVk~a=Aw{Y~xIg_qQD541n7Dm*CNMX2zCuNCNlg6Y zIJgRp2iF!UGmJ@7XG)7?$A!CRN`v@!U;GtA2-q`TNOt2=69ZB-(nf2tMr-=9{LEH) z7;dXPi7uO8Q%UX30ko3S`t^JcG*7MqG+m4CuevTh*SZ%a*J{@i&tuNd!(J7lgG(3h zTTRc+X|wG2bjv?rCa z3ePo#u)$GB3R^onJ8$SWUcAbHjg8_AV53?YQ5Gox`$g;USVQ{R%8JMeq%-_PexXb6 zr~w;-yga;qIvCh$b9%<+Up0N9P#Hljhk(5h8MY{*wn zZtI-ykgOGLp2AmKzH|Q4J;k8+vW)9HS1E(izH~p0IBaF~8Q-?TpTh+Mq_AVmuFU0{ z)CDT>&}|O9q2Sw%uRG!SEl;PvQ32&H&Fs@U-@ly>bF{8;Sy!GA#y}_5c4bN3=XPOx z=|HC|I%j*~kY;u@Od3BNl97*m*?1lP+WPe zjA9+Oq~%nS5Uy@~!oQCbI8|%2ACg>X^m9ekrTM&7e)ItSy(|Q>WA5 z0#<8K^<#yfJ%wX1%$H;0*xF*+(|)=W^w#J7%ZDdNhnTbTpT1;0ClRfQtta!U-m6Ic zF~@H~o4Kzmf&zNBc*t|d7{@)yXnNAqL(zF-@?A1ct$JiIGWV*L*E>#y%UkYbn3XdH zU!Q#Y$&HiE={aCUQx z%C642mv%!7B;*2}?8ES|!9dbIpZ(g4WevCG^v3D){qywkLV^D6UgY+$R5;s;T%kML7B_MFaYiwUT75y9`cUOU(kp6O3P%?l28FmIb&yoknzSas;^%)2`Uo%79DxEtG7}Ato0!u^$#p-l>a=314%9wBqfq!N#3Hyk+s8 zUb|NDN}KtclQL{>wr6u=zTcBO2iF8_8>6re2K^RoSwM?gFd5VMqc7tV=ZUx zZN+->Fs0@77aYC0g>g8m9A9n)-}TGs>Y?y!72ToFTj`Ri9Cz77CBqYsUNZV&UUkw7 zcy$zF@)|LtOLtQn;kUXgy1Of^ygnX@>>jojL&yY@KF`o#-yM=75ZF7bN8p@t7iZ*F zols#;KWw)+;Q{MwBs$szsXEtmn8CvZr^~)bNE2v>&w3;A4&Zic1WtkbkIZW4opL(8 zz+fv{DMGmzQDf;gB~0ugm{DR1>LpA3znq!6zmn-Ly#BcNX}oXw@{Mn;LeMGtTvOV^ zx#vv2d}I$Pu%uCR`N-l89q8pOU5XB{-rFp<2%??HH*vDq#K6?gD;`%rkm_@>pM3%WB(?MY^78m=`+eocy=JNc57(4h*&u zcJgwVg?<|2iOzeEf#y#L`!eWy#w_3--VyJT5)Y{f|G9w<=wnWp_7Y?Om{u{kIM7Rd zudk#P0us}ul^TTVIln@c_Z2s!Le)$3VWL3XwvzlFMPZROXcPqQUKkLA_IG5edj<JYP|R?xjoL$qC^SI?>}| z7EAj?ZuIci5%T1Odb$U6-^HfytO)xaA26M^OA#V=FE0>~)q_s*JkpE%EZjs{V6Z!I zDc5S_$$Na}e?0#-gxm3dRdMc7OXW; z>T8povte9VpCt-cCOlF`s3aBAN$(IRfsSYfW;eUrOPn#Q6 z(UU+Wlm{(pH$xELhPlk1n89%i3L37;oZs5)_Myd^U8Glz(mPXcYQW5D$<5)G3aHuh zBTv=@F)Gnz87VVswj}iYZq|SLc5_^^ zvA=!V*7@uI=KU=TAd;5fY5t2gw%#uVB<*;8tLIpnwEyniva-+LQO|vDRduQM z6&tE9D1k7?8rw+__uODHN;&W-D4u$s<#~ zQ9)%Ggg*L4;yk5PeiQ74!QvF%E}Np1q<3KzW!mzR9-hhC8l5E8E&i4jAm@NR0wY zcQZeby&ZIC^N}}9;&AI6)hmRQ{k0V^6&FAFOV1He0tOSF5Mp&zbz4KarL%(F%hXRF z{8IEUaWnrsJ@PXb;}@9#NDaif@njkA2>a79Oz<>mK)vSi+(Q@@K+i08Na*Q|hdZxg zT(ItIPd(UJOdCu8%6E3zm9;o@ZtFjv-$@Tk_-^CZbj8b-B;ZZq;LS^ZxIH9_PplZF z^m$(=-~YJzK=PWjKR51l0ob^wZHPlxYLi}2%rx*u_>buXdNA*BbMWKvrrWU-<7!9V zLkHynQiYDXJpi58!cz{Ccm%2rrl{qW4lM|Fm3F9I0i$ps z`?-Gqm2cs@O-HUg

3V#{$N0T}F=v3MRPwmL?=so&5DW{%HedW3=`nqb&YqjnE`F zY<{`zX5p_79=4tMY1Q7m)TvLgKwouabIpuq#lUo59V=+uu5h+FkN;)zjEI!_DkM>5 z(t(9Cc9vjNBcH}cBrD>|Mv{CZP5)uC9ukdiW@QsO0afO6ZuH3C}r-zrj7X)vNf)bt=7-0vH_mgHmLxFLMMC6jFxfp3ZnEmg`*${XFU> zSpx6-^+Fz7aMCh2H#cDj1op=Rczld@Edu*Bailpf)NA&*cy;+a%Wq+YesQ%uHzVPF z>&=E+eM^(DYd=1=#(EBTH*?PKyQU4dFt-xG=;3sh9CGecEP883Sb&PwG>sCSb$VaR+-;DVA`FUN_%q+T*Wf&1wwMI` zBL;M`lb6iJS|-shZES(AT*z9HAhzDv)PDF%GQ3I#*8zHRnn~cD6r?F;oKov!wEEF` zd2^twetVrJ3SH903c9>wFefZ)$Iz$k{_rqFZ`eBe?cmxIJQi08C(i z1i(`fSCCCcn~443gAZ<>3YDwOvRm6Z)=(@syXY6{PImOK1MUl5a6Xn&e zlP*8AUK135f2n3%$NvTK&pjGSFW{AT{1) z$T4tH3hZpRUQ)MS^ew#f$&c^jCV+g>RgnE!76exnm zKkoN@<1Q4Vtvp7y&AeN6>Dg?1=WS6;bzb!N&olk>Xk+}or)^BWapcOd0{7I}Hlbrp zm3&oSGqr|Ab-K$6q9KggJ(J(*gEC}>)uxhzu$QrR$Wh5B6v{Sd77Rjc+VpoN_2lG& z>_zjZ*~v2*%&~OV$QzogP)_0Cr?iracsHIQ+uLf_4zbz0)%lB2onWLG%4tDUrP17& z+6+3W8;(JIjm0lV_3>D}1WrHs8yOJOP>Nui*XdC*$#R9}`Hqw7@%a>U%RMn-iY=`3 zShVQvlSS>N2=l(0TD1o=z)Jq3sIVjo$>#+KGo}8S@%LtTFnq(W?qmXu<=XBU#Y z1tw*Hb#DubLv1x2h7}D}A2qOMghVl{tK5_&%Ey)BYHiYj!N{Ux4gQ!t#vThj>7*+u`eyC@Uu0NcNjuFA}w+e7BcI+1XT4NZ8U7!E^y1tBkCG!$V5i!Zv&W+GMiLXKs!Chvlw|pAmOEIM;`_`-QB&{@p*epeqtjZcWZkbQ}D1bI$y# zj(xzse%@A@h{Sk3Hh=2b*Sp5ri$@-K=jGk~eSJ+RdRk5TizfB0m$yXHd`)p%Ftwc) zxYI&F?LH)w!P!n&s)Vx4q)v)E`uR;cS`SeGDOLO*rk>babiStN)+u)JAeE&O4{eSkf#>BMC7um8Iztbb0^EfOH?>2Zs3@ zg+Rdh5K#4l02$1up#F#UZU*HddAed)195!b7FRvzyW-JY8fmd#@ z$_p0R5rO*8Qx%Q0Sye&#@_%MZe!5a_4Re2Y`_0F0Z!!MMjuCDKsL_pwyh~QDCvbXY zQzV?}0{D<(oRg&kbwvbvw6w3*>*aQGTGkK8qwZ$!{UP;eDB5}o$QVA;G(u$7O}`ZU z{Xp?z#cXid@#*f#3zdpW=ee3@2g@4coSt=WEP?ICCa2^yVu!O_)Y5nh<%?QXNi<~6 zHr19z8+9#8?Eqrou-U|e#+UGO@~$$_f`~b`GIKCnssu4~YVo|&8h|h}E;#O*lr7}^ zGoh}oHf1`%-M%%@Y&hTPk!`?^l(LG!K{qh~dAidQ5{yH5=Y@=Zxqw_am@}|inSY0W zBx|M|r0PLxad?P22RRgbuk*T^0I%(|fQ!}R1a$`>p@*+EQvGHH9AWNDCJk{QJyl=&t4%Q}X>*4&v#vW7qb^A?a+)jtyLGt%CtA09dEdTu1YNt14PWP;s4d(rxllRy*R@BA z}hBY{Z$hO(=6?;@6rkeO~M`_KYvkt;>fg*Uzy z`D4;Cm;kf;9aUZ7PP5*SgXX>4E1>7Cd|MM zf%0`a+cWbuU%KMV7v3Hz@aiTds^~$#)kwM#zvp8KK`~mU`hc%d>(cDjKz?F-UVps2 ziw#Y(J%CqA$gL;)?j&^fKBY(7D=1T1?y?ao~_<#T4* z0(T8qc6qqk>=P>hvw;o~a}dCAi(VQ3J8@^HNBQtDH zo_8zc(ANhye9$wzBeu>t2{{sF&bkltb{j}SZ&6`Y9$hEG`WIdosktv#;&mWmL0+XD zolvUKKU|mSZfs~23GT-^^n8#;8_;Obw*rgYbgS5N5O=O4hvCPjBbTu{8phi8rOURx JElWw5{{vm@NuB@z literal 0 HcmV?d00001 diff --git a/Assets/Resources/Sfx/games/rhythmRally/Whistle.ogg.meta b/Assets/Resources/Sfx/games/rhythmRally/Whistle.ogg.meta new file mode 100644 index 00000000..4518d1c4 --- /dev/null +++ b/Assets/Resources/Sfx/games/rhythmRally/Whistle.ogg.meta @@ -0,0 +1,22 @@ +fileFormatVersion: 2 +guid: dba1e0172e3cb8c42acac4831ceb1c54 +AudioImporter: + externalObjects: {} + serializedVersion: 6 + defaultSettings: + loadType: 0 + sampleRateSetting: 0 + sampleRateOverride: 44100 + compressionFormat: 1 + quality: 1 + conversionMode: 0 + platformSettingOverrides: {} + forceToMono: 0 + normalize: 1 + preloadAudioData: 1 + loadInBackground: 0 + ambisonic: 0 + 3D: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Sprites/Games/RhythmRally/Paddler.controller b/Assets/Resources/Sprites/Games/RhythmRally/Paddler.controller index 0e8e8001..d36a9d3b 100644 --- a/Assets/Resources/Sprites/Games/RhythmRally/Paddler.controller +++ b/Assets/Resources/Sprites/Games/RhythmRally/Paddler.controller @@ -1,5 +1,27 @@ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: +--- !u!1101 &-7775552956130427675 +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: 7618035723044257044} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 3 + m_TransitionDuration: 0 + m_TransitionOffset: 0 + m_ExitTime: 0 + m_HasExitTime: 1 + m_HasFixedDuration: 1 + m_InterruptionSource: 0 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 --- !u!1102 &-3986917046676279002 AnimatorState: serializedVersion: 6 @@ -8,7 +30,7 @@ AnimatorState: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_Name: Ready0 - m_Speed: 2 + m_Speed: 4 m_CycleOffset: 0 m_Transitions: [] m_StateMachineBehaviours: [] @@ -37,7 +59,7 @@ AnimatorStateMachine: m_ChildStates: - serializedVersion: 1 m_State: {fileID: 6416047872712211942} - m_Position: {x: 200, y: 190, z: 0} + m_Position: {x: 240, y: 260, z: 0} - serializedVersion: 1 m_State: {fileID: 4424825005415695879} m_Position: {x: 290, y: 330, z: 0} @@ -52,7 +74,7 @@ AnimatorStateMachine: m_Position: {x: 550, y: 330, z: 0} - serializedVersion: 1 m_State: {fileID: 7948488236895607926} - m_Position: {x: 250, y: 260, z: 0} + m_Position: {x: 200, y: 190, z: 0} - serializedVersion: 1 m_State: {fileID: 7618035723044257044} m_Position: {x: 270, y: 120, z: 0} @@ -96,7 +118,7 @@ AnimatorState: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_Name: Ready1 - m_Speed: 2 + m_Speed: 4 m_CycleOffset: 0 m_Transitions: [] m_StateMachineBehaviours: [] @@ -122,7 +144,7 @@ AnimatorState: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_Name: Pose - m_Speed: 2 + m_Speed: 4 m_CycleOffset: 0 m_Transitions: [] m_StateMachineBehaviours: [] @@ -148,7 +170,7 @@ AnimatorState: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_Name: Beat - m_Speed: 2 + m_Speed: 4 m_CycleOffset: 0 m_Transitions: [] m_StateMachineBehaviours: [] @@ -174,7 +196,7 @@ AnimatorState: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_Name: ReadyBeat - m_Speed: 2 + m_Speed: 4 m_CycleOffset: 0 m_Transitions: [] m_StateMachineBehaviours: [] @@ -226,9 +248,10 @@ AnimatorState: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_Name: Swing - m_Speed: 2 + m_Speed: 4 m_CycleOffset: 0 - m_Transitions: [] + m_Transitions: + - {fileID: -7775552956130427675} m_StateMachineBehaviours: [] m_Position: {x: 50, y: 50, z: 0} m_IKOnFeet: 0 diff --git a/Assets/Scripts/Games/RhythmRally/Paddlers.cs b/Assets/Scripts/Games/RhythmRally/Paddlers.cs new file mode 100644 index 00000000..6f29efd6 --- /dev/null +++ b/Assets/Scripts/Games/RhythmRally/Paddlers.cs @@ -0,0 +1,101 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +using RhythmHeavenMania.Util; + +namespace RhythmHeavenMania.Games.RhythmRally +{ + public class Paddlers : PlayerActionObject + { + private RhythmRally game; + private Animator playerAnim; + private Animator opponentAnim; + private Conductor cond; + + void Awake() + { + game = RhythmRally.instance; + playerAnim = game.playerAnim; + opponentAnim = game.opponentAnim; + cond = Conductor.instance; + } + + void Update() + { + if (!game.served || game.missed || !game.started) return; + + float stateBeat = Conductor.instance.GetPositionFromMargin(game.targetBeat, 1f); + StateCheck(stateBeat); + + if (PlayerInput.Pressed()) + { + if (state.perfect) + { + Ace(); + } + else if (state.notPerfect()) + { + Miss(); + Jukebox.PlayOneShot("miss"); + playerAnim.Play("Swing", 0, 0); + } + else + { + // Play "whoosh" sound here + playerAnim.Play("Swing", 0, 0); + } + } + + if (stateBeat > Minigame.EndTime()) + { + Miss(); + } + } + + void Ace() + { + game.served = false; + + var hitBeat = cond.songPositionInBeats; + + var bounceBeat = game.targetBeat + 1f; + + if (game.rallySpeed == RhythmRally.RallySpeed.Slow) + { + bounceBeat = game.targetBeat + 2f; + } + else if (game.rallySpeed == RhythmRally.RallySpeed.SuperFast) + { + bounceBeat = game.targetBeat + 0.5f; + } + + playerAnim.Play("Swing", 0, 0); + MultiSound.Play(new MultiSound.Sound[] { new MultiSound.Sound("rhythmRally/Return", hitBeat), new MultiSound.Sound("rhythmRally/ReturnBounce", bounceBeat) }); + } + + void Miss() + { + game.served = false; + game.missed = true; + + var whistleBeat = game.targetBeat + 1f; + + if (game.rallySpeed == RhythmRally.RallySpeed.Slow) + { + whistleBeat = game.targetBeat + 2f; + } + else if (game.rallySpeed == RhythmRally.RallySpeed.SuperFast) + { + whistleBeat = game.targetBeat + 0.5f; + } + + MultiSound.Play(new MultiSound.Sound[] { new MultiSound.Sound("rhythmRally/Whistle", whistleBeat) }); + } + + public override void OnAce() + { + Ace(); + } + } +} diff --git a/Assets/Scripts/Games/RhythmRally/Paddlers.cs.meta b/Assets/Scripts/Games/RhythmRally/Paddlers.cs.meta new file mode 100644 index 00000000..e53772c1 --- /dev/null +++ b/Assets/Scripts/Games/RhythmRally/Paddlers.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: dbf752ba115326446a543da7b734edb8 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Games/RhythmRally/RhythmRally.cs b/Assets/Scripts/Games/RhythmRally/RhythmRally.cs index ba4dacb4..3905731d 100644 --- a/Assets/Scripts/Games/RhythmRally/RhythmRally.cs +++ b/Assets/Scripts/Games/RhythmRally/RhythmRally.cs @@ -1,22 +1,42 @@ using System.Collections; using System.Collections.Generic; using UnityEngine; +using NaughtyBezierCurves; +using DG.Tweening; using RhythmHeavenMania.Util; namespace RhythmHeavenMania.Games.RhythmRally { public class RhythmRally : Minigame { - public Transform renderQuadTrans; + public enum RallySpeed { Slow, Normal, Fast, SuperFast } + [Header("Camera")] + public Transform renderQuadTrans; public Transform cameraPos; - public GameObject ball; - public NaughtyBezierCurves.BezierCurve3D curve3D; + [Header("Ball and curve info")] + public GameObject ball; + public GameObject ballShadow; + public BezierCurve3D serveCurve; + public BezierCurve3D returnCurve; + + + [Header("Animators")] public Animator playerAnim; public Animator opponentAnim; + [Header("Properties")] + public RallySpeed rallySpeed = RallySpeed.Normal; + public bool started; + public bool missed; + public bool served; + public float serveBeat; + public float targetBeat; + + public Paddlers paddlers; + public GameEvent bop = new GameEvent(); public static RhythmRally instance; @@ -26,7 +46,7 @@ namespace RhythmHeavenMania.Games.RhythmRally instance = this; } - // Start is called before the first frame update + void Start() { renderQuadTrans.gameObject.SetActive(true); @@ -40,27 +60,161 @@ namespace RhythmHeavenMania.Games.RhythmRally opponentAnim.Play("Idle", 0, 0); } - // Update is called once per frame + const float tableHitTime = 0.58f; + bool opponentServing = false; // Opponent serving this frame? void Update() { var cond = Conductor.instance; + var currentBeat = cond.songPositionInBeats; + + var hitBeat = serveBeat; // Beat when the last paddler hit the ball + var beatDur1 = 1f; // From paddle to table + var beatDur2 = 1f; // From table to other paddle - ball.transform.position = curve3D.GetPoint(Mathf.Clamp(cond.GetPositionFromBeat(0, 2f), 0, 1)); - ball.transform.GetChild(0).transform.position = new Vector3(ball.transform.position.x, -0.399f, ball.transform.position.z); + var playerState = playerAnim.GetCurrentAnimatorStateInfo(0); + var opponentState = opponentAnim.GetCurrentAnimatorStateInfo(0); + bool playerPrepping = false; // Player using prep animation? + bool opponentPrepping = false; // Opponent using prep animation? + + if (started) + { + // Determine hitBeat and beatDurs. + switch (rallySpeed) + { + case RallySpeed.Normal: + if (!served) + { + hitBeat = serveBeat + 2f; + } + break; + case RallySpeed.Fast: + if (!served) + { + hitBeat = serveBeat + 1f; + beatDur1 = 1f; + beatDur2 = 2f; + } + else + { + beatDur1 = 0.5f; + beatDur2 = 0.5f; + } + break; + case RallySpeed.SuperFast: + if (!served) + { + hitBeat = serveBeat + 1f; + } + + beatDur1 = 0.5f; + beatDur2 = 0.5f; + break; + case RallySpeed.Slow: + if (!served) + { + hitBeat = serveBeat + 4f; + } + + beatDur1 = 2f; + beatDur2 = 2f; + break; + } + + + // Ball position. + var curveToUse = served ? serveCurve : returnCurve; + float curvePosition; + + var hitPosition1 = cond.GetPositionFromBeat(hitBeat, beatDur1); + if (hitPosition1 >= 1f) + { + var hitPosition2 = cond.GetPositionFromBeat(hitBeat + beatDur1, beatDur2); + curvePosition = tableHitTime + hitPosition2 * (1f - tableHitTime); + } + else + { + curvePosition = hitPosition1 * tableHitTime; + } + + if (!missed) + { + float curveHeight = 1f; + if (rallySpeed == RallySpeed.Fast && !served && hitPosition1 >= 1f) + curveHeight = 2f; + else if (rallySpeed == RallySpeed.Slow) + curveHeight = 3f; + + curveToUse.transform.localScale = new Vector3(1f, curveHeight, 1f); + ball.transform.position = curveToUse.GetPoint(Mathf.Clamp(curvePosition, 0, 1)); + } + + // TODO: Make conditional so ball shadow only appears when over table. + ballShadow.transform.position = new Vector3(ball.transform.position.x, -0.399f, ball.transform.position.z); + + + var timeBeforeNextHit = hitBeat + beatDur1 + beatDur2 - currentBeat; + + // Check if the opponent should swing. + if (!served && timeBeforeNextHit <= 0f) + { + List rallies = GameManager.instance.Beatmap.entities.FindAll(c => c.datamodel == "rhythmRally/rally" || c.datamodel == "rhythmRally/slow rally"); + for (int i = 0; i < rallies.Count; i++) + { + var rally = rallies[i]; + if (rally.beat - currentBeat <= 0f && rally.beat + rally.length - currentBeat > 0f) + { + Serve(hitBeat + beatDur1 + beatDur2, rallySpeed); + opponentServing = true; + break; + } + } + } + + // Check if paddler should do ready animation. + bool readyToPrep; + if (rallySpeed == RallySpeed.Slow || (!served && rallySpeed == RallySpeed.Fast)) + readyToPrep = timeBeforeNextHit <= 2f; + else + readyToPrep = timeBeforeNextHit <= 1f; + + // Paddler ready animation. + if (readyToPrep && !opponentServing) + { + if (served) + { + playerPrepping = true; + if ((playerState.IsName("Swing") && playerAnim.IsAnimationNotPlaying()) || (!playerState.IsName("Swing") && !playerState.IsName("Ready1"))) + playerAnim.Play("Ready1"); + } + else if (!opponentServing) + { + opponentPrepping = true; + if ((opponentState.IsName("Swing") && opponentAnim.IsAnimationNotPlaying()) || (!opponentState.IsName("Swing") && !opponentState.IsName("Ready1"))) + opponentAnim.Play("Ready1"); + + // If player never swung and is still in ready state, snap them out of it. + if (missed && playerState.IsName("Ready1")) + playerAnim.Play("Beat"); + } + } + } + + + // Paddler bop animation. if (cond.ReportBeat(ref bop.lastReportedBeat, bop.startBeat % 1)) { - if (cond.songPositionInBeats >= bop.startBeat && cond.songPositionInBeats < bop.startBeat + bop.length) + if (currentBeat >= bop.startBeat && currentBeat < bop.startBeat + bop.length) { - var playerState = playerAnim.GetCurrentAnimatorStateInfo(0); - if (playerAnim.IsAnimationNotPlaying() || playerState.IsName("Idle") || playerState.IsName("Beat")) + if (!playerPrepping && (playerAnim.IsAnimationNotPlaying() || playerState.IsName("Idle") || playerState.IsName("Beat"))) playerAnim.Play("Beat", 0, 0); - var opponentState = opponentAnim.GetCurrentAnimatorStateInfo(0); - if (opponentAnim.IsAnimationNotPlaying() || opponentState.IsName("Idle") || opponentState.IsName("Beat")) + if (!opponentPrepping && !opponentServing && (opponentAnim.IsAnimationNotPlaying() || opponentState.IsName("Idle") || opponentState.IsName("Beat"))) opponentAnim.Play("Beat", 0, 0); } } + + opponentServing = false; } public void Bop(float beat, float length) @@ -68,5 +222,80 @@ namespace RhythmHeavenMania.Games.RhythmRally bop.length = length; bop.startBeat = beat; } + + public void Serve(float beat, RallySpeed speed) + { + served = true; + missed = false; + started = true; + opponentServing = true; + + serveBeat = beat; + rallySpeed = speed; + + var bounceBeat = 0f; + + switch (rallySpeed) + { + case RallySpeed.Normal: + targetBeat = serveBeat + 2f; + bounceBeat = serveBeat + 1f; + break; + case RallySpeed.Fast: + case RallySpeed.SuperFast: + targetBeat = serveBeat + 1f; + bounceBeat = serveBeat + 0.5f; + break; + case RallySpeed.Slow: + targetBeat = serveBeat + 4f; + bounceBeat = serveBeat + 2f; + break; + } + + opponentAnim.Play("Swing", 0, 0); + MultiSound.Play(new MultiSound.Sound[] { new MultiSound.Sound("rhythmRally/Serve", serveBeat), new MultiSound.Sound("rhythmRally/ServeBounce", bounceBeat) }); + + paddlers.ResetState(); + } + + public void PrepareFastRally(float beat, RallySpeed speedChange) + { + if (speedChange == RallySpeed.Fast) + { + BeatAction.New(gameObject, new List() + { + new BeatAction.Action(beat + 2f, delegate { Serve(beat + 2f, RallySpeed.Fast); }) + }); + + MultiSound.Play(new MultiSound.Sound[] + { + new MultiSound.Sound("rhythmRally/Tonk", beat), + new MultiSound.Sound("rhythmRally/Tink", beat + 0.5f), + new MultiSound.Sound("rhythmRally/Tonk", beat + 1f) + }); + } + else if (speedChange == RallySpeed.SuperFast) + { + BeatAction.New(gameObject, new List() + { + new BeatAction.Action(beat + 4f, delegate { Serve(beat + 4f, RallySpeed.SuperFast); }), + new BeatAction.Action(beat + 6f, delegate { Serve(beat + 6f, RallySpeed.SuperFast); }), + new BeatAction.Action(beat + 8f, delegate { Serve(beat + 8f, RallySpeed.SuperFast); }), + new BeatAction.Action(beat + 10f, delegate { Serve(beat + 10f, RallySpeed.SuperFast); }) + }); + + MultiSound.Play(new MultiSound.Sound[] + { + new MultiSound.Sound("rhythmRally/Tonk", beat), + new MultiSound.Sound("rhythmRally/Tink", beat + 0.5f), + new MultiSound.Sound("rhythmRally/Tonk", beat + 1f), + new MultiSound.Sound("rhythmRally/Tink", beat + 1.5f), + new MultiSound.Sound("rhythmRally/Tonk", beat + 2f), + new MultiSound.Sound("rhythmRally/Tink", beat + 2.5f), + new MultiSound.Sound("rhythmRally/Tonk", beat + 3f), + new MultiSound.Sound("rhythmRally/Tink", beat + 3.5f) + }); + } + } } } \ No newline at end of file diff --git a/Assets/Scripts/Minigames.cs b/Assets/Scripts/Minigames.cs index 80b6b8cc..c23c9521 100644 --- a/Assets/Scripts/Minigames.cs +++ b/Assets/Scripts/Minigames.cs @@ -217,9 +217,13 @@ namespace RhythmHeavenMania new GameAction("reset tweezer delay", delegate { RhythmTweezers.instance.tweezerBeatOffset = 0f; }, 0.5f), }), - new Minigame("rhythmRally", "Rhythm Rally", "B888F8", true, false, new List() + new Minigame("rhythmRally", "Rhythm Rally \n[WIP don't use]", "B888F8", true, false, new List() { new GameAction("bop", delegate { RhythmRally.instance.Bop(eventCaller.currentEntity.beat, eventCaller.currentEntity.length); }, 0.5f, true), + new GameAction("rally", delegate { RhythmRally.instance.Serve(eventCaller.currentEntity.beat, RhythmRally.RallySpeed.Normal); }, 4f, true), + new GameAction("slow rally", delegate { RhythmRally.instance.Serve(eventCaller.currentEntity.beat, RhythmRally.RallySpeed.Slow); }, 8f, true), + new GameAction("fast rally", delegate { RhythmRally.instance.PrepareFastRally(eventCaller.currentEntity.beat, RhythmRally.RallySpeed.Fast); }, 6f), + new GameAction("superfast rally", delegate { RhythmRally.instance.PrepareFastRally(eventCaller.currentEntity.beat, RhythmRally.RallySpeed.SuperFast); }, 12f), }), /*new Minigame("spaceDance", "Space Dance", "B888F8", new List() {