diff --git a/Assets/Resources/Games/totemClimb.prefab b/Assets/Resources/Games/totemClimb.prefab index 7165fcd0e..ec36d6e4c 100644 --- a/Assets/Resources/Games/totemClimb.prefab +++ b/Assets/Resources/Games/totemClimb.prefab @@ -179,13 +179,13 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 240329862653316689} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: -1.96, y: -2.98, z: 0} - m_LocalScale: {x: 1.25, y: 1.25, z: 1} + m_LocalPosition: {x: -1.74, y: -2.77, z: 0} + m_LocalScale: {x: 1.15, y: 1.15, z: 1} m_ConstrainProportionsScale: 0 m_Children: - - {fileID: 2653965045326994221} - - {fileID: 5838631045631306173} - - {fileID: 3697837675551645759} + - {fileID: 5055052278657109904} + - {fileID: 8375281236394494838} + - {fileID: 3797884149105897730} - {fileID: 644641883719781763} - {fileID: 7994465469293337682} - {fileID: 2412478017021253490} @@ -204,9 +204,9 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 81963aa088010e041935d18a5b18a894, type: 3} m_Name: m_EditorClassIdentifier: - _animLeft: {fileID: 0} - _animMiddle: {fileID: 0} - _animRight: {fileID: 0} + _animLeft: {fileID: 6605965118289745055} + _animMiddle: {fileID: 9172534905865608619} + _animRight: {fileID: 3185233777663390107} _jumperPointLeft: {fileID: 644641883719781763} _jumperPointMiddle: {fileID: 7994465469293337682} _jumperPointRight: {fileID: 2412478017021253490} @@ -221,7 +221,7 @@ GameObject: - component: {fileID: 5838631045631306173} - component: {fileID: 3940511003799163010} m_Layer: 0 - m_Name: frog1 + m_Name: frog m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -235,12 +235,12 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 516513247633929993} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 2.132, y: 1.176, z: 0} + m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.47, y: 0.47, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] - m_Father: {fileID: 5749667637740173319} - m_RootOrder: 1 + m_Father: {fileID: 8375281236394494838} + m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!212 &3940511003799163010 SpriteRenderer: @@ -389,7 +389,7 @@ GameObject: - component: {fileID: 2653965045326994221} - component: {fileID: 6777988195910203299} m_Layer: 0 - m_Name: frog0 + m_Name: frog m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -403,11 +403,11 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1706471924819112776} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 0.707, z: 0} + m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.47, y: 0.47, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] - m_Father: {fileID: 5749667637740173319} + m_Father: {fileID: 5055052278657109904} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!212 &6777988195910203299 @@ -733,6 +733,60 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 +--- !u!1 &2626947558778924154 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8375281236394494838} + - component: {fileID: 9172534905865608619} + m_Layer: 0 + m_Name: middle + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &8375281236394494838 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2626947558778924154} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 2.132, y: 1.176, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 5838631045631306173} + m_Father: {fileID: 5749667637740173319} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!95 &9172534905865608619 +Animator: + serializedVersion: 5 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2626947558778924154} + m_Enabled: 1 + m_Avatar: {fileID: 0} + m_Controller: {fileID: 9100000, guid: 5eaaa5fa2c6cfa941a1181851505d29b, type: 2} + m_CullingMode: 0 + m_UpdateMode: 0 + m_ApplyRootMotion: 0 + m_LinearVelocityBlending: 0 + m_StabilizeFeet: 0 + m_WarningMessage: + m_HasTransformHierarchy: 1 + m_AllowConstantClipSamplingOptimization: 1 + m_KeepAnimatorStateOnDisable: 0 + m_WriteDefaultValuesOnDisable: 0 --- !u!1 &3055485254411662678 GameObject: m_ObjectHideFlags: 0 @@ -1439,6 +1493,60 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 +--- !u!1 &5280287711057663765 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5055052278657109904} + - component: {fileID: 6605965118289745055} + m_Layer: 0 + m_Name: left + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5055052278657109904 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5280287711057663765} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0.707, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 2653965045326994221} + m_Father: {fileID: 5749667637740173319} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!95 &6605965118289745055 +Animator: + serializedVersion: 5 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5280287711057663765} + m_Enabled: 1 + m_Avatar: {fileID: 0} + m_Controller: {fileID: 9100000, guid: 5eaaa5fa2c6cfa941a1181851505d29b, type: 2} + m_CullingMode: 0 + m_UpdateMode: 0 + m_ApplyRootMotion: 0 + m_LinearVelocityBlending: 0 + m_StabilizeFeet: 0 + m_WarningMessage: + m_HasTransformHierarchy: 1 + m_AllowConstantClipSamplingOptimization: 1 + m_KeepAnimatorStateOnDisable: 0 + m_WriteDefaultValuesOnDisable: 0 --- !u!1 &5303839123713395111 GameObject: m_ObjectHideFlags: 0 @@ -1450,7 +1558,7 @@ GameObject: - component: {fileID: 3697837675551645759} - component: {fileID: 3560656319715988789} m_Layer: 0 - m_Name: frog2 + m_Name: frog m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -1464,12 +1572,12 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5303839123713395111} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 4.291, y: 1.291, z: 0} + m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.47, y: 0.47, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] - m_Father: {fileID: 5749667637740173319} - m_RootOrder: 2 + m_Father: {fileID: 3797884149105897730} + m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!212 &3560656319715988789 SpriteRenderer: @@ -2173,6 +2281,60 @@ SpriteRenderer: m_WasSpriteAssigned: 1 m_MaskInteraction: 0 m_SpriteSortPoint: 0 +--- !u!1 &8312308003176724912 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3797884149105897730} + - component: {fileID: 3185233777663390107} + m_Layer: 0 + m_Name: right + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &3797884149105897730 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8312308003176724912} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 4.291, y: 1.291, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 3697837675551645759} + m_Father: {fileID: 5749667637740173319} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!95 &3185233777663390107 +Animator: + serializedVersion: 5 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8312308003176724912} + m_Enabled: 1 + m_Avatar: {fileID: 0} + m_Controller: {fileID: 9100000, guid: 5eaaa5fa2c6cfa941a1181851505d29b, type: 2} + m_CullingMode: 0 + m_UpdateMode: 0 + m_ApplyRootMotion: 0 + m_LinearVelocityBlending: 0 + m_StabilizeFeet: 0 + m_WarningMessage: + m_HasTransformHierarchy: 1 + m_AllowConstantClipSamplingOptimization: 1 + m_KeepAnimatorStateOnDisable: 0 + m_WriteDefaultValuesOnDisable: 0 --- !u!1 &8360070183263973874 GameObject: m_ObjectHideFlags: 0 @@ -2408,6 +2570,7 @@ MonoBehaviour: offset: {x: 0, y: 0, z: 0} _initialPoint: {fileID: 7302560279692477592} _jumpHeight: 2 + _jumpHeightTriple: 1 --- !u!95 &7450811870195608846 Animator: serializedVersion: 5 diff --git a/Assets/Resources/Sprites/Games/TotemClimb/Animations/Frog.meta b/Assets/Resources/Sprites/Games/TotemClimb/Animations/Frog.meta new file mode 100644 index 000000000..f0a708e1e --- /dev/null +++ b/Assets/Resources/Sprites/Games/TotemClimb/Animations/Frog.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: ba3583729a619ea49bb412ec94df2c14 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Sprites/Games/TotemClimb/Animations/Frog/Fall.anim b/Assets/Resources/Sprites/Games/TotemClimb/Animations/Frog/Fall.anim new file mode 100644 index 000000000..34435d241 --- /dev/null +++ b/Assets/Resources/Sprites/Games/TotemClimb/Animations/Frog/Fall.anim @@ -0,0 +1,349 @@ +%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: Fall + 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, y: -0.125, 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, y: 0, 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, y: -0.125, 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.1 + value: {x: 0, y: 0, 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.13333334 + value: {x: 0, y: -0.125, 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.16666667 + value: {x: 0, y: 0, z: 0} + inSlope: {x: Infinity, y: Infinity, z: Infinity} + outSlope: {x: 0, y: -14.97, z: 0} + 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.8333333 + value: {x: 0, y: -9.98, z: 0} + inSlope: {x: -0, y: -14.97, z: -0} + outSlope: {x: 0, y: 0, z: 0} + 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: frog + m_ScaleCurves: [] + m_FloatCurves: [] + m_PPtrCurves: [] + 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: 1506756718 + attribute: 1 + script: {fileID: 0} + typeID: 4 + customType: 0 + isPPtrCurve: 0 + pptrCurveMapping: [] + m_AnimationClipSettings: + serializedVersion: 2 + m_AdditiveReferencePoseClip: {fileID: 0} + m_AdditiveReferencePoseTime: 0 + m_StartTime: 0 + m_StopTime: 0.8333333 + 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 + 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 + - serializedVersion: 3 + time: 0.1 + value: 0 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.13333334 + value: 0 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.16666667 + value: 0 + inSlope: Infinity + outSlope: 0 + tangentMode: 71 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.8333333 + value: 0 + inSlope: -0 + outSlope: 0 + tangentMode: 69 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalPosition.x + path: frog + classID: 4 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: -0.125 + 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.125 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.1 + value: 0 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.13333334 + value: -0.125 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.16666667 + value: 0 + inSlope: Infinity + outSlope: -14.97 + tangentMode: 71 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.8333333 + value: -9.98 + inSlope: -14.97 + outSlope: 0 + tangentMode: 69 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalPosition.y + path: frog + 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 + - serializedVersion: 3 + time: 0.1 + value: 0 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.13333334 + value: 0 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.16666667 + value: 0 + inSlope: Infinity + outSlope: 0 + tangentMode: 71 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 0.8333333 + value: 0 + inSlope: -0 + outSlope: 0 + tangentMode: 69 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalPosition.z + path: frog + classID: 4 + script: {fileID: 0} + m_EulerEditorCurves: [] + m_HasGenericRootTransform: 0 + m_HasMotionFloatCurves: 0 + m_Events: [] diff --git a/Assets/Resources/Sprites/Games/TotemClimb/Animations/Frog/Fall.anim.meta b/Assets/Resources/Sprites/Games/TotemClimb/Animations/Frog/Fall.anim.meta new file mode 100644 index 000000000..ff7ac54ca --- /dev/null +++ b/Assets/Resources/Sprites/Games/TotemClimb/Animations/Frog/Fall.anim.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 230b6f3e661b9c34d8c022d1028de147 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 7400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Sprites/Games/TotemClimb/Animations/Frog/Idle.anim b/Assets/Resources/Sprites/Games/TotemClimb/Animations/Frog/Idle.anim new file mode 100644 index 000000000..a5394fa3f --- /dev/null +++ b/Assets/Resources/Sprites/Games/TotemClimb/Animations/Frog/Idle.anim @@ -0,0 +1,53 @@ +%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: Idle + 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: [] + 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: [] + pptrCurveMapping: [] + m_AnimationClipSettings: + serializedVersion: 2 + m_AdditiveReferencePoseClip: {fileID: 0} + m_AdditiveReferencePoseTime: 0 + m_StartTime: 0 + m_StopTime: 1 + 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/TotemClimb/Animations/Frog/Idle.anim.meta b/Assets/Resources/Sprites/Games/TotemClimb/Animations/Frog/Idle.anim.meta new file mode 100644 index 000000000..2f31ba2f2 --- /dev/null +++ b/Assets/Resources/Sprites/Games/TotemClimb/Animations/Frog/Idle.anim.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: bcad679d477a55c41a7980d641ce3131 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 7400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Sprites/Games/TotemClimb/Animations/Frog/frog0.controller b/Assets/Resources/Sprites/Games/TotemClimb/Animations/Frog/frog0.controller new file mode 100644 index 000000000..39707f611 --- /dev/null +++ b/Assets/Resources/Sprites/Games/TotemClimb/Animations/Frog/frog0.controller @@ -0,0 +1,101 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1102 &-8039044430493983669 +AnimatorState: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Idle + 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: bcad679d477a55c41a7980d641ce3131, type: 2} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: +--- !u!1107 &-6184048967663628264 +AnimatorStateMachine: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Base Layer + m_ChildStates: + - serializedVersion: 1 + m_State: {fileID: -8039044430493983669} + m_Position: {x: 200, y: 0, z: 0} + - serializedVersion: 1 + m_State: {fileID: -3216441821579990432} + m_Position: {x: 235, y: 65, z: 0} + m_ChildStateMachines: [] + m_AnyStateTransitions: [] + m_EntryTransitions: [] + m_StateMachineTransitions: {} + m_StateMachineBehaviours: [] + m_AnyStatePosition: {x: 50, y: 20, z: 0} + 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: -8039044430493983669} +--- !u!1102 &-3216441821579990432 +AnimatorState: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Fall + 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: 230b6f3e661b9c34d8c022d1028de147, type: 2} + m_Tag: + m_SpeedParameter: + 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: frog0 + serializedVersion: 5 + m_AnimatorParameters: [] + m_AnimatorLayers: + - serializedVersion: 5 + m_Name: Base Layer + m_StateMachine: {fileID: -6184048967663628264} + 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} diff --git a/Assets/Resources/Sprites/Games/TotemClimb/Animations/Frog/frog0.controller.meta b/Assets/Resources/Sprites/Games/TotemClimb/Animations/Frog/frog0.controller.meta new file mode 100644 index 000000000..fde6058d7 --- /dev/null +++ b/Assets/Resources/Sprites/Games/TotemClimb/Animations/Frog/frog0.controller.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 5eaaa5fa2c6cfa941a1181851505d29b +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 9100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Games/TotemClimb/TCFrog.cs b/Assets/Scripts/Games/TotemClimb/TCFrog.cs index 85f1430cd..a1ef3dae2 100644 --- a/Assets/Scripts/Games/TotemClimb/TCFrog.cs +++ b/Assets/Scripts/Games/TotemClimb/TCFrog.cs @@ -1,3 +1,4 @@ +using HeavenStudio.Util; using System; using System.Collections; using System.Collections.Generic; @@ -21,6 +22,21 @@ namespace HeavenStudio.Games.Scripts_TotemClimb public Transform JumperPointMiddle => _jumperPointMiddle; public Transform JumperPointRight => _jumperPointRight; + public void FallPiece(int part) + { + switch (part) + { + case -1: + _animLeft.DoScaledAnimationAsync("Fall", 0.5f); + break; + case 0: + _animMiddle.DoScaledAnimationAsync("Fall", 0.5f); + break; + default: + _animRight.DoScaledAnimationAsync("Fall", 0.5f); + break; + } + } } } diff --git a/Assets/Scripts/Games/TotemClimb/TCJumper.cs b/Assets/Scripts/Games/TotemClimb/TCJumper.cs index ecfedabeb..21c22a424 100644 --- a/Assets/Scripts/Games/TotemClimb/TCJumper.cs +++ b/Assets/Scripts/Games/TotemClimb/TCJumper.cs @@ -175,6 +175,7 @@ namespace HeavenStudio.Games.Scripts_TotemClimb bool isTriple = _game.IsTripleBeat(caller.startBeat + caller.timer); StartJumping(caller.startBeat + caller.timer); _game.BopTotemAtBeat(caller.startBeat + caller.timer); + if (isTriple) _game.FallFrogAtBeat(caller.startBeat + caller.timer, 1); if (state >= 1f || state <= -1f) { return; @@ -185,6 +186,7 @@ namespace HeavenStudio.Games.Scripts_TotemClimb private void JustTripleEnter(PlayerActionEvent caller, float state) { TripleJumping(caller.startBeat + caller.timer, true); + _game.FallFrogAtBeat(caller.startBeat + caller.timer, -1); if (state >= 1f || state <= -1f) { return; @@ -195,6 +197,7 @@ namespace HeavenStudio.Games.Scripts_TotemClimb private void JustTripleExit(PlayerActionEvent caller, float state) { TripleJumping(caller.startBeat + caller.timer, false); + _game.FallFrogAtBeat(caller.startBeat + caller.timer, 0); if (state >= 1f || state <= -1f) { return; @@ -206,16 +209,19 @@ namespace HeavenStudio.Games.Scripts_TotemClimb { StartJumping(caller.startBeat + caller.timer); _game.BopTotemAtBeat(caller.startBeat + caller.timer); + if (_game.IsTripleBeat(caller.startBeat + caller.timer)) _game.FallFrogAtBeat(caller.startBeat + caller.timer, 1); } private void MissTripleEnter(PlayerActionEvent caller) { TripleJumping(caller.startBeat + caller.timer, true); + _game.FallFrogAtBeat(caller.startBeat + caller.timer, -1); } private void MissTripleExit(PlayerActionEvent caller) { TripleJumping(caller.startBeat + caller.timer, false); + _game.FallFrogAtBeat(caller.startBeat + caller.timer, 0); } private void Empty(PlayerActionEvent caller) { } diff --git a/Assets/Scripts/Games/TotemClimb/TCTotemManager.cs b/Assets/Scripts/Games/TotemClimb/TCTotemManager.cs index e47823318..438b6f1f8 100644 --- a/Assets/Scripts/Games/TotemClimb/TCTotemManager.cs +++ b/Assets/Scripts/Games/TotemClimb/TCTotemManager.cs @@ -99,6 +99,18 @@ namespace HeavenStudio.Games.Scripts_TotemClimb } } + public void FallFrogAtBeat(double beat, int part) + { + var f = _frogs.Find(x => beat >= x.beat && beat < x.beat + 2); + if (f == null) + { + Debug.Log($"Frog unavaible at beat {beat}."); + return; + } + + f.FallPiece(part); + } + private void Update() { float currentScrollX = _scrollTransform.localPosition.x; diff --git a/Assets/Scripts/Games/TotemClimb/TotemClimb.cs b/Assets/Scripts/Games/TotemClimb/TotemClimb.cs index eb5f00cdc..b116065cc 100644 --- a/Assets/Scripts/Games/TotemClimb/TotemClimb.cs +++ b/Assets/Scripts/Games/TotemClimb/TotemClimb.cs @@ -167,6 +167,11 @@ namespace HeavenStudio.Games return _totemManager.GetJumperFrogPointAtBeat(beat, part); } + public void FallFrogAtBeat(double beat, int part) + { + _totemManager.FallFrogAtBeat(beat, part); + } + public void Bop(double beat, float length, double callBeat) { List actions = new();