diff --git a/Assets/Resources/Games/monkeyWatch.prefab b/Assets/Resources/Games/monkeyWatch.prefab index 0eb0ecdd7..8e9e59162 100644 --- a/Assets/Resources/Games/monkeyWatch.prefab +++ b/Assets/Resources/Games/monkeyWatch.prefab @@ -9217,7 +9217,7 @@ GameObject: m_Component: - component: {fileID: 6077857673690518966} - component: {fileID: 7398802270788821617} - - component: {fileID: 3914072427691651115} + - component: {fileID: 5520703815918216618} m_Layer: 0 m_Name: MiddleMonkey m_TagString: Untagged @@ -9293,7 +9293,7 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 ---- !u!95 &3914072427691651115 +--- !u!95 &5520703815918216618 Animator: serializedVersion: 5 m_ObjectHideFlags: 0 diff --git a/Assets/Resources/Sprites/Games/MonkeyWatch/Animations/MiddleMonkey.controller b/Assets/Resources/Sprites/Games/MonkeyWatch/Animations/MiddleMonkey.controller index 2eaa15d02..71fa03b04 100644 --- a/Assets/Resources/Sprites/Games/MonkeyWatch/Animations/MiddleMonkey.controller +++ b/Assets/Resources/Sprites/Games/MonkeyWatch/Animations/MiddleMonkey.controller @@ -1,46 +1,23 @@ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: ---- !u!1102 &-2374870408333832992 -AnimatorState: - serializedVersion: 6 - m_ObjectHideFlags: 1 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: MiddleMonkeyMiss - 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: 6f9fab23556f8ec4d97fa465b512a6a6, type: 2} - m_Tag: - m_SpeedParameter: - m_MirrorParameter: - m_CycleOffsetParameter: - m_TimeParameter: ---- !u!1107 &-117062094922640737 +--- !u!1107 &-6377095839666160042 AnimatorStateMachine: serializedVersion: 6 m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_Name: Base Layer + m_Name: Base m_ChildStates: - serializedVersion: 1 - m_State: {fileID: 7788121158215078322} - m_Position: {x: 200, y: 0, z: 0} + m_State: {fileID: -2956697439181848957} + m_Position: {x: 74, y: 255, z: 0} - serializedVersion: 1 - m_State: {fileID: -2374870408333832992} - m_Position: {x: 235, y: 65, z: 0} + m_State: {fileID: 1657346386591879520} + m_Position: {x: 289, y: 199, z: 0} + - serializedVersion: 1 + m_State: {fileID: 1476516494345818348} + m_Position: {x: 277, y: 36, z: 0} m_ChildStateMachines: [] m_AnyStateTransitions: [] m_EntryTransitions: [] @@ -50,30 +27,8 @@ AnimatorStateMachine: m_EntryPosition: {x: 50, y: 120, z: 0} m_ExitPosition: {x: 800, y: 120, z: 0} m_ParentStateMachinePosition: {x: 800, y: 20, z: 0} - m_DefaultState: {fileID: 7788121158215078322} ---- !u!91 &9100000 -AnimatorController: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_Name: MiddleMonkey - serializedVersion: 5 - m_AnimatorParameters: [] - m_AnimatorLayers: - - serializedVersion: 5 - m_Name: Base Layer - m_StateMachine: {fileID: -117062094922640737} - m_Mask: {fileID: 0} - m_Motions: [] - m_Behaviours: [] - m_BlendingMode: 0 - m_SyncedLayerIndex: -1 - m_DefaultWeight: 0 - m_IKPass: 0 - m_SyncedLayerAffectsTiming: 0 - m_Controller: {fileID: 9100000} ---- !u!1102 &7788121158215078322 + m_DefaultState: {fileID: 1476516494345818348} +--- !u!1102 &-2956697439181848957 AnimatorState: serializedVersion: 6 m_ObjectHideFlags: 1 @@ -99,3 +54,77 @@ AnimatorState: m_MirrorParameter: m_CycleOffsetParameter: m_TimeParameter: +--- !u!91 &9100000 +AnimatorController: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: MiddleMonkey + serializedVersion: 5 + m_AnimatorParameters: [] + m_AnimatorLayers: + - serializedVersion: 5 + m_Name: Base + m_StateMachine: {fileID: -6377095839666160042} + m_Mask: {fileID: 0} + m_Motions: [] + m_Behaviours: [] + m_BlendingMode: 0 + m_SyncedLayerIndex: -1 + m_DefaultWeight: 0 + m_IKPass: 0 + m_SyncedLayerAffectsTiming: 0 + m_Controller: {fileID: 9100000} +--- !u!1102 &1476516494345818348 +AnimatorState: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Nothing + 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: 0} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: +--- !u!1102 &1657346386591879520 +AnimatorState: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: MiddleMonkeyMiss + 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: 6f9fab23556f8ec4d97fa465b512a6a6, type: 2} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: diff --git a/Assets/Resources/Sprites/Games/MonkeyWatch/Animations/MiddleMonkeyBop.anim b/Assets/Resources/Sprites/Games/MonkeyWatch/Animations/MiddleMonkeyBop.anim index 4331c2b15..274c1d953 100644 --- a/Assets/Resources/Sprites/Games/MonkeyWatch/Animations/MiddleMonkeyBop.anim +++ b/Assets/Resources/Sprites/Games/MonkeyWatch/Animations/MiddleMonkeyBop.anim @@ -110,7 +110,7 @@ AnimationClip: m_Level: 0 m_CycleOffset: 0 m_HasAdditiveReferencePose: 0 - m_LoopTime: 1 + m_LoopTime: 0 m_LoopBlend: 0 m_LoopBlendOrientation: 0 m_LoopBlendPositionY: 0 diff --git a/Assets/Resources/Sprites/Games/MonkeyWatch/Animations/MiddleMonkeyMiss.anim b/Assets/Resources/Sprites/Games/MonkeyWatch/Animations/MiddleMonkeyMiss.anim index bc16f3db5..5885cab75 100644 --- a/Assets/Resources/Sprites/Games/MonkeyWatch/Animations/MiddleMonkeyMiss.anim +++ b/Assets/Resources/Sprites/Games/MonkeyWatch/Animations/MiddleMonkeyMiss.anim @@ -145,7 +145,7 @@ AnimationClip: m_Level: 0 m_CycleOffset: 0 m_HasAdditiveReferencePose: 0 - m_LoopTime: 1 + m_LoopTime: 0 m_LoopBlend: 0 m_LoopBlendOrientation: 0 m_LoopBlendPositionY: 0 diff --git a/Assets/Scripts/Games/MonkeyWatch/MonkeyClockArrow.cs b/Assets/Scripts/Games/MonkeyWatch/MonkeyClockArrow.cs index a69158760..a55ef9f35 100644 --- a/Assets/Scripts/Games/MonkeyWatch/MonkeyClockArrow.cs +++ b/Assets/Scripts/Games/MonkeyWatch/MonkeyClockArrow.cs @@ -40,6 +40,11 @@ namespace HeavenStudio.Games.Scripts_MonkeyWatch anchorRotateTransform.localEulerAngles = new Vector3(0, 0, -angle); } + public bool PlayerIsClapAnim() + { + return !playerMonkeyAnim.IsAnimationNotPlaying(); + } + public void PlayerClap(bool big, bool barely, bool whiff) { if (!playerMonkeyAnim.IsAnimationNotPlaying() && whiff) return; diff --git a/Assets/Scripts/Games/MonkeyWatch/MonkeyWatch.cs b/Assets/Scripts/Games/MonkeyWatch/MonkeyWatch.cs index 493b14d3e..cdea8230b 100644 --- a/Assets/Scripts/Games/MonkeyWatch/MonkeyWatch.cs +++ b/Assets/Scripts/Games/MonkeyWatch/MonkeyWatch.cs @@ -129,7 +129,7 @@ namespace HeavenStudio.Games [SerializeField] private Transform cameraAnchor; [SerializeField] private Transform cameraTransform; [SerializeField] private Transform cameraMoveable; - [SerializeField] private MonkeyClockArrow monkeyClockArrow; + public MonkeyClockArrow monkeyClockArrow; [SerializeField] private WatchMonkeyHandler monkeyHandler; [SerializeField] private WatchBackgroundHandler backgroundHandler; diff --git a/Assets/Scripts/Games/MonkeyWatch/WatchMonkey.cs b/Assets/Scripts/Games/MonkeyWatch/WatchMonkey.cs index 6cb73364d..c13fce380 100644 --- a/Assets/Scripts/Games/MonkeyWatch/WatchMonkey.cs +++ b/Assets/Scripts/Games/MonkeyWatch/WatchMonkey.cs @@ -26,6 +26,20 @@ namespace HeavenStudio.Games.Scripts_MonkeyWatch anim = GetComponent(); } + private void Update() + { + if (inputEvent != null && inputEvent.enabled) + { + if (PlayerInput.Pressed() && !game.IsExpectingInputNow(InputType.STANDARD_DOWN) && !game.monkeyClockArrow.PlayerIsClapAnim()) + { + SoundByte.PlayOneShot("miss"); + Miss(inputEvent); + inputEvent.Disable(); + game.ScoreMiss(); + } + } + } + public void Appear(double beat, bool instant, Animator hole, int dir) { monkeyBeat = beat; @@ -38,6 +52,13 @@ namespace HeavenStudio.Games.Scripts_MonkeyWatch public void Disappear() { holeAnim.DoScaledAnimationAsync("HoleClose", 0.4f); + anim.DoScaledAnimationAsync(isPink ? "PinkAppear" : "Appear", -0.4f, 1); + StartCoroutine(DisappearCoroutine()); + } + + private IEnumerator DisappearCoroutine() + { + yield return !anim.IsAnimationNotPlaying(); Destroy(gameObject); } @@ -49,7 +70,7 @@ namespace HeavenStudio.Games.Scripts_MonkeyWatch { new BeatAction.Action(prepareBeat, delegate { - anim.DoScaledAnimationAsync(isPink ? "PinkPrepare" + direction : "Prepare" + direction, 0.4f); + if (inputEvent != null && inputEvent.enabled) anim.DoScaledAnimationAsync(isPink ? "PinkPrepare" + direction : "Prepare" + direction, 0.4f); }) }); }