From 7ba9449d80aece4367232a6e6416eabe6bbc319f Mon Sep 17 00:00:00 2001 From: Braedon Date: Wed, 9 Feb 2022 02:46:49 -0500 Subject: [PATCH] DJ School extra sfx --- Assets/Resources/Games/djSchool.prefab | 95 ++++- .../Animations/DJ Yellow/DJ Yellow.controller | 89 ++++- .../Animations/DJ Yellow/HoldBop.anim | 226 ++++++++++++ .../Animations/DJ Yellow/HoldBop.anim.meta | 8 + .../DJ School/Animations/DJ Yellow/Idle.anim | 47 ++- .../Animations/DJ Yellow/IdleBop.anim | 328 ++++++++++++++++++ .../Animations/DJ Yellow/IdleBop.anim.meta | 8 + .../Animations/DJ Yellow/IdleBop2.anim | 83 +++++ .../Animations/DJ Yellow/IdleBop2.anim.meta | 8 + Assets/Scripts/Games/DJSchool/DJSchool.cs | 115 +++++- Assets/Scripts/Minigames.cs | 15 +- 11 files changed, 1003 insertions(+), 19 deletions(-) create mode 100644 Assets/Resources/Sprites/Games/DJ School/Animations/DJ Yellow/HoldBop.anim create mode 100644 Assets/Resources/Sprites/Games/DJ School/Animations/DJ Yellow/HoldBop.anim.meta create mode 100644 Assets/Resources/Sprites/Games/DJ School/Animations/DJ Yellow/IdleBop.anim create mode 100644 Assets/Resources/Sprites/Games/DJ School/Animations/DJ Yellow/IdleBop.anim.meta create mode 100644 Assets/Resources/Sprites/Games/DJ School/Animations/DJ Yellow/IdleBop2.anim create mode 100644 Assets/Resources/Sprites/Games/DJ School/Animations/DJ Yellow/IdleBop2.anim.meta diff --git a/Assets/Resources/Games/djSchool.prefab b/Assets/Resources/Games/djSchool.prefab index cc12f5f1..0c9d7cab 100644 --- a/Assets/Resources/Games/djSchool.prefab +++ b/Assets/Resources/Games/djSchool.prefab @@ -131,7 +131,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 3491821540871733713} - m_RootOrder: 1 + m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!212 &7149090226985644132 SpriteRenderer: @@ -175,7 +175,7 @@ SpriteRenderer: m_SortingOrder: 8 m_Sprite: {fileID: 4687460023271215300, guid: 0df5efc655895e943b8d6771eea1306b, type: 3} m_Color: {r: 1, g: 1, b: 1, a: 1} - m_FlipX: 1 + m_FlipX: 0 m_FlipY: 0 m_DrawMode: 0 m_Size: {x: 3.45, y: 2.96} @@ -546,6 +546,88 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 +--- !u!1 &5391573394863269773 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4933423805205071197} + - component: {fileID: 2630942807812169305} + m_Layer: 0 + m_Name: test (1) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 0 +--- !u!4 &4933423805205071197 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5391573394863269773} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 7.8542004, y: -1.8428999, z: 0} + m_LocalScale: {x: 6.553633, y: 6.336067, z: 3.2640865} + m_Children: [] + m_Father: {fileID: 3491821540871733713} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!212 &2630942807812169305 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5391573394863269773} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 0 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 0 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 105 + m_Sprite: {fileID: 21300000, guid: ece8f2938c0172948928dd1816bb756d, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 0.56078434} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 19.2, y: 10.8} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 --- !u!1 &5442390987565593313 GameObject: m_ObjectHideFlags: 0 @@ -604,6 +686,12 @@ MonoBehaviour: firstEnable: 0 student: {fileID: 49615016973798198} djYellow: {fileID: 6350785533834960028} + headSprite: {fileID: 7149090226985644132} + headSprites: + - {fileID: 4687460023271215300, guid: 0df5efc655895e943b8d6771eea1306b, type: 3} + - {fileID: 9103593749776465035, guid: 0df5efc655895e943b8d6771eea1306b, type: 3} + - {fileID: -1476842852793195437, guid: 0df5efc655895e943b8d6771eea1306b, type: 3} + - {fileID: -8492697867676836618, guid: 0df5efc655895e943b8d6771eea1306b, type: 3} --- !u!1 &5664174828068506126 GameObject: m_ObjectHideFlags: 0 @@ -817,7 +905,7 @@ Transform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 3491821540871733713} - m_RootOrder: 0 + m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!212 &1281418251896367363 SpriteRenderer: @@ -898,6 +986,7 @@ Transform: m_LocalPosition: {x: -1.925, y: 1.907, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: + - {fileID: 4933423805205071197} - {fileID: 6194700147666594011} - {fileID: 6826476109408312543} m_Father: {fileID: 8555870243713460004} diff --git a/Assets/Resources/Sprites/Games/DJ School/Animations/DJ Yellow/DJ Yellow.controller b/Assets/Resources/Sprites/Games/DJ School/Animations/DJ Yellow/DJ Yellow.controller index efb7ce68..bf6c7d39 100644 --- a/Assets/Resources/Sprites/Games/DJ School/Animations/DJ Yellow/DJ Yellow.controller +++ b/Assets/Resources/Sprites/Games/DJ School/Animations/DJ Yellow/DJ Yellow.controller @@ -1,5 +1,31 @@ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: +--- !u!1102 &-8014542166285188035 +AnimatorState: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: IdleBop2 + 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: a51d30e5f94f86a40a4ca951e7732b31, type: 2} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: --- !u!1102 &-5879001725381571711 AnimatorState: serializedVersion: 6 @@ -53,6 +79,15 @@ AnimatorStateMachine: - serializedVersion: 1 m_State: {fileID: 4845232959518907384} m_Position: {x: 375, y: 325, z: 0} + - serializedVersion: 1 + m_State: {fileID: -2996248315630427433} + m_Position: {x: 180, y: 420, z: 0} + - serializedVersion: 1 + m_State: {fileID: -8014542166285188035} + m_Position: {x: 215, y: 485, z: 0} + - serializedVersion: 1 + m_State: {fileID: -443118460206390435} + m_Position: {x: 250, y: 550, z: 0} m_ChildStateMachines: [] m_AnyStateTransitions: [] m_EntryTransitions: [] @@ -89,6 +124,58 @@ AnimatorState: m_MirrorParameter: m_CycleOffsetParameter: m_TimeParameter: +--- !u!1102 &-2996248315630427433 +AnimatorState: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: IdleBop + 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: badf433e1e1ddab4eafcc0be8ca54427, type: 2} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: +--- !u!1102 &-443118460206390435 +AnimatorState: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: HoldBop + 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: bbb2ad1fd9cb00b49a4eb28f3ada1e95, type: 2} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: --- !u!91 &9100000 AnimatorController: m_ObjectHideFlags: 0 @@ -119,7 +206,7 @@ AnimatorState: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_Name: Idle - m_Speed: 1 + m_Speed: 0 m_CycleOffset: 0 m_Transitions: [] m_StateMachineBehaviours: [] diff --git a/Assets/Resources/Sprites/Games/DJ School/Animations/DJ Yellow/HoldBop.anim b/Assets/Resources/Sprites/Games/DJ School/Animations/DJ Yellow/HoldBop.anim new file mode 100644 index 00000000..1e937bd3 --- /dev/null +++ b/Assets/Resources/Sprites/Games/DJ School/Animations/DJ Yellow/HoldBop.anim @@ -0,0 +1,226 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!74 &7400000 +AnimationClip: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: HoldBop + serializedVersion: 6 + m_Legacy: 0 + m_Compressed: 0 + m_UseHighQualityCurve: 1 + m_RotationCurves: [] + m_CompressedRotationCurves: [] + m_EulerCurves: [] + m_PositionCurves: + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: {x: 0.184, y: 0.335, z: 0} + inSlope: {x: Infinity, y: Infinity, z: Infinity} + outSlope: {x: Infinity, y: Infinity, z: Infinity} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + - serializedVersion: 3 + time: 0.033333335 + value: {x: 0.184, y: 0.44, z: 0} + inSlope: {x: Infinity, y: Infinity, z: Infinity} + outSlope: {x: Infinity, y: Infinity, z: Infinity} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + - serializedVersion: 3 + time: 0.06666667 + value: {x: 0.184, y: 0.679, z: 0} + inSlope: {x: Infinity, y: Infinity, z: Infinity} + outSlope: {x: Infinity, y: Infinity, z: Infinity} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + path: Head + m_ScaleCurves: [] + m_FloatCurves: [] + m_PPtrCurves: + - curve: + - time: 0 + value: {fileID: 7655561789685363201, guid: 15a4d1a63a113d64ab903fd38f759b6d, type: 3} + - time: 0.033333335 + value: {fileID: -6879033596239357, guid: 15a4d1a63a113d64ab903fd38f759b6d, type: 3} + - time: 0.06666667 + value: {fileID: 5980989039126267469, guid: 15a4d1a63a113d64ab903fd38f759b6d, type: 3} + attribute: m_Sprite + path: Torso + classID: 212 + script: {fileID: 0} + m_SampleRate: 30 + m_WrapMode: 0 + m_Bounds: + m_Center: {x: 0, y: 0, z: 0} + m_Extent: {x: 0, y: 0, z: 0} + m_ClipBindingConstant: + genericBindings: + - serializedVersion: 2 + path: 130111906 + attribute: 1 + script: {fileID: 0} + typeID: 4 + customType: 0 + isPPtrCurve: 0 + - serializedVersion: 2 + path: 3869152129 + attribute: 0 + script: {fileID: 0} + typeID: 212 + customType: 23 + isPPtrCurve: 1 + pptrCurveMapping: + - {fileID: 7655561789685363201, guid: 15a4d1a63a113d64ab903fd38f759b6d, type: 3} + - {fileID: -6879033596239357, guid: 15a4d1a63a113d64ab903fd38f759b6d, type: 3} + - {fileID: 5980989039126267469, guid: 15a4d1a63a113d64ab903fd38f759b6d, type: 3} + m_AnimationClipSettings: + serializedVersion: 2 + m_AdditiveReferencePoseClip: {fileID: 0} + m_AdditiveReferencePoseTime: 0 + m_StartTime: 0 + m_StopTime: 0.10000001 + m_OrientationOffsetY: 0 + m_Level: 0 + m_CycleOffset: 0 + m_HasAdditiveReferencePose: 0 + m_LoopTime: 0 + m_LoopBlend: 0 + m_LoopBlendOrientation: 0 + m_LoopBlendPositionY: 0 + m_LoopBlendPositionXZ: 0 + m_KeepOriginalOrientation: 0 + m_KeepOriginalPositionY: 1 + m_KeepOriginalPositionXZ: 0 + m_HeightFromFeet: 0 + m_Mirror: 0 + m_EditorCurves: + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0.184 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.033333335 + value: 0.184 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.06666667 + value: 0.184 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalPosition.x + path: Head + classID: 4 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0.335 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.033333335 + value: 0.44 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.06666667 + value: 0.679 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalPosition.y + path: Head + classID: 4 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.033333335 + value: 0 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.06666667 + value: 0 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalPosition.z + path: Head + classID: 4 + script: {fileID: 0} + m_EulerEditorCurves: [] + m_HasGenericRootTransform: 0 + m_HasMotionFloatCurves: 0 + m_Events: [] diff --git a/Assets/Resources/Sprites/Games/DJ School/Animations/DJ Yellow/HoldBop.anim.meta b/Assets/Resources/Sprites/Games/DJ School/Animations/DJ Yellow/HoldBop.anim.meta new file mode 100644 index 00000000..5cd48c0e --- /dev/null +++ b/Assets/Resources/Sprites/Games/DJ School/Animations/DJ Yellow/HoldBop.anim.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: bbb2ad1fd9cb00b49a4eb28f3ada1e95 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 7400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Sprites/Games/DJ School/Animations/DJ Yellow/Idle.anim b/Assets/Resources/Sprites/Games/DJ School/Animations/DJ Yellow/Idle.anim index e7c83615..1c5b8faa 100644 --- a/Assets/Resources/Sprites/Games/DJ School/Animations/DJ Yellow/Idle.anim +++ b/Assets/Resources/Sprites/Games/DJ School/Animations/DJ Yellow/Idle.anim @@ -48,7 +48,26 @@ AnimationClip: m_RotationOrder: 4 path: Head m_ScaleCurves: [] - m_FloatCurves: [] + m_FloatCurves: + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_FlipX + path: Head + classID: 212 + script: {fileID: 0} m_PPtrCurves: [] m_SampleRate: 60 m_WrapMode: 0 @@ -57,6 +76,13 @@ AnimationClip: m_Extent: {x: 0, y: 0, z: 0} m_ClipBindingConstant: genericBindings: + - serializedVersion: 2 + path: 130111906 + attribute: 555744692 + script: {fileID: 0} + typeID: 212 + customType: 0 + isPPtrCurve: 0 - serializedVersion: 2 path: 3869152129 attribute: 1 @@ -207,6 +233,25 @@ AnimationClip: path: Head classID: 4 script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_FlipX + path: Head + classID: 212 + script: {fileID: 0} m_EulerEditorCurves: [] m_HasGenericRootTransform: 0 m_HasMotionFloatCurves: 0 diff --git a/Assets/Resources/Sprites/Games/DJ School/Animations/DJ Yellow/IdleBop.anim b/Assets/Resources/Sprites/Games/DJ School/Animations/DJ Yellow/IdleBop.anim new file mode 100644 index 00000000..f0790075 --- /dev/null +++ b/Assets/Resources/Sprites/Games/DJ School/Animations/DJ Yellow/IdleBop.anim @@ -0,0 +1,328 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!74 &7400000 +AnimationClip: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: IdleBop + serializedVersion: 6 + m_Legacy: 0 + m_Compressed: 0 + m_UseHighQualityCurve: 1 + m_RotationCurves: [] + m_CompressedRotationCurves: [] + m_EulerCurves: [] + m_PositionCurves: + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: {x: -0.193, y: 0.525, z: 0} + inSlope: {x: Infinity, y: Infinity, z: Infinity} + outSlope: {x: Infinity, y: Infinity, z: Infinity} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + - serializedVersion: 3 + time: 0.033333335 + value: {x: -0.329, y: 0.575, z: 0} + inSlope: {x: Infinity, y: Infinity, z: Infinity} + outSlope: {x: Infinity, y: Infinity, z: Infinity} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + - serializedVersion: 3 + time: 0.083333336 + value: {x: -0.404, y: 0.645, z: 0} + inSlope: {x: Infinity, y: Infinity, z: Infinity} + outSlope: {x: Infinity, y: Infinity, z: Infinity} + tangentMode: 0 + weightedMode: 0 + inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334} + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + path: Head + m_ScaleCurves: [] + m_FloatCurves: + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_FlipX + path: Head + classID: 212 + script: {fileID: 0} + m_PPtrCurves: + - curve: + - time: 0 + value: {fileID: -1457410329324320135, guid: 15a4d1a63a113d64ab903fd38f759b6d, type: 3} + - time: 0.033333335 + value: {fileID: 7957578405759094433, guid: 15a4d1a63a113d64ab903fd38f759b6d, type: 3} + - time: 0.083333336 + value: {fileID: -7749792712589346508, guid: 15a4d1a63a113d64ab903fd38f759b6d, type: 3} + attribute: m_Sprite + path: Torso + classID: 212 + script: {fileID: 0} + - curve: + - time: 0 + value: {fileID: 21300000, guid: ece8f2938c0172948928dd1816bb756d, type: 3} + - time: 0.016666668 + value: {fileID: 21300000, guid: 20bfe2cce8859fa449c39c5619526112, type: 3} + - time: 0.033333335 + value: {fileID: 21300000, guid: 4db566a11868c294db284cd4c22c3284, type: 3} + - time: 0.05 + value: {fileID: 21300000, guid: 2cf6a2b65bc3c6d49be767275145efe2, type: 3} + - time: 0.06666667 + value: {fileID: 21300000, guid: cc0fe2efc16d0944aa2b0a2e8108234a, type: 3} + - time: 0.083333336 + value: {fileID: 21300000, guid: 6894cccd8108070409e7dda8e7bcfdd6, type: 3} + - time: 0.1 + value: {fileID: 21300000, guid: df0a11d3a9ecd3749b45649e3060d4fc, type: 3} + - time: 0.11666667 + value: {fileID: 21300000, guid: 82dbda32c8593fd4995e17842af5342b, type: 3} + - time: 0.13333334 + value: {fileID: 21300000, guid: b22e24a03dcd0ef4e92f61dd6cd3a273, type: 3} + - time: 0.15 + value: {fileID: 21300000, guid: e9be2387b700d8849ba8991e94a00c2f, type: 3} + - time: 0.16666667 + value: {fileID: 21300000, guid: 45bb94ea397600641a7e1ec53c778524, type: 3} + - time: 0.18333334 + value: {fileID: 21300000, guid: 4031433a0e1a90a4386a53e8a15d0b93, type: 3} + - time: 0.2 + value: {fileID: 21300000, guid: 29a94453f7001774da7a294f6ce8f1a5, type: 3} + - time: 0.21666667 + value: {fileID: 21300000, guid: 21192e543c1c72d4692d4fda2fe56a50, type: 3} + - time: 0.23333333 + value: {fileID: 21300000, guid: 5eea7bef621468b4688e4fcb49c4a408, type: 3} + attribute: m_Sprite + path: test (1) + classID: 212 + script: {fileID: 0} + m_SampleRate: 60 + m_WrapMode: 0 + m_Bounds: + m_Center: {x: 0, y: 0, z: 0} + m_Extent: {x: 0, y: 0, z: 0} + m_ClipBindingConstant: + genericBindings: + - serializedVersion: 2 + path: 130111906 + attribute: 1 + script: {fileID: 0} + typeID: 4 + customType: 0 + isPPtrCurve: 0 + - serializedVersion: 2 + path: 130111906 + attribute: 555744692 + script: {fileID: 0} + typeID: 212 + customType: 0 + isPPtrCurve: 0 + - serializedVersion: 2 + path: 3869152129 + attribute: 0 + script: {fileID: 0} + typeID: 212 + customType: 23 + isPPtrCurve: 1 + - serializedVersion: 2 + path: 131153305 + attribute: 0 + script: {fileID: 0} + typeID: 212 + customType: 23 + isPPtrCurve: 1 + pptrCurveMapping: + - {fileID: -1457410329324320135, guid: 15a4d1a63a113d64ab903fd38f759b6d, type: 3} + - {fileID: 7957578405759094433, guid: 15a4d1a63a113d64ab903fd38f759b6d, type: 3} + - {fileID: -7749792712589346508, guid: 15a4d1a63a113d64ab903fd38f759b6d, type: 3} + - {fileID: 21300000, guid: ece8f2938c0172948928dd1816bb756d, type: 3} + - {fileID: 21300000, guid: 20bfe2cce8859fa449c39c5619526112, type: 3} + - {fileID: 21300000, guid: 4db566a11868c294db284cd4c22c3284, type: 3} + - {fileID: 21300000, guid: 2cf6a2b65bc3c6d49be767275145efe2, type: 3} + - {fileID: 21300000, guid: cc0fe2efc16d0944aa2b0a2e8108234a, type: 3} + - {fileID: 21300000, guid: 6894cccd8108070409e7dda8e7bcfdd6, type: 3} + - {fileID: 21300000, guid: df0a11d3a9ecd3749b45649e3060d4fc, type: 3} + - {fileID: 21300000, guid: 82dbda32c8593fd4995e17842af5342b, type: 3} + - {fileID: 21300000, guid: b22e24a03dcd0ef4e92f61dd6cd3a273, type: 3} + - {fileID: 21300000, guid: e9be2387b700d8849ba8991e94a00c2f, type: 3} + - {fileID: 21300000, guid: 45bb94ea397600641a7e1ec53c778524, type: 3} + - {fileID: 21300000, guid: 4031433a0e1a90a4386a53e8a15d0b93, type: 3} + - {fileID: 21300000, guid: 29a94453f7001774da7a294f6ce8f1a5, type: 3} + - {fileID: 21300000, guid: 21192e543c1c72d4692d4fda2fe56a50, type: 3} + - {fileID: 21300000, guid: 5eea7bef621468b4688e4fcb49c4a408, type: 3} + m_AnimationClipSettings: + serializedVersion: 2 + m_AdditiveReferencePoseClip: {fileID: 0} + m_AdditiveReferencePoseTime: 0 + m_StartTime: 0 + m_StopTime: 0.25 + m_OrientationOffsetY: 0 + m_Level: 0 + m_CycleOffset: 0 + m_HasAdditiveReferencePose: 0 + m_LoopTime: 0 + m_LoopBlend: 0 + m_LoopBlendOrientation: 0 + m_LoopBlendPositionY: 0 + m_LoopBlendPositionXZ: 0 + m_KeepOriginalOrientation: 0 + m_KeepOriginalPositionY: 1 + m_KeepOriginalPositionXZ: 0 + m_HeightFromFeet: 0 + m_Mirror: 0 + m_EditorCurves: + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: -0.193 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.033333335 + value: -0.329 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.083333336 + value: -0.404 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalPosition.x + path: Head + classID: 4 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0.525 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.033333335 + value: 0.575 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.083333336 + value: 0.645 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalPosition.y + path: Head + classID: 4 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.033333335 + value: 0 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.083333336 + value: 0 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalPosition.z + path: Head + classID: 4 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 1 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_FlipX + path: Head + classID: 212 + script: {fileID: 0} + m_EulerEditorCurves: [] + m_HasGenericRootTransform: 0 + m_HasMotionFloatCurves: 0 + m_Events: [] diff --git a/Assets/Resources/Sprites/Games/DJ School/Animations/DJ Yellow/IdleBop.anim.meta b/Assets/Resources/Sprites/Games/DJ School/Animations/DJ Yellow/IdleBop.anim.meta new file mode 100644 index 00000000..cafee29f --- /dev/null +++ b/Assets/Resources/Sprites/Games/DJ School/Animations/DJ Yellow/IdleBop.anim.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: badf433e1e1ddab4eafcc0be8ca54427 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 7400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Sprites/Games/DJ School/Animations/DJ Yellow/IdleBop2.anim b/Assets/Resources/Sprites/Games/DJ School/Animations/DJ Yellow/IdleBop2.anim new file mode 100644 index 00000000..24499bcf --- /dev/null +++ b/Assets/Resources/Sprites/Games/DJ School/Animations/DJ Yellow/IdleBop2.anim @@ -0,0 +1,83 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!74 &7400000 +AnimationClip: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: IdleBop2 + serializedVersion: 6 + m_Legacy: 0 + m_Compressed: 0 + m_UseHighQualityCurve: 1 + m_RotationCurves: [] + m_CompressedRotationCurves: [] + m_EulerCurves: [] + m_PositionCurves: [] + m_ScaleCurves: [] + m_FloatCurves: [] + m_PPtrCurves: + - curve: + - time: 0 + value: {fileID: 21300000, guid: 412d0016b83f0f8489680e4bef09cd9b, type: 3} + attribute: m_Sprite + path: test (1) + classID: 212 + script: {fileID: 0} + - curve: + - time: 0 + value: {fileID: -1457410329324320135, guid: 15a4d1a63a113d64ab903fd38f759b6d, type: 3} + attribute: m_Sprite + path: Torso + classID: 212 + script: {fileID: 0} + m_SampleRate: 60 + m_WrapMode: 0 + m_Bounds: + m_Center: {x: 0, y: 0, z: 0} + m_Extent: {x: 0, y: 0, z: 0} + m_ClipBindingConstant: + genericBindings: + - serializedVersion: 2 + path: 131153305 + attribute: 0 + script: {fileID: 0} + typeID: 212 + customType: 23 + isPPtrCurve: 1 + - serializedVersion: 2 + path: 3869152129 + attribute: 0 + script: {fileID: 0} + typeID: 212 + customType: 23 + isPPtrCurve: 1 + pptrCurveMapping: + - {fileID: 21300000, guid: 412d0016b83f0f8489680e4bef09cd9b, type: 3} + - {fileID: -1457410329324320135, guid: 15a4d1a63a113d64ab903fd38f759b6d, type: 3} + m_AnimationClipSettings: + serializedVersion: 2 + m_AdditiveReferencePoseClip: {fileID: 0} + m_AdditiveReferencePoseTime: 0 + m_StartTime: 0 + m_StopTime: 0.016666668 + m_OrientationOffsetY: 0 + m_Level: 0 + m_CycleOffset: 0 + m_HasAdditiveReferencePose: 0 + m_LoopTime: 1 + m_LoopBlend: 0 + m_LoopBlendOrientation: 0 + m_LoopBlendPositionY: 0 + m_LoopBlendPositionXZ: 0 + m_KeepOriginalOrientation: 0 + m_KeepOriginalPositionY: 1 + m_KeepOriginalPositionXZ: 0 + m_HeightFromFeet: 0 + m_Mirror: 0 + m_EditorCurves: [] + m_EulerEditorCurves: [] + m_HasGenericRootTransform: 0 + m_HasMotionFloatCurves: 0 + m_Events: [] diff --git a/Assets/Resources/Sprites/Games/DJ School/Animations/DJ Yellow/IdleBop2.anim.meta b/Assets/Resources/Sprites/Games/DJ School/Animations/DJ Yellow/IdleBop2.anim.meta new file mode 100644 index 00000000..bdef3d11 --- /dev/null +++ b/Assets/Resources/Sprites/Games/DJ School/Animations/DJ Yellow/IdleBop2.anim.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a51d30e5f94f86a40a4ca951e7732b31 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 7400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Games/DJSchool/DJSchool.cs b/Assets/Scripts/Games/DJSchool/DJSchool.cs index 034d179b..52599512 100644 --- a/Assets/Scripts/Games/DJSchool/DJSchool.cs +++ b/Assets/Scripts/Games/DJSchool/DJSchool.cs @@ -10,9 +10,13 @@ namespace RhythmHeavenMania.Games.DJSchool [Header("Components")] [SerializeField] private Student student; [SerializeField] private GameObject djYellow; + private Animator djYellowAnim; + [SerializeField] private SpriteRenderer headSprite; + [SerializeField] private Sprite[] headSprites; [Header("Properties")] public GameEvent bop = new GameEvent(); + private bool djYellowHolding; public static DJSchool instance { get; private set; } @@ -21,6 +25,11 @@ namespace RhythmHeavenMania.Games.DJSchool instance = this; } + private void Start() + { + djYellowAnim = djYellow.GetComponent(); + } + private void Update() { if (Conductor.instance.ReportBeat(ref bop.lastReportedBeat, bop.startBeat % 1)) @@ -38,6 +47,18 @@ namespace RhythmHeavenMania.Games.DJSchool student.anim.Play("IdleBop", 0, 0); } } + if (djYellowAnim.IsAnimationNotPlaying()) + { + if (djYellowHolding) + { + djYellowAnim.Play("HoldBop", 0, 0); + } + else + { + // there is no sprite for the alternate idle bop, oh well + djYellowAnim.Play("IdleBop", 0, 0); + } + } } } } @@ -48,44 +69,118 @@ namespace RhythmHeavenMania.Games.DJSchool bop.length = length; } - public void BreakCmon(float beat) + public void BreakCmon(float beat, int type) { + if (djYellowHolding) return; + + string[] sounds = new string[] { }; + + if (type == 0) + { + sounds = new string[] { "djSchool/breakCmon1", "djSchool/breakCmon2", "djSchool/ooh" }; + } + else if (type == 1) + { + sounds = new string[] { "djSchool/breakCmonAlt1", "djSchool/breakCmonAlt2", "djSchool/oohAlt" }; + } + else if (type == 2) + { + SetDJYellowHead(2); + sounds = new string[] { "djSchool/breakCmonLoud1", "djSchool/breakCmonLoud2", "djSchool/oohLoud" }; + } + + MultiSound.Play(new MultiSound.Sound[] { - new MultiSound.Sound("djSchool/breakCmon1", beat), - new MultiSound.Sound("djSchool/breakCmon2", beat + 1f), - new MultiSound.Sound("djSchool/ooh", beat + 2f), + new MultiSound.Sound(sounds[0], beat), + new MultiSound.Sound(sounds[1], beat + 1f), + new MultiSound.Sound(sounds[2], beat + 2f), }); BeatAction.New(djYellow, new List() { new BeatAction.Action(beat, delegate { djYellow.GetComponent().Play("BreakCmon", 0, 0); }), new BeatAction.Action(beat + 1f, delegate { djYellow.GetComponent().Play("BreakCmon", 0, 0); }), - new BeatAction.Action(beat + 2f, delegate { djYellow.GetComponent().Play("Hold", 0, 0); }), + new BeatAction.Action(beat + 2f, delegate + { + djYellow.GetComponent().Play("Hold", 0, 0); + djYellowHolding = true; + SetDJYellowHead(1); + }), }); student.holdBeat = beat; student.ResetState(); } - public void ScratchoHey(float beat) + public void AndStop(float beat) { + if (djYellowHolding) return; + MultiSound.Play(new MultiSound.Sound[] { - new MultiSound.Sound("djSchool/scratchoHey1", beat), - new MultiSound.Sound("djSchool/scratchoHey2", beat + 1f), - new MultiSound.Sound("djSchool/hey", beat + 2f), + new MultiSound.Sound("djSchool/andStop1", beat), + new MultiSound.Sound("djSchool/andStop2", beat + 0.35f), + new MultiSound.Sound("djSchool/oohAlt", beat + 1.5f), + }); + + BeatAction.New(djYellow, new List() + { + new BeatAction.Action(beat + 0.5f, delegate { djYellow.GetComponent().Play("BreakCmon", 0, 0); }), + new BeatAction.Action(beat + 1.5f, delegate + { + djYellow.GetComponent().Play("Hold", 0, 0); + djYellowHolding = true; + SetDJYellowHead(1); + }), + }); + + student.holdBeat = beat - 0.5f; + student.ResetState(); + } + + public void ScratchoHey(float beat, int type) + { + string[] sounds = new string[] { }; + + if (type == 0) + { + sounds = new string[] { "djSchool/scratchoHey1", "djSchool/scratchoHey2", "djSchool/hey" }; + } + else if (type == 1) + { + sounds = new string[] { "djSchool/scratchoHeyAlt1", "djSchool/scratchoHeyAlt2", "djSchool/heyAlt" }; + } + else if (type == 2) + { + sounds = new string[] { "djSchool/scratchoHeyLoud1", "djSchool/scratchoHeyLoud2", "djSchool/heyLoud" }; + } + + MultiSound.Play(new MultiSound.Sound[] + { + new MultiSound.Sound(sounds[0], beat), + new MultiSound.Sound(sounds[1], beat + 1f), + new MultiSound.Sound(sounds[2], beat + 2f), }); BeatAction.New(djYellow, new List() { new BeatAction.Action(beat, delegate { djYellow.GetComponent().Play("Scratcho", 0, 0); }), new BeatAction.Action(beat + 1f, delegate { djYellow.GetComponent().Play("Scratcho2", 0, 0); }), - new BeatAction.Action(beat + 2.05f, delegate { djYellow.GetComponent().Play("Hey", 0, 0); }), + new BeatAction.Action(beat + 2.05f, delegate + { + djYellow.GetComponent().Play("Hey", 0, 0); + djYellowHolding = false; + }), }); student.swipeBeat = beat; student.ResetState(); } + + private void SetDJYellowHead(int type) + { + headSprite.sprite = headSprites[type]; + } } } \ No newline at end of file diff --git a/Assets/Scripts/Minigames.cs b/Assets/Scripts/Minigames.cs index d49fa25a..79e69cd9 100644 --- a/Assets/Scripts/Minigames.cs +++ b/Assets/Scripts/Minigames.cs @@ -184,13 +184,20 @@ namespace RhythmHeavenMania new Minigame("djSchool", "DJ School \n[Non-Playable]", "008c97", false, false, new List() { new GameAction("bop", delegate { DJSchool.instance.Bop(eventCaller.currentEntity.beat, eventCaller.currentEntity.length); }, 0.5f, true), - new GameAction("break c'mon ooh", delegate { DJSchool.instance.BreakCmon(eventCaller.currentEntity.beat); }, 3f), - new GameAction("scratch-o hey", delegate { DJSchool.instance.ScratchoHey(eventCaller.currentEntity.beat); }, 3f), + new GameAction("and stop ooh", delegate { DJSchool.instance.AndStop(eventCaller.currentEntity.beat); }, 2.5f), + new GameAction("break c'mon ooh", delegate { DJSchool.instance.BreakCmon(eventCaller.currentEntity.beat, eventCaller.currentEntity.type); }, 3f, false, new List() + { + new Param("type", new EntityTypes.Integer(0, 2, 0), "Type"), + }), + new GameAction("scratch-o hey", delegate { DJSchool.instance.ScratchoHey(eventCaller.currentEntity.beat, eventCaller.currentEntity.type); }, 3f, false, new List() + { + new Param("type", new EntityTypes.Integer(0, 2, 0), "Type"), + }), }), - /*new Minigame("rhythmTweezers", "VeggieTales", "008c97", false, false, new List() + new Minigame("rhythmTweezers", "VeggieTales", "008c97", false, false, new List() { }), - new Minigame("rhythmRally", "Rhythm Rally", "B888F8", true, false, new List() + /*new Minigame("rhythmRally", "Rhythm Rally", "B888F8", true, false, new List() { }),