diff --git a/Assets/Resources/Games/dogNinja.prefab b/Assets/Resources/Games/dogNinja.prefab index 8a38c146a..f265f9753 100644 --- a/Assets/Resources/Games/dogNinja.prefab +++ b/Assets/Resources/Games/dogNinja.prefab @@ -97,7 +97,17 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 5ac06902fd6630045a550c76211fcc63, type: 3} m_Name: m_EditorClassIdentifier: - game: {fileID: 4542966729274958099} + inList: 0 + state: + gameObject: {fileID: 119991411479083905} + early: 0 + perfect: 0 + late: 0 + createBeat: 0 + eligibleHitsList: [] + aceTimes: 0 + isEligible: 0 + triggersAutoplay: 1 startBeat: 0 type: 0 fromLeft: 0 @@ -105,12 +115,12 @@ MonoBehaviour: direction: 0 sfxNum: curve: {fileID: 0} - LeftCurve: {fileID: 2592536718110886033} - RightCurve: {fileID: 8538313959133990924} + barelyCurve: {fileID: 0} BarelyLeftCurve: {fileID: 5959598018215963193} BarelyRightCurve: {fileID: 4156529297438955755} - HalvesLeftBase: {fileID: 3507681361263350449} - HalvesRightBase: {fileID: 5646879835731180444} + HalvesLeftBase: {fileID: 8462363345267808632} + HalvesRightBase: {fileID: 997672822965154321} + ObjectParent: {fileID: 0} objectLeftHalves: - {fileID: -5050977528292827191, guid: 1c59b9cd0adef0941bc4bd4bde66a759, type: 3} - {fileID: -6734710479057769413, guid: 1c59b9cd0adef0941bc4bd4bde66a759, type: 3} @@ -534,13 +544,24 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 6f3ef60f47c093b45a623a707f33c877, type: 3} m_Name: m_EditorClassIdentifier: + inList: 0 + state: + gameObject: {fileID: 0} + early: 0 + perfect: 0 + late: 0 + createBeat: 0 + eligibleHitsList: [] + aceTimes: 0 + isEligible: 0 + triggersAutoplay: 1 startBeat: 0 objPos: {x: 0, y: 0, z: 0} lefty: 0 rotSpeed: 140 fallLeftCurve: {fileID: 7764367815067799206} fallRightCurve: {fileID: 7122240029612248645} - sr: {fileID: 7206843505938361017} + halvesParent: {fileID: 2078672318315355962} --- !u!1 &1203023033644261752 GameObject: m_ObjectHideFlags: 0 @@ -1271,7 +1292,6 @@ GameObject: serializedVersion: 6 m_Component: - component: {fileID: 9090671386772390765} - - component: {fileID: 7679373660039658227} m_Layer: 0 m_Name: Bird m_TagString: Untagged @@ -1287,65 +1307,15 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2345899427382000280} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: -5.1111, y: 4.7888, z: 0} - m_LocalScale: {x: 1.17, y: 1.17, z: 1.17} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 - m_Children: [] + m_Children: + - {fileID: 6141650836764449341} + - {fileID: 3508355828836896233} m_Father: {fileID: 6570085815560366024} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!212 &7679373660039658227 -SpriteRenderer: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 2345899427382000280} - m_Enabled: 1 - m_CastShadows: 0 - m_ReceiveShadows: 0 - m_DynamicOccludee: 1 - m_StaticShadowCaster: 0 - 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: 10 - m_Sprite: {fileID: -6878904103022551539, guid: 1c59b9cd0adef0941bc4bd4bde66a759, type: 3} - m_Color: {r: 1, g: 1, b: 1, a: 1} - m_FlipX: 0 - m_FlipY: 0 - m_DrawMode: 0 - m_Size: {x: 6.69, y: 6.3} - m_AdaptiveModeThreshold: 0.5 - m_SpriteTileMode: 0 - m_WasSpriteAssigned: 1 - m_MaskInteraction: 0 - m_SpriteSortPoint: 0 --- !u!1 &2488711815545919274 GameObject: m_ObjectHideFlags: 0 @@ -1699,38 +1669,45 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: SoundSequences: - - name: here_we_go + - name: hereWeGo sequence: game: 1 - force: 1 + force: 0 clips: - - clip: dogNinja/here + - clip: here beat: 0 pitch: 0 volume: 0 looping: 0 offset: 0 parameters: [] - - clip: dogNinja/we + - clip: we beat: 0.5 pitch: 0 volume: 0 looping: 0 offset: 0 parameters: [] - - clip: dogNinja/go + - clip: go beat: 1 pitch: 0 volume: 0 looping: 0 offset: 0 parameters: [] + EligibleHits: [] scheduledInputs: [] + firstEnable: 0 DogAnim: {fileID: 1770250701376598399} BirdAnim: {fileID: 4964290445827434540} - ObjectBase: {fileID: 4494871422713187218} + ObjectBase: {fileID: 119991411479083905} + FullBird: {fileID: 3439822116337821266} WhichObject: {fileID: 1780506401517458247} - CutEverythingText: {fileID: 8405214087581042494} + WhichLeftHalf: {fileID: 8550182553065708291} + WhichRightHalf: {fileID: 7206843505938361017} + cutEverythingText: {fileID: 8405214087581042494} + CurveFromLeft: {fileID: 2592536718110886033} + CurveFromRight: {fileID: 8538313959133990924} ObjectTypes: - {fileID: 0} - {fileID: -2307065246004786754, guid: 1c59b9cd0adef0941bc4bd4bde66a759, type: 3} @@ -1751,8 +1728,6 @@ MonoBehaviour: - {fileID: 2196219148037962045, guid: 4e56f90ec52abea4ea8c4c7bb6df84d5, type: 3} - {fileID: -6292424158522327523, guid: 4e56f90ec52abea4ea8c4c7bb6df84d5, type: 3} - {fileID: 2053246660185171032, guid: 4e56f90ec52abea4ea8c4c7bb6df84d5, type: 3} - queuePrepare: 0 - preparing: 0 --- !u!1 &3156757135167865752 GameObject: m_ObjectHideFlags: 0 @@ -1913,7 +1888,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 1 + m_IsActive: 0 --- !u!4 &6570085815560366024 Transform: m_ObjectHideFlags: 0 @@ -1922,7 +1897,7 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3439822116337821266} m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: 0, y: 69, z: 0} + m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: @@ -4190,13 +4165,108 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 6f3ef60f47c093b45a623a707f33c877, type: 3} m_Name: m_EditorClassIdentifier: + inList: 0 + state: + gameObject: {fileID: 0} + early: 0 + perfect: 0 + late: 0 + createBeat: 0 + eligibleHitsList: [] + aceTimes: 0 + isEligible: 0 + triggersAutoplay: 1 startBeat: 0 objPos: {x: 0, y: 0, z: 0} lefty: 1 rotSpeed: -140 fallLeftCurve: {fileID: 7191847337805905266} fallRightCurve: {fileID: 5028931464679965393} - sr: {fileID: 8550182553065708291} + halvesParent: {fileID: 2078672318315355962} +--- !u!1 &8597163618617364548 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3508355828836896233} + - component: {fileID: 5092057247171099703} + m_Layer: 0 + m_Name: Bird1 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &3508355828836896233 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8597163618617364548} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -5.1111, y: 4.7888, z: 0} + m_LocalScale: {x: 1.17, y: 1.17, z: 1.17} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 9090671386772390765} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!212 &5092057247171099703 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8597163618617364548} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + 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: 10 + m_Sprite: {fileID: -6837453462447269357, guid: 1c59b9cd0adef0941bc4bd4bde66a759, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 6.69, y: 6.3} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 --- !u!1 &8691542995859896262 GameObject: m_ObjectHideFlags: 0 @@ -4385,6 +4455,90 @@ MonoBehaviour: handleType: 0 leftHandleLocalPosition: {x: 2.6498117, y: 0.019104965, z: 0} rightHandleLocalPosition: {x: -2.6498117, y: -0.019104965, z: -0} +--- !u!1 &9014789612631171718 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6141650836764449341} + - component: {fileID: 4708541773062853748} + m_Layer: 0 + m_Name: Bird2 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6141650836764449341 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 9014789612631171718} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: -5.1111, y: 4.7888, z: 0} + m_LocalScale: {x: 1.17, y: 1.17, z: 1.17} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 9090671386772390765} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!212 &4708541773062853748 +SpriteRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 9014789612631171718} + m_Enabled: 1 + m_CastShadows: 0 + m_ReceiveShadows: 0 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + 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: 10 + m_Sprite: {fileID: -6878904103022551539, guid: 1c59b9cd0adef0941bc4bd4bde66a759, type: 3} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_FlipX: 0 + m_FlipY: 0 + m_DrawMode: 0 + m_Size: {x: 6.69, y: 6.3} + m_AdaptiveModeThreshold: 0.5 + m_SpriteTileMode: 0 + m_WasSpriteAssigned: 1 + m_MaskInteraction: 0 + m_SpriteSortPoint: 0 --- !u!1 &9069277017458690841 GameObject: m_ObjectHideFlags: 0 @@ -4576,17 +4730,15 @@ MonoBehaviour: m_lineSpacingMax: 0 m_paragraphSpacing: 0 m_charWidthMaxAdj: 0 - m_TextWrappingMode: 1 + m_enableWordWrapping: 1 m_wordWrappingRatios: 0.4 m_overflowMode: 0 m_linkedTextComponent: {fileID: 0} parentLinkedComponent: {fileID: 0} m_enableKerning: 1 - m_ActiveFontFeatures: 6e72656b m_enableExtraPadding: 0 checkPaddingRequired: 0 m_isRichText: 1 - m_EmojiFallbackSupport: 1 m_parseCtrlCharacters: 1 m_isOrthographic: 0 m_isCullingEnabled: 0 diff --git a/Assets/Resources/Sprites/Games/DogNinja/Animation/Bird/BirdAnim.controller b/Assets/Resources/Sprites/Games/DogNinja/Animation/Bird/BirdAnim.controller index 3726c8436..21472a0f6 100644 --- a/Assets/Resources/Sprites/Games/DogNinja/Animation/Bird/BirdAnim.controller +++ b/Assets/Resources/Sprites/Games/DogNinja/Animation/Bird/BirdAnim.controller @@ -28,6 +28,31 @@ AnimatorStateMachine: m_ExitPosition: {x: 640, y: 180, z: 0} m_ParentStateMachinePosition: {x: 800, y: 20, z: 0} m_DefaultState: {fileID: 320149015002627566} +--- !u!1101 &-57611587176777246 +AnimatorStateTransition: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: + m_Conditions: + - m_ConditionMode: 2 + m_ConditionEvent: birdOnScreen + m_EventTreshold: 0 + m_DstStateMachine: {fileID: 0} + m_DstState: {fileID: 0} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 1 + serializedVersion: 3 + m_TransitionDuration: 0.25 + m_TransitionOffset: 0 + m_ExitTime: 0.5833334 + m_HasExitTime: 1 + m_HasFixedDuration: 1 + m_InterruptionSource: 0 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 --- !u!91 &9100000 AnimatorController: m_ObjectHideFlags: 0 @@ -76,7 +101,7 @@ AnimatorState: m_MirrorParameterActive: 0 m_CycleOffsetParameterActive: 0 m_TimeParameterActive: 0 - m_Motion: {fileID: 0} + m_Motion: {fileID: 7400000, guid: 3319f492700f97544b948589e4e54ca0, type: 2} m_Tag: m_SpeedParameter: m_MirrorParameter: @@ -92,7 +117,8 @@ AnimatorState: m_Name: FlyOut m_Speed: 1 m_CycleOffset: 0 - m_Transitions: [] + m_Transitions: + - {fileID: -57611587176777246} m_StateMachineBehaviours: [] m_Position: {x: 50, y: 50, z: 0} m_IKOnFeet: 0 diff --git a/Assets/Resources/Sprites/Games/DogNinja/Animation/Bird/BirdAnim.controller.meta b/Assets/Resources/Sprites/Games/DogNinja/Animation/Bird/BirdAnim.controller.meta index 009b0a09c..abbdbe0a6 100644 --- a/Assets/Resources/Sprites/Games/DogNinja/Animation/Bird/BirdAnim.controller.meta +++ b/Assets/Resources/Sprites/Games/DogNinja/Animation/Bird/BirdAnim.controller.meta @@ -4,5 +4,5 @@ NativeFormatImporter: externalObjects: {} mainObjectFileID: 9100000 userData: - assetBundleName: ntrninja/common + assetBundleName: assetBundleVariant: diff --git a/Assets/Resources/Sprites/Games/DogNinja/Animation/Bird/FlyIn.anim b/Assets/Resources/Sprites/Games/DogNinja/Animation/Bird/FlyIn.anim index 52f711321..21a3c4f68 100644 --- a/Assets/Resources/Sprites/Games/DogNinja/Animation/Bird/FlyIn.anim +++ b/Assets/Resources/Sprites/Games/DogNinja/Animation/Bird/FlyIn.anim @@ -54,18 +54,8 @@ AnimationClip: weightedMode: 0 inWeight: 0 outWeight: 0 - m_PreInfinity: 2 - m_PostInfinity: 2 - m_RotationOrder: 4 - attribute: m_IsActive - path: Bird - classID: 1 - script: {fileID: 0} - - curve: - serializedVersion: 2 - m_Curve: - serializedVersion: 3 - time: 0 + time: 0.15 value: 1 inSlope: Infinity outSlope: Infinity @@ -77,7 +67,35 @@ AnimationClip: m_PostInfinity: 2 m_RotationOrder: 4 attribute: m_IsActive - path: CutEverythingSign + path: Bird/Bird2 + classID: 1 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 0.15 + value: 0 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_IsActive + path: Bird/Bird1 classID: 1 script: {fileID: 0} m_PPtrCurves: [] @@ -96,14 +114,14 @@ AnimationClip: customType: 0 isPPtrCurve: 0 - serializedVersion: 2 - path: 8978736 + path: 341651793 attribute: 2086281974 script: {fileID: 0} typeID: 1 customType: 0 isPPtrCurve: 0 - serializedVersion: 2 - path: 2588901114 + path: 2371117291 attribute: 2086281974 script: {fileID: 0} typeID: 1 @@ -218,18 +236,8 @@ AnimationClip: weightedMode: 0 inWeight: 0 outWeight: 0 - m_PreInfinity: 2 - m_PostInfinity: 2 - m_RotationOrder: 4 - attribute: m_IsActive - path: Bird - classID: 1 - script: {fileID: 0} - - curve: - serializedVersion: 2 - m_Curve: - serializedVersion: 3 - time: 0 + time: 0.15 value: 1 inSlope: Infinity outSlope: Infinity @@ -241,7 +249,35 @@ AnimationClip: m_PostInfinity: 2 m_RotationOrder: 4 attribute: m_IsActive - path: CutEverythingSign + path: Bird/Bird2 + classID: 1 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 0.15 + value: 0 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_IsActive + path: Bird/Bird1 classID: 1 script: {fileID: 0} m_EulerEditorCurves: [] diff --git a/Assets/Resources/Sprites/Games/DogNinja/Animation/Bird/FlyIn.anim.meta b/Assets/Resources/Sprites/Games/DogNinja/Animation/Bird/FlyIn.anim.meta index a28831a6f..997497ca1 100644 --- a/Assets/Resources/Sprites/Games/DogNinja/Animation/Bird/FlyIn.anim.meta +++ b/Assets/Resources/Sprites/Games/DogNinja/Animation/Bird/FlyIn.anim.meta @@ -4,5 +4,5 @@ NativeFormatImporter: externalObjects: {} mainObjectFileID: 7400000 userData: - assetBundleName: ntrninja/common + assetBundleName: assetBundleVariant: diff --git a/Assets/Resources/Sprites/Games/DogNinja/Animation/Bird/FlyOut.anim b/Assets/Resources/Sprites/Games/DogNinja/Animation/Bird/FlyOut.anim index 098327045..ca63aae29 100644 --- a/Assets/Resources/Sprites/Games/DogNinja/Animation/Bird/FlyOut.anim +++ b/Assets/Resources/Sprites/Games/DogNinja/Animation/Bird/FlyOut.anim @@ -56,7 +56,7 @@ AnimationClip: outWeight: 0 - serializedVersion: 3 time: 0.6 - value: 0 + value: 1 inSlope: Infinity outSlope: Infinity tangentMode: 103 @@ -67,7 +67,7 @@ AnimationClip: m_PostInfinity: 2 m_RotationOrder: 4 attribute: m_IsActive - path: Bird + path: Bird/Bird1 classID: 1 script: {fileID: 0} - curve: @@ -75,7 +75,7 @@ AnimationClip: m_Curve: - serializedVersion: 3 time: 0 - value: 1 + value: 0 inSlope: Infinity outSlope: Infinity tangentMode: 103 @@ -95,7 +95,7 @@ AnimationClip: m_PostInfinity: 2 m_RotationOrder: 4 attribute: m_IsActive - path: CutEverythingSign + path: Bird/Bird2 classID: 1 script: {fileID: 0} m_PPtrCurves: [] @@ -114,14 +114,14 @@ AnimationClip: customType: 0 isPPtrCurve: 0 - serializedVersion: 2 - path: 8978736 + path: 2371117291 attribute: 2086281974 script: {fileID: 0} typeID: 1 customType: 0 isPPtrCurve: 0 - serializedVersion: 2 - path: 2588901114 + path: 341651793 attribute: 2086281974 script: {fileID: 0} typeID: 1 @@ -247,7 +247,7 @@ AnimationClip: outWeight: 0 - serializedVersion: 3 time: 0.6 - value: 0 + value: 1 inSlope: Infinity outSlope: Infinity tangentMode: 103 @@ -258,7 +258,7 @@ AnimationClip: m_PostInfinity: 2 m_RotationOrder: 4 attribute: m_IsActive - path: Bird + path: Bird/Bird1 classID: 1 script: {fileID: 0} - curve: @@ -266,7 +266,7 @@ AnimationClip: m_Curve: - serializedVersion: 3 time: 0 - value: 1 + value: 0 inSlope: Infinity outSlope: Infinity tangentMode: 103 @@ -286,7 +286,7 @@ AnimationClip: m_PostInfinity: 2 m_RotationOrder: 4 attribute: m_IsActive - path: CutEverythingSign + path: Bird/Bird2 classID: 1 script: {fileID: 0} m_EulerEditorCurves: [] diff --git a/Assets/Resources/Sprites/Games/DogNinja/Animation/Bird/FlyOut.anim.meta b/Assets/Resources/Sprites/Games/DogNinja/Animation/Bird/FlyOut.anim.meta index 230973ff5..3820a2a1b 100644 --- a/Assets/Resources/Sprites/Games/DogNinja/Animation/Bird/FlyOut.anim.meta +++ b/Assets/Resources/Sprites/Games/DogNinja/Animation/Bird/FlyOut.anim.meta @@ -4,5 +4,5 @@ NativeFormatImporter: externalObjects: {} mainObjectFileID: 7400000 userData: - assetBundleName: ntrninja/common + assetBundleName: assetBundleVariant: diff --git a/Assets/Resources/Sprites/Games/DogNinja/Animation/Bird/Idle.anim b/Assets/Resources/Sprites/Games/DogNinja/Animation/Bird/Idle.anim new file mode 100644 index 000000000..4d4382bb2 --- /dev/null +++ b/Assets/Resources/Sprites/Games/DogNinja/Animation/Bird/Idle.anim @@ -0,0 +1,133 @@ +%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: + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: {x: 13.216, y: 8.8714, z: 0} + inSlope: {x: 0, y: 0, 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: + 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: 0 + 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 + 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: 13.216 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalPosition.x + path: + classID: 4 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 8.8714 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalPosition.y + path: + classID: 4 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 0 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalPosition.z + path: + classID: 4 + script: {fileID: 0} + m_EulerEditorCurves: [] + m_HasGenericRootTransform: 1 + m_HasMotionFloatCurves: 0 + m_Events: [] diff --git a/Assets/Resources/Sprites/Games/DogNinja/Animation/Bird/Idle.anim.meta b/Assets/Resources/Sprites/Games/DogNinja/Animation/Bird/Idle.anim.meta new file mode 100644 index 000000000..501e8ce5c --- /dev/null +++ b/Assets/Resources/Sprites/Games/DogNinja/Animation/Bird/Idle.anim.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 3319f492700f97544b948589e4e54ca0 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 7400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/BarelyGlobal.anim.meta b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/BarelyGlobal.anim.meta index aa8ae57e1..a28d740de 100644 --- a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/BarelyGlobal.anim.meta +++ b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/BarelyGlobal.anim.meta @@ -4,5 +4,5 @@ NativeFormatImporter: externalObjects: {} mainObjectFileID: 7400000 userData: - assetBundleName: ntrninja/common + assetBundleName: assetBundleVariant: diff --git a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/BarelyLeft.anim.meta b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/BarelyLeft.anim.meta index f313d1f88..2b07dad96 100644 --- a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/BarelyLeft.anim.meta +++ b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/BarelyLeft.anim.meta @@ -4,5 +4,5 @@ NativeFormatImporter: externalObjects: {} mainObjectFileID: 7400000 userData: - assetBundleName: ntrninja/common + assetBundleName: assetBundleVariant: diff --git a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/BarelyRight.anim.meta b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/BarelyRight.anim.meta index a7acf716c..73740ae94 100644 --- a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/BarelyRight.anim.meta +++ b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/BarelyRight.anim.meta @@ -4,5 +4,5 @@ NativeFormatImporter: externalObjects: {} mainObjectFileID: 7400000 userData: - assetBundleName: ntrninja/common + assetBundleName: assetBundleVariant: diff --git a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/Bop.anim.meta b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/Bop.anim.meta index 1d0eec4af..32ab7457f 100644 --- a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/Bop.anim.meta +++ b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/Bop.anim.meta @@ -4,5 +4,5 @@ NativeFormatImporter: externalObjects: {} mainObjectFileID: 7400000 userData: - assetBundleName: ntrninja/common + assetBundleName: assetBundleVariant: diff --git a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/DogAnim.controller b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/DogAnim.controller index 30b645fd8..6b3abe1a1 100644 --- a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/DogAnim.controller +++ b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/DogAnim.controller @@ -54,6 +54,31 @@ AnimatorState: m_MirrorParameter: m_CycleOffsetParameter: m_TimeParameter: +--- !u!1101 &-8879658034113408578 +AnimatorStateTransition: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: + m_Conditions: + - m_ConditionMode: 1 + m_ConditionEvent: needPrepare + m_EventTreshold: 0 + m_DstStateMachine: {fileID: 0} + m_DstState: {fileID: 5009988345090580314} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 3 + m_TransitionDuration: 0 + m_TransitionOffset: 0 + m_ExitTime: 1 + m_HasExitTime: 1 + m_HasFixedDuration: 0 + m_InterruptionSource: 0 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 --- !u!1102 &-7628548708072257747 AnimatorState: serializedVersion: 6 @@ -308,6 +333,31 @@ AnimatorController: m_IKPass: 0 m_SyncedLayerAffectsTiming: 0 m_Controller: {fileID: 9100000} +--- !u!1101 &634343083532807637 +AnimatorStateTransition: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: + m_Conditions: + - m_ConditionMode: 2 + m_ConditionEvent: needPrepare + m_EventTreshold: 0 + m_DstStateMachine: {fileID: 0} + m_DstState: {fileID: 1628397019354410076} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 3 + m_TransitionDuration: 0 + m_TransitionOffset: 0 + m_ExitTime: 1 + m_HasExitTime: 1 + m_HasFixedDuration: 1 + m_InterruptionSource: 0 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 --- !u!1102 &1183219720229009387 AnimatorState: serializedVersion: 6 @@ -318,7 +368,9 @@ AnimatorState: m_Name: Prepare m_Speed: 1 m_CycleOffset: 0 - m_Transitions: [] + m_Transitions: + - {fileID: -8879658034113408578} + - {fileID: 634343083532807637} m_StateMachineBehaviours: [] m_Position: {x: 50, y: 50, z: 0} m_IKOnFeet: 0 @@ -511,6 +563,9 @@ AnimatorStateMachine: - serializedVersion: 1 m_State: {fileID: 4106059006902303284} m_Position: {x: 400, y: 90, z: 0} + - serializedVersion: 1 + m_State: {fileID: 5009988345090580314} + m_Position: {x: 620, y: -110, z: 0} m_ChildStateMachines: [] m_AnyStateTransitions: [] m_EntryTransitions: [] @@ -521,6 +576,33 @@ AnimatorStateMachine: m_ExitPosition: {x: 420, y: 210, z: 0} m_ParentStateMachinePosition: {x: 800, y: 20, z: 0} m_DefaultState: {fileID: 1628397019354410076} +--- !u!1102 &5009988345090580314 +AnimatorState: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: PrepareIdle + m_Speed: 1 + m_CycleOffset: 0 + m_Transitions: + - {fileID: 7023587105086888360} + 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: f9b4fb8d229e1d840b1663408bebfd18, type: 2} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: --- !u!1101 &5032805319851727948 AnimatorStateTransition: m_ObjectHideFlags: 1 @@ -587,6 +669,31 @@ AnimatorStateTransition: m_InterruptionSource: 0 m_OrderedInterruption: 1 m_CanTransitionToSelf: 1 +--- !u!1101 &7023587105086888360 +AnimatorStateTransition: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: + m_Conditions: + - m_ConditionMode: 2 + m_ConditionEvent: needPrepare + m_EventTreshold: 0 + m_DstStateMachine: {fileID: 0} + m_DstState: {fileID: 1628397019354410076} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 3 + m_TransitionDuration: 0 + m_TransitionOffset: 0 + m_ExitTime: 1 + m_HasExitTime: 1 + m_HasFixedDuration: 1 + m_InterruptionSource: 0 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 --- !u!1102 &7232969264737895159 AnimatorState: serializedVersion: 6 @@ -594,10 +701,11 @@ AnimatorState: m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_Name: Unprepare + m_Name: UnPrepare m_Speed: 1 m_CycleOffset: 0 - m_Transitions: [] + m_Transitions: + - {fileID: 7451574809715408383} m_StateMachineBehaviours: [] m_Position: {x: 50, y: 50, z: 0} m_IKOnFeet: 0 @@ -613,6 +721,28 @@ AnimatorState: m_MirrorParameter: m_CycleOffsetParameter: m_TimeParameter: +--- !u!1101 &7451574809715408383 +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: 1628397019354410076} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 3 + m_TransitionDuration: 0 + m_TransitionOffset: 0 + m_ExitTime: 1 + m_HasExitTime: 1 + m_HasFixedDuration: 1 + m_InterruptionSource: 0 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 --- !u!1102 &8456159042725552206 AnimatorState: serializedVersion: 6 diff --git a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/DogAnim.controller.meta b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/DogAnim.controller.meta index 0fbe4ea84..73651b4c1 100644 --- a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/DogAnim.controller.meta +++ b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/DogAnim.controller.meta @@ -4,5 +4,5 @@ NativeFormatImporter: externalObjects: {} mainObjectFileID: 9100000 userData: - assetBundleName: ntrninja/common + assetBundleName: assetBundleVariant: diff --git a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/Idle.anim.meta b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/Idle.anim.meta index 9c82a3f1b..1f2b56426 100644 --- a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/Idle.anim.meta +++ b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/Idle.anim.meta @@ -4,5 +4,5 @@ NativeFormatImporter: externalObjects: {} mainObjectFileID: 7400000 userData: - assetBundleName: ntrninja/common + assetBundleName: assetBundleVariant: diff --git a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/Prepare.anim b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/Prepare.anim index cb8d47856..a4b6e9062 100644 --- a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/Prepare.anim +++ b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/Prepare.anim @@ -450,7 +450,7 @@ AnimationClip: m_Level: 0 m_CycleOffset: 0 m_HasAdditiveReferencePose: 0 - m_LoopTime: 0 + m_LoopTime: 1 m_LoopBlend: 0 m_LoopBlendOrientation: 0 m_LoopBlendPositionY: 0 diff --git a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/Prepare.anim.meta b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/Prepare.anim.meta index 48323703c..1a194f7a9 100644 --- a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/Prepare.anim.meta +++ b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/Prepare.anim.meta @@ -4,5 +4,5 @@ NativeFormatImporter: externalObjects: {} mainObjectFileID: 7400000 userData: - assetBundleName: ntrninja/common + assetBundleName: assetBundleVariant: diff --git a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/PrepareIdle.anim b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/PrepareIdle.anim new file mode 100644 index 000000000..22cd4f106 --- /dev/null +++ b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/PrepareIdle.anim @@ -0,0 +1,1110 @@ +%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: PrepareIdle + serializedVersion: 6 + m_Legacy: 0 + m_Compressed: 0 + m_UseHighQualityCurve: 1 + m_RotationCurves: [] + m_CompressedRotationCurves: [] + m_EulerCurves: + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + 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: 20.166666 + 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} + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + path: DogBody/DogArmRight + m_PositionCurves: + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: {x: 0, y: -1.12, 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: 20.166666 + value: {x: 0, y: -1.12, 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: + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: {x: 0, y: -0.07, 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: 20.166666 + value: {x: 0, y: -0.07, 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: DogBody + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: {x: -9.18, y: -2.54, z: 20.748348} + inSlope: {x: Infinity, y: Infinity, z: 0} + outSlope: {x: Infinity, y: Infinity, 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: 20.166666 + value: {x: -9.18, y: -2.54, z: 20.748348} + inSlope: {x: Infinity, y: Infinity, z: 0} + outSlope: {x: Infinity, y: Infinity, 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: DogBody/DogArmLeft + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: {x: -1.84, y: -1.93, z: 20.748348} + inSlope: {x: Infinity, y: Infinity, z: 0} + outSlope: {x: Infinity, y: Infinity, 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: 20.166666 + value: {x: -1.84, y: -1.93, z: 20.748348} + inSlope: {x: Infinity, y: Infinity, z: 0} + outSlope: {x: Infinity, y: Infinity, 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: DogBody/DogArmRight + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: {x: -5.5894957, y: -3.1524081, z: 20.748348} + inSlope: {x: Infinity, y: Infinity, z: 0} + outSlope: {x: Infinity, y: Infinity, 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: 20.166666 + value: {x: -5.5894957, y: -3.1524081, z: 20.748348} + inSlope: {x: Infinity, y: Infinity, z: 0} + outSlope: {x: Infinity, y: Infinity, 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: DogBody/DogTorso + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: {x: -5.8489957, y: -3.078408, z: 20.748348} + inSlope: {x: Infinity, y: Infinity, z: 0} + outSlope: {x: Infinity, y: Infinity, 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: 20.166666 + value: {x: -5.8489957, y: -3.078408, z: 20.748348} + inSlope: {x: Infinity, y: Infinity, z: 0} + outSlope: {x: Infinity, y: Infinity, 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: DogBody/Sword + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: {x: -5.568996, y: -1.39, z: 20.748348} + inSlope: {x: Infinity, y: Infinity, z: 0} + outSlope: {x: Infinity, y: Infinity, 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: 20.166666 + value: {x: -5.568996, y: -1.39, z: 20.748348} + inSlope: {x: Infinity, y: Infinity, z: 0} + outSlope: {x: Infinity, y: Infinity, 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: DogHead + m_ScaleCurves: [] + m_FloatCurves: + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 2 + inSlope: -0 + outSlope: 0 + tangentMode: 69 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 20.166666 + value: 2 + inSlope: -0 + outSlope: 0 + tangentMode: 69 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_SortingOrder + path: DogBody/DogArmRight + classID: 212 + script: {fileID: 0} + m_PPtrCurves: + - curve: + - time: 0 + value: {fileID: -7602907453496852081, guid: 1c59b9cd0adef0941bc4bd4bde66a759, type: 3} + - time: 20.166666 + value: {fileID: -7602907453496852081, guid: 1c59b9cd0adef0941bc4bd4bde66a759, type: 3} + attribute: m_Sprite + path: DogBody/DogArmRight + classID: 212 + script: {fileID: 0} + - curve: + - time: 0 + value: {fileID: 7849497092207798707, guid: 1c59b9cd0adef0941bc4bd4bde66a759, type: 3} + - time: 20.166666 + value: {fileID: 7849497092207798707, guid: 1c59b9cd0adef0941bc4bd4bde66a759, type: 3} + attribute: m_Sprite + path: DogBody/DogArmLeft + 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: 0 + attribute: 1 + script: {fileID: 0} + typeID: 4 + customType: 0 + isPPtrCurve: 0 + - serializedVersion: 2 + path: 2772886358 + attribute: 1 + script: {fileID: 0} + typeID: 4 + customType: 0 + isPPtrCurve: 0 + - serializedVersion: 2 + path: 2375568945 + attribute: 1 + script: {fileID: 0} + typeID: 4 + customType: 0 + isPPtrCurve: 0 + - serializedVersion: 2 + path: 2794087405 + attribute: 1 + script: {fileID: 0} + typeID: 4 + customType: 0 + isPPtrCurve: 0 + - serializedVersion: 2 + path: 1010313433 + attribute: 1 + script: {fileID: 0} + typeID: 4 + customType: 0 + isPPtrCurve: 0 + - serializedVersion: 2 + path: 240240601 + attribute: 1 + script: {fileID: 0} + typeID: 4 + customType: 0 + isPPtrCurve: 0 + - serializedVersion: 2 + path: 3642564216 + attribute: 1 + script: {fileID: 0} + typeID: 4 + customType: 0 + isPPtrCurve: 0 + - serializedVersion: 2 + path: 2794087405 + attribute: 4 + script: {fileID: 0} + typeID: 4 + customType: 4 + isPPtrCurve: 0 + - serializedVersion: 2 + path: 2794087405 + attribute: 0 + script: {fileID: 0} + typeID: 212 + customType: 23 + isPPtrCurve: 1 + - serializedVersion: 2 + path: 2375568945 + attribute: 0 + script: {fileID: 0} + typeID: 212 + customType: 23 + isPPtrCurve: 1 + - serializedVersion: 2 + path: 2794087405 + attribute: 3762991556 + script: {fileID: 0} + typeID: 212 + customType: 26 + isPPtrCurve: 0 + pptrCurveMapping: + - {fileID: -7602907453496852081, guid: 1c59b9cd0adef0941bc4bd4bde66a759, type: 3} + - {fileID: -7602907453496852081, guid: 1c59b9cd0adef0941bc4bd4bde66a759, type: 3} + - {fileID: 7849497092207798707, guid: 1c59b9cd0adef0941bc4bd4bde66a759, type: 3} + - {fileID: 7849497092207798707, guid: 1c59b9cd0adef0941bc4bd4bde66a759, type: 3} + m_AnimationClipSettings: + serializedVersion: 2 + m_AdditiveReferencePoseClip: {fileID: 0} + m_AdditiveReferencePoseTime: 0 + m_StartTime: 0 + m_StopTime: 20.199999 + 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: + - 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: 20.166666 + 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.x + path: + classID: 4 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: -1.12 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 20.166666 + value: -1.12 + 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: + 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: 20.166666 + 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: + 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: 20.166666 + 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.x + path: DogBody + classID: 4 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: -0.07 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 20.166666 + value: -0.07 + 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: DogBody + 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: 20.166666 + 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: DogBody + classID: 4 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: -9.18 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 20.166666 + value: -9.18 + 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: DogBody/DogArmLeft + classID: 4 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: -2.54 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 20.166666 + value: -2.54 + 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: DogBody/DogArmLeft + classID: 4 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 20.748348 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 20.166666 + value: 20.748348 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalPosition.z + path: DogBody/DogArmLeft + classID: 4 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: -1.84 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 20.166666 + value: -1.84 + 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: DogBody/DogArmRight + classID: 4 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: -1.93 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 20.166666 + value: -1.93 + 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: DogBody/DogArmRight + classID: 4 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 20.748348 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 20.166666 + value: 20.748348 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalPosition.z + path: DogBody/DogArmRight + 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: 20.166666 + 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: localEulerAnglesRaw.x + path: DogBody/DogArmRight + 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: 20.166666 + 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: localEulerAnglesRaw.y + path: DogBody/DogArmRight + 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: 20.166666 + 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: localEulerAnglesRaw.z + path: DogBody/DogArmRight + classID: 4 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 2 + inSlope: -0 + outSlope: 0 + tangentMode: 69 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + - serializedVersion: 3 + time: 20.166666 + value: 2 + inSlope: -0 + outSlope: 0 + tangentMode: 69 + weightedMode: 0 + inWeight: 0 + outWeight: 0 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_SortingOrder + path: DogBody/DogArmRight + classID: 212 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: -5.5894957 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 20.166666 + value: -5.5894957 + 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: DogBody/DogTorso + classID: 4 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: -3.1524081 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 20.166666 + value: -3.1524081 + 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: DogBody/DogTorso + classID: 4 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 20.748348 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 20.166666 + value: 20.748348 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalPosition.z + path: DogBody/DogTorso + classID: 4 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: -5.8489957 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 20.166666 + value: -5.8489957 + 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: DogBody/Sword + classID: 4 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: -3.078408 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 20.166666 + value: -3.078408 + 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: DogBody/Sword + classID: 4 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 20.748348 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 20.166666 + value: 20.748348 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalPosition.z + path: DogBody/Sword + classID: 4 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: -5.568996 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 20.166666 + value: -5.568996 + 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: DogHead + classID: 4 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: -1.39 + inSlope: Infinity + outSlope: Infinity + tangentMode: 103 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 20.166666 + value: -1.39 + 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: DogHead + classID: 4 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: + - serializedVersion: 3 + time: 0 + value: 20.748348 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + - serializedVersion: 3 + time: 20.166666 + value: 20.748348 + inSlope: 0 + outSlope: 0 + tangentMode: 136 + weightedMode: 0 + inWeight: 0.33333334 + outWeight: 0.33333334 + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalPosition.z + path: DogHead + classID: 4 + script: {fileID: 0} + m_EulerEditorCurves: + - curve: + serializedVersion: 2 + m_Curve: [] + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalEulerAngles.x + path: DogBody/DogArmRight + classID: 4 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: [] + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalEulerAngles.y + path: DogBody/DogArmRight + classID: 4 + script: {fileID: 0} + - curve: + serializedVersion: 2 + m_Curve: [] + m_PreInfinity: 2 + m_PostInfinity: 2 + m_RotationOrder: 4 + attribute: m_LocalEulerAngles.z + path: DogBody/DogArmRight + classID: 4 + script: {fileID: 0} + m_HasGenericRootTransform: 1 + m_HasMotionFloatCurves: 0 + m_Events: [] diff --git a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/PrepareIdle.anim.meta b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/PrepareIdle.anim.meta new file mode 100644 index 000000000..c0aaf447c --- /dev/null +++ b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/PrepareIdle.anim.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: f9b4fb8d229e1d840b1663408bebfd18 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 0 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/SliceBoth.anim.meta b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/SliceBoth.anim.meta index 68558e80b..fc9bfc336 100644 --- a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/SliceBoth.anim.meta +++ b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/SliceBoth.anim.meta @@ -4,5 +4,5 @@ NativeFormatImporter: externalObjects: {} mainObjectFileID: 0 userData: - assetBundleName: ntrninja/common + assetBundleName: assetBundleVariant: diff --git a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/SliceLeft.anim.meta b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/SliceLeft.anim.meta index 504eeca22..31b5faf05 100644 --- a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/SliceLeft.anim.meta +++ b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/SliceLeft.anim.meta @@ -4,5 +4,5 @@ NativeFormatImporter: externalObjects: {} mainObjectFileID: 0 userData: - assetBundleName: ntrninja/common + assetBundleName: assetBundleVariant: diff --git a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/SliceRight.anim.meta b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/SliceRight.anim.meta index f94d5c5ea..080a72f19 100644 --- a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/SliceRight.anim.meta +++ b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/SliceRight.anim.meta @@ -4,5 +4,5 @@ NativeFormatImporter: externalObjects: {} mainObjectFileID: 0 userData: - assetBundleName: ntrninja/common + assetBundleName: assetBundleVariant: diff --git a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/UnPrepare.anim b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/UnPrepare.anim index ad1aceb8c..cee010030 100644 --- a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/UnPrepare.anim +++ b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/UnPrepare.anim @@ -492,7 +492,7 @@ AnimationClip: m_Level: 0 m_CycleOffset: 0 m_HasAdditiveReferencePose: 0 - m_LoopTime: 0 + m_LoopTime: 1 m_LoopBlend: 0 m_LoopBlendOrientation: 0 m_LoopBlendPositionY: 0 diff --git a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/UnPrepare.anim.meta b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/UnPrepare.anim.meta index e8afa9c3d..995c96199 100644 --- a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/UnPrepare.anim.meta +++ b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/UnPrepare.anim.meta @@ -4,5 +4,5 @@ NativeFormatImporter: externalObjects: {} mainObjectFileID: 7400000 userData: - assetBundleName: ntrninja/common + assetBundleName: assetBundleVariant: diff --git a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/WhiffGlobal.anim.meta b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/WhiffGlobal.anim.meta index 4977fbd55..de358332e 100644 --- a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/WhiffGlobal.anim.meta +++ b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/WhiffGlobal.anim.meta @@ -4,5 +4,5 @@ NativeFormatImporter: externalObjects: {} mainObjectFileID: 7400000 userData: - assetBundleName: ntrninja/common + assetBundleName: assetBundleVariant: diff --git a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/WhiffLeft.anim.meta b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/WhiffLeft.anim.meta index ff841b0f5..3254ca4ca 100644 --- a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/WhiffLeft.anim.meta +++ b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/WhiffLeft.anim.meta @@ -4,5 +4,5 @@ NativeFormatImporter: externalObjects: {} mainObjectFileID: 7400000 userData: - assetBundleName: ntrninja/common + assetBundleName: assetBundleVariant: diff --git a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/WhiffRight.anim.meta b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/WhiffRight.anim.meta index 69e71753d..1eba1e4e3 100644 --- a/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/WhiffRight.anim.meta +++ b/Assets/Resources/Sprites/Games/DogNinja/Animation/Dog/WhiffRight.anim.meta @@ -4,5 +4,5 @@ NativeFormatImporter: externalObjects: {} mainObjectFileID: 7400000 userData: - assetBundleName: ntrninja/common + assetBundleName: assetBundleVariant: diff --git a/Assets/Resources/Sprites/Games/DogNinja/Animation/Halves/Idle.anim.meta b/Assets/Resources/Sprites/Games/DogNinja/Animation/Halves/Idle.anim.meta index 7d6a96208..c3a0a3a1e 100644 --- a/Assets/Resources/Sprites/Games/DogNinja/Animation/Halves/Idle.anim.meta +++ b/Assets/Resources/Sprites/Games/DogNinja/Animation/Halves/Idle.anim.meta @@ -4,5 +4,5 @@ NativeFormatImporter: externalObjects: {} mainObjectFileID: 7400000 userData: - assetBundleName: ntrninja/common + assetBundleName: assetBundleVariant: diff --git a/Assets/Resources/Sprites/Games/DogNinja/Animation/Halves/LeftHalfAnim.controller.meta b/Assets/Resources/Sprites/Games/DogNinja/Animation/Halves/LeftHalfAnim.controller.meta index 2bef73156..4167596fd 100644 --- a/Assets/Resources/Sprites/Games/DogNinja/Animation/Halves/LeftHalfAnim.controller.meta +++ b/Assets/Resources/Sprites/Games/DogNinja/Animation/Halves/LeftHalfAnim.controller.meta @@ -4,5 +4,5 @@ NativeFormatImporter: externalObjects: {} mainObjectFileID: 9100000 userData: - assetBundleName: ntrninja/common + assetBundleName: assetBundleVariant: diff --git a/Assets/Resources/Sprites/Games/DogNinja/Animation/Halves/LeftHalfFallLeft.anim.meta b/Assets/Resources/Sprites/Games/DogNinja/Animation/Halves/LeftHalfFallLeft.anim.meta index dd82eac4e..abe410c1d 100644 --- a/Assets/Resources/Sprites/Games/DogNinja/Animation/Halves/LeftHalfFallLeft.anim.meta +++ b/Assets/Resources/Sprites/Games/DogNinja/Animation/Halves/LeftHalfFallLeft.anim.meta @@ -4,5 +4,5 @@ NativeFormatImporter: externalObjects: {} mainObjectFileID: 7400000 userData: - assetBundleName: ntrninja/common + assetBundleName: assetBundleVariant: diff --git a/Assets/Resources/Sprites/Games/DogNinja/Animation/Halves/LeftHalfFallRight.anim.meta b/Assets/Resources/Sprites/Games/DogNinja/Animation/Halves/LeftHalfFallRight.anim.meta index 931c8ca06..892db1a80 100644 --- a/Assets/Resources/Sprites/Games/DogNinja/Animation/Halves/LeftHalfFallRight.anim.meta +++ b/Assets/Resources/Sprites/Games/DogNinja/Animation/Halves/LeftHalfFallRight.anim.meta @@ -4,5 +4,5 @@ NativeFormatImporter: externalObjects: {} mainObjectFileID: 0 userData: - assetBundleName: ntrninja/common + assetBundleName: assetBundleVariant: diff --git a/Assets/Resources/Sprites/Games/DogNinja/Animation/Halves/RightHalfAnim.controller.meta b/Assets/Resources/Sprites/Games/DogNinja/Animation/Halves/RightHalfAnim.controller.meta index 8495dae3d..ac48afa42 100644 --- a/Assets/Resources/Sprites/Games/DogNinja/Animation/Halves/RightHalfAnim.controller.meta +++ b/Assets/Resources/Sprites/Games/DogNinja/Animation/Halves/RightHalfAnim.controller.meta @@ -4,5 +4,5 @@ NativeFormatImporter: externalObjects: {} mainObjectFileID: 9100000 userData: - assetBundleName: ntrninja/common + assetBundleName: assetBundleVariant: diff --git a/Assets/Resources/Sprites/Games/DogNinja/Animation/Halves/RightHalfFallLeft.anim.meta b/Assets/Resources/Sprites/Games/DogNinja/Animation/Halves/RightHalfFallLeft.anim.meta index 967bae6eb..eb4e20e9e 100644 --- a/Assets/Resources/Sprites/Games/DogNinja/Animation/Halves/RightHalfFallLeft.anim.meta +++ b/Assets/Resources/Sprites/Games/DogNinja/Animation/Halves/RightHalfFallLeft.anim.meta @@ -4,5 +4,5 @@ NativeFormatImporter: externalObjects: {} mainObjectFileID: 7400000 userData: - assetBundleName: ntrninja/common + assetBundleName: assetBundleVariant: diff --git a/Assets/Resources/Sprites/Games/DogNinja/Animation/Halves/RightHalfFallRight.anim.meta b/Assets/Resources/Sprites/Games/DogNinja/Animation/Halves/RightHalfFallRight.anim.meta index cf3d070ac..20624a75e 100644 --- a/Assets/Resources/Sprites/Games/DogNinja/Animation/Halves/RightHalfFallRight.anim.meta +++ b/Assets/Resources/Sprites/Games/DogNinja/Animation/Halves/RightHalfFallRight.anim.meta @@ -4,5 +4,5 @@ NativeFormatImporter: externalObjects: {} mainObjectFileID: 0 userData: - assetBundleName: ntrninja/common + assetBundleName: assetBundleVariant: diff --git a/Assets/Resources/Sprites/Games/DogNinja/DogNinja_OtherObjects.png.meta b/Assets/Resources/Sprites/Games/DogNinja/DogNinja_OtherObjects.png.meta index 06caa9aec..4b6f86db9 100644 --- a/Assets/Resources/Sprites/Games/DogNinja/DogNinja_OtherObjects.png.meta +++ b/Assets/Resources/Sprites/Games/DogNinja/DogNinja_OtherObjects.png.meta @@ -689,7 +689,7 @@ TextureImporter: width: 110 height: 201 alignment: 0 - pivot: {x: 0.5, y: 0.5} + pivot: {x: 0, y: 0} border: {x: 0, y: 0, z: 0, w: 0} outline: [] physicsShape: [] @@ -710,7 +710,7 @@ TextureImporter: width: 103 height: 198 alignment: 0 - pivot: {x: 0.5, y: 0.5} + pivot: {x: 0, y: 0} border: {x: 0, y: 0, z: 0, w: 0} outline: [] physicsShape: [] @@ -731,7 +731,7 @@ TextureImporter: width: 78 height: 199 alignment: 0 - pivot: {x: 0.5, y: 0.5} + pivot: {x: 0, y: 0} border: {x: 0, y: 0, z: 0, w: 0} outline: [] physicsShape: [] @@ -743,27 +743,6 @@ TextureImporter: indices: edges: [] weights: [] - - serializedVersion: 2 - name: oh it's the little guy. you found him - rect: - serializedVersion: 2 - x: 1143 - y: 1591 - width: 16 - height: 49 - alignment: 0 - pivot: {x: 0, y: 0} - border: {x: 0, y: 0, z: 0, w: 0} - outline: [] - physicsShape: [] - tessellationDetail: 0 - bones: [] - spriteID: 4cd68dea3c30b1f48bcd6dd5ad0fffa5 - internalID: 1314131981 - vertices: [] - indices: - edges: [] - weights: [] outline: [] physicsShape: [] bones: [] @@ -784,7 +763,6 @@ TextureImporter: Ball_Full: 8158683621920566786 Ball_Left: -5925680740112638021 Ball_Right: -5567381644477528568 - DogNinja_OtherObjects_0: -1593653543 Idol_Full: 2196219148037962045 Idol_Left: -130797512336752496 Idol_Right: 8490305602720712907 @@ -805,7 +783,6 @@ TextureImporter: WildBreath_Full: 2053246660185171032 WildBreath_Left: -7594402133338608887 WildBreath_Right: 3508372842914876614 - oh it's the little guy. you found him: 1314131981 spritePackingTag: pSDRemoveMatte: 0 pSDShowRemoveMatteOption: 0 diff --git a/Assets/Scripts/Games/DogNinja/DogNinja.cs b/Assets/Scripts/Games/DogNinja/DogNinja.cs index dc115d9d0..5bba68607 100644 --- a/Assets/Scripts/Games/DogNinja/DogNinja.cs +++ b/Assets/Scripts/Games/DogNinja/DogNinja.cs @@ -5,7 +5,6 @@ using System; using System.Collections.Generic; using UnityEngine; using TMPro; -using Jukebox; namespace HeavenStudio.Games.Loaders { @@ -14,46 +13,11 @@ namespace HeavenStudio.Games.Loaders { public static Minigame AddGame(EventCaller eventCaller) { - RiqEntity ObjectUpdater(string datamodel, RiqEntity e) - { - if (datamodel == "dogNinja/ThrowObject" && e.version == 0) - { - e["diffObjs"] = e["direction"] == 2 && e["typeL"] != e["typeR"]; - e["type"] = e["direction"] is 0 or 2 ? (int)e["typeL"] : e["typeR"]; - e.version = 1; - - return e; - } - return null; - } - // // Beatmap.Entities isn't available in a riqentity updater... - // RiqEntity BirdUpdater(string datamodel, RiqEntity e) - // { - // if (datamodel == "dogNinja/CutEverything" && e.version == 0) - // { - // RiqEntity nextBird = eventCaller.gameManager.Beatmap.Entities.Find(c => c.datamodel is "dogNinja/CutEverything" && c.beat > e.beat); - // if (nextBird != null) nextBird.datamodel = "dogNinja/DELETE THIS"; - // e.length = nextBird != null ? (float)(nextBird.beat - e.beat) : 4; - // e.version = 1; - - // return e; - // } - // return null; - // } - - RiqBeatmap.OnUpdateEntity += ObjectUpdater; - // RiqBeatmap.OnUpdateEntity += BirdUpdater; - return new Minigame("dogNinja", "Dog Ninja", "554899", false, false, new List() { new GameAction("Bop", "Bop") { - function = delegate { - var e = eventCaller.currentEntity; - if (eventCaller.gameManager.minigameObj.TryGetComponent(out DogNinja instance)) { - instance.Bop(e.beat, e.length, e["auto"], e["toggle"]); - } - }, + function = delegate { DogNinja.instance.Bop(eventCaller.currentEntity.beat, eventCaller.currentEntity.length, eventCaller.currentEntity["auto"], eventCaller.currentEntity["toggle"]); }, resizable = true, parameters = new List() { @@ -63,28 +27,17 @@ namespace HeavenStudio.Games.Loaders }, new GameAction("Prepare", "Prepare") { - function = delegate { - if (eventCaller.gameManager.minigameObj.TryGetComponent(out DogNinja instance)) { - instance.DoPrepare(); - } - }, + function = delegate { DogNinja.instance.Prepare(eventCaller.currentEntity.beat); }, defaultLength = 0.5f, }, new GameAction("ThrowObject", "Throw Object") { - preFunction = delegate { - var e = eventCaller.currentEntity; - DogNinja.QueueObject(e.beat, e["direction"], e["diffObjs"], e["type"], e["typeL"], e["typeR"], e["shouldPrepare"], e["muteThrow"], e); - }, + function = delegate { var e = eventCaller.currentEntity; DogNinja.QueueObject(e.beat, e["direction"], e["typeL"], e["typeR"], e["shouldPrepare"], false); }, + inactiveFunction = delegate { var e = eventCaller.currentEntity; DogNinja.QueueObject(e.beat, e["direction"], e["typeL"], e["typeR"], e["shouldPrepare"], e["muteThrow"]); }, defaultLength = 2, parameters = new List() { new Param("direction", DogNinja.ObjectDirection.Left, "Which Side", "Choose the side(s) the object(s) should be thrown from."), - new Param("diffObjs", false, "Different Objects", "Toggle if the sides should be different.", new() { - new((x, _) => (bool)x, "typeL", "typeR"), - new((x, _) => !(bool)x, "type"), - }), - new Param("type", DogNinja.ObjectType.Random, "Object", "Choose the object to be thrown."), new Param("typeL", DogNinja.ObjectType.Random, "Left Object", "Choose the object to be thrown from the left."), new Param("typeR", DogNinja.ObjectType.Random, "Right Object", "Choose the object to be thrown from the right."), new Param("shouldPrepare", true, "Prepare", "Toggle if Dog Ninja should automatically prepare for this cue."), @@ -93,26 +46,57 @@ namespace HeavenStudio.Games.Loaders }, new GameAction("CutEverything", "Mister Eagle's Sign") { - function = delegate { - var e = eventCaller.currentEntity; - if (eventCaller.gameManager.minigameObj.TryGetComponent(out DogNinja instance)) { - instance.CutEverything(e.beat, e.length, e["toggle"], e["text"]); - } - }, - defaultLength = 4f, - resizable = true, + function = delegate { var e = eventCaller.currentEntity; DogNinja.instance.CutEverything(e.beat, e["toggle"], e["text"]); }, + defaultLength = 0.5f, parameters = new List() { - new Param("toggle", true, "Play Sound", "Toggle if the sound effect should play for flying in."), + new Param("toggle", true, "Play Sound", "Toggle if the sound effect should play for flying in and out."), new Param("text", "Cut everything!", "Sign Text", "Set the text to be displayed on the sign.") } }, new GameAction("HereWeGo", "Here We Go!") { - preFunction = delegate { DogNinja.HereWeGo(eventCaller.currentEntity.beat); }, + function = delegate { DogNinja.instance.HereWeGo(eventCaller.currentEntity.beat); }, defaultLength = 2, + inactiveFunction = delegate { DogNinja.HereWeGoInactive(eventCaller.currentEntity.beat); }, preFunctionLength = 1, }, + + // these are still here for backwards-compatibility but are hidden in the editor + new GameAction("ThrowObjectLeft", "Throw Object Left") + { + function = delegate { var e = eventCaller.currentEntity; DogNinja.QueueObject(e.beat, 0, e["type"], 0, true, false);}, + defaultLength = 2, + hidden = true, + parameters = new List() + { + new Param("type", DogNinja.ObjectType.Random, "Object", "The object to be thrown"), + }, + inactiveFunction = delegate { var e = eventCaller.currentEntity; DogNinja.QueueObject(e.beat, 0, e["type"], 0, true, false);}, + }, + new GameAction("ThrowObjectRight", "Throw Object Right") + { + function = delegate { var e = eventCaller.currentEntity; DogNinja.QueueObject(e.beat, 1, 0, e["type"], true, false);}, + defaultLength = 2, + hidden = true, + parameters = new List() + { + new Param("type", DogNinja.ObjectType.Random, "Object", "The object to be thrown"), + }, + inactiveFunction = delegate { var e = eventCaller.currentEntity; DogNinja.QueueObject(e.beat, 1, 0, e["type"], true, false);}, + }, + new GameAction("ThrowObjectBoth", "Throw Object Both") + { + function = delegate { var e = eventCaller.currentEntity; DogNinja.QueueObject(e.beat, 2, e["typeL"], e["typeR"], true, false);}, + defaultLength = 2, + hidden = true, + parameters = new List() + { + new Param("typeL", DogNinja.ObjectType.Random, "Left Object", "The object on the left to be thrown"), + new Param("typeR", DogNinja.ObjectType.Random, "Right Object", "The object on the right to be thrown"), + }, + inactiveFunction = delegate { var e = eventCaller.currentEntity; DogNinja.QueueObject(e.beat, 2, e["typeL"], e["typeR"], true, false);}, + }, }, new List() { "ntr", "normal" }, "ntrninja", "en", @@ -124,14 +108,18 @@ namespace HeavenStudio.Games.Loaders namespace HeavenStudio.Games { - using Jukebox; using Scripts_DogNinja; public class DogNinja : Minigame { - private struct QueuedThrow + static List queuedThrows = new List(); + struct QueuedThrow { - public int[] types; - public string sfxNumL, sfxNumR; + public double beat; + public int direction; + public int typeL; + public int typeR; + public string sfxNumL; + public string sfxNumR; } [Header("Animators")] @@ -139,15 +127,23 @@ namespace HeavenStudio.Games public Animator BirdAnim; // bird flying in and out [Header("References")] - [SerializeField] ThrowObject ObjectBase; + [SerializeField] GameObject ObjectBase; + [SerializeField] GameObject FullBird; [SerializeField] SpriteRenderer WhichObject; - [SerializeField] TMP_Text CutEverythingText; + public SpriteRenderer WhichLeftHalf; + public SpriteRenderer WhichRightHalf; + [SerializeField] TMP_Text cutEverythingText; + + [Header("Curves")] + [SerializeField] BezierCurve3D CurveFromLeft; + [SerializeField] BezierCurve3D CurveFromRight; [SerializeField] Sprite[] ObjectTypes; - private bool autoBop = true; - public bool queuePrepare; - public bool preparing; + private bool birdOnScreen = false; + private const string sfxNum = "dogNinja/"; + + public static DogNinja instance; public enum ObjectDirection { @@ -156,7 +152,7 @@ namespace HeavenStudio.Games Both, } - public enum ObjectType : int + public enum ObjectType { Random, // random fruit Apple, // fruit @@ -199,172 +195,199 @@ namespace HeavenStudio.Games new("NtrNinjaTouchRelease", new int[] { IAEmptyCat, IAReleaseCat, IAEmptyCat }, IA_Empty, IA_TouchBasicRelease, IA_Empty); - public override void OnLateBeatPulse(double beat) + private void Awake() { - if (autoBop && !preparing && !queuePrepare && (DogAnim.IsAnimationNotPlaying() || DogAnim.IsPlayingAnimationNames("Idle"))) { + instance = this; + SetupBopRegion("dogNinja", "Bop", "auto"); + } + + void OnDestroy() + { + if (!Conductor.instance.isPlaying || Conductor.instance.isPaused) + { + if (queuedThrows.Count > 0) queuedThrows.Clear(); + } + foreach (var evt in scheduledInputs) + { + evt.Disable(); + } + } + + public override void OnBeatPulse(double beat) + { + if (BeatIsInBopRegion(beat) && DogAnim.IsAnimationNotPlaying() || DogAnim.IsPlayingAnimationNames("Idle")) { DogAnim.DoScaledAnimationAsync("Bop", 0.5f); } } - public override void OnPlay(double beat) - { - foreach (var e in gameManager.Beatmap.Entities.FindAll(e => e.datamodel is "dogNinja/ThrowObject" && beat > e.beat && beat < e.beat + 1)) - { - DogAnim.Play("Prepare", 0, 1); - preparing = true; - QueueObject(e.beat, e["direction"], e["diffObjs"], e["type"], e["typeL"], e["typeR"], e["shouldPrepare"], true, e); - } - } - - public override void OnGameSwitch(double beat) - { - foreach (var e in gameManager.Beatmap.Entities.FindAll(e => e.datamodel is "dogNinja/ThrowObject" && beat >= e.beat - 2 && beat < e.beat + 1)) - { - QueuedThrow t = e["throwData"]; - bool shouldPrepare = e["shouldPrepare"]; - if (beat > e.beat) { - shouldPrepare = false; - DogAnim.Play("Prepare", 0, 1); - preparing = true; - } - ThrowObject(e.beat, e["direction"], shouldPrepare, t.types, t.sfxNumL, t.sfxNumR); - } - } - private void Update() { - // prepare queuing stuff - if (queuePrepare && !preparing && (DogAnim.IsAnimationNotPlaying() || DogAnim.IsPlayingAnimationNames("Bop"))) + if (DogAnim.GetBool("needPrepare") && DogAnim.IsAnimationNotPlaying()) { DogAnim.DoScaledAnimationAsync("Prepare", 0.5f); - preparing = true; - queuePrepare = false; + DogAnim.SetBool("needPrepare", true); } - // controls stuff if (PlayerInput.GetIsAction(InputAction_TouchPress) && !GameManager.instance.autoplay) { - // queuePrepare = true; + DogAnim.SetBool("needPrepare", true); DogAnim.DoScaledAnimationAsync("Prepare", 0.5f); - preparing = true; } if (PlayerInput.GetIsAction(InputAction_TouchRelease) && (!IsExpectingInputNow(InputAction_Press)) && (!GameManager.instance.autoplay)) { - StopPrepare(); - DogAnim.DoScaledAnimationAsync("Unprepare", 0.5f); + DogAnim.SetBool("needPrepare", false); + DogAnim.DoScaledAnimationAsync("Bop", 0.5f); } if (PlayerInput.GetIsAction(InputAction_Press) && !IsExpectingInputNow(InputAction_Press)) { - string slice = UnityEngine.Random.Range(0, 1f) < 0.5f ? "WhiffRight" : "WhiffLeft"; - DogAnim.DoScaledAnimationAsync(slice, 0.5f); + System.Random rd = new System.Random(); + string slice; + int LorR = rd.Next(0, 2); + if (LorR < 1) + { + slice = "WhiffRight"; + } + else + { + slice = "WhiffLeft"; + } + DogAnim.DoScaledAnimationAsync(slice, 0.5f); SoundByte.PlayOneShotGame("dogNinja/whiff"); - StopPrepare(); + DogAnim.SetBool("needPrepare", false); + } + + if (queuedThrows.Count > 0) + { + foreach (var obj in queuedThrows) { ThrowObject(obj.beat, obj.direction, obj.typeL, obj.typeR, obj.sfxNumL, obj.sfxNumR); } + queuedThrows.Clear(); } } public void Bop(double beat, float length, bool auto, bool bop) { - autoBop = auto; if (!bop) return; - List actions = new(); - for (int i = 0; i < length; i++) { + + for (int i = 0; i < length; i++) + { actions.Add(new(beat + i, delegate { DogAnim.DoScaledAnimationAsync("Bop", 0.5f); })); } + if (actions.Count > 0) BeatAction.New(this, actions); } - public static void QueueObject(double beat, int direction, bool diffObjs, int type, int typeL, int typeR, bool prepare, bool muteThrow, RiqEntity e) + public static void QueueObject(double beat, int direction, int typeL, int typeR, bool prepare, bool muteThrow) { - int randomObj = 1; - int[] types = diffObjs ? new[] { typeL, typeR } : new[] { type, type }; - string[] sfxNums = new string[2]; - - for (int i = 0; i < 2; i++) + int ObjSprite = 1; + if (typeL == 0 || typeR == 0) { - if (types[i] == 0 && (diffObjs || i == 0)) randomObj = UnityEngine.Random.Range((int)ObjectType.Apple, (int)ObjectType.Potato + 1); - if (types[i] == 0) types[i] = randomObj; - sfxNums[i] = "dogNinja/" + (types[i] < 7 ? "fruit" : Enum.GetName(typeof(ObjectType), types[i])); + // random object code. it makes a random number from 1-7 and sets that as the sprite + System.Random rd = new System.Random(); + ObjSprite = rd.Next(1, 7); } - if (!muteThrow) { - for (int i = 0; i < (direction == 2 && diffObjs ? 2 : 1); i++) { - SoundByte.PlayOneShotGame(sfxNums[i] + "1", beat, forcePlay: true); - } - } - - if (GameManager.instance.minigame is DogNinja instance) { - instance.ThrowObject(beat, direction, prepare, types, sfxNums[0], sfxNums[1]); - - } else { - var queuedThrow = new QueuedThrow() { - types = types, - sfxNumL = sfxNums[0], - sfxNumR = sfxNums[1], - }; - // funny static variable workaround :) - if (!e.dynamicData.TryAdd("throwData", queuedThrow)) { - e["throwData"] = queuedThrow; - } - } - } - - public void ThrowObject(double beat, int direction, bool prepare, int[] types, string sfxNumL, string sfxNumR) - { - if (prepare) { - BeatAction.New(this, new() { - new(beat, () => queuePrepare = PlayerInput.CurrentControlStyle != InputController.ControlStyles.Touch || GameManager.instance.autoplay) - }); - } - for (int i = 0; i < (direction == 2 ? 2 : 1); i++) + string sfxNumL = "dogNinja/"; + if (direction is 0 or 2) { - bool l = direction is 2 ? i == 0 : direction == 0; - WhichObject.sprite = ObjectTypes[l ? types[0] : types[1]]; - ThrowObject obj = Instantiate(ObjectBase, transform); - obj.startBeat = beat; - obj.direction = direction; - obj.fromLeft = l; - obj.type = l ? types[0] : types[1]; - obj.sfxNum = l ? sfxNumL : sfxNumR; - if (direction == 2) obj.shouldSfx = l == (types[0] == types[1]); + sfxNumL += typeL < 7 ? "fruit" : Enum.GetName(typeof(ObjectType), typeL); + if (typeL == 0) typeL = ObjSprite; + if (!muteThrow) SoundByte.PlayOneShotGame(sfxNumL + "1", forcePlay: true); } - } - public void CutEverything(double beat, float length, bool sound, string customText) - { - if (sound) SoundByte.PlayOneShotGame("dogNinja/bird_flap"); - BirdAnim.DoScaledAnimationAsync("FlyIn", 0.5f); - CutEverythingText.text = customText; + string sfxNumR = "dogNinja/"; + if (direction is 1 or 2) + { + sfxNumR += typeR < 7 ? "fruit" : Enum.GetName(typeof(ObjectType), typeR); + if (typeR == 0) typeR = ObjSprite; + if (!(direction == 2 && typeL == typeR) && !muteThrow) SoundByte.PlayOneShotGame(sfxNumR + "1", forcePlay: true); + } - BeatAction.New(this, new() { - new(beat + length, () => BirdAnim.Play("FlyOut", 0, 0)) + queuedThrows.Add(new QueuedThrow() + { + beat = beat, + direction = direction, + typeL = typeL, + typeR = typeR, + sfxNumL = sfxNumL, + sfxNumR = sfxNumR, }); + + prepare = prepare && (PlayerInput.CurrentControlStyle != InputController.ControlStyles.Touch || GameManager.instance.autoplay); + if (prepare) DogNinja.instance.DogAnim.SetBool("needPrepare", true); } - public void StopPrepare() + public void ThrowObject(double beat, int direction, int typeL, int typeR, string sfxNumL, string sfxNumR) { - preparing = false; - queuePrepare = false; + // instantiate a game object and give it its variables + if (direction is 0 or 2) + { + WhichObject.sprite = ObjectTypes[typeL]; + ThrowObject ObjectL = Instantiate(ObjectBase, gameObject.transform).GetComponent(); + ObjectL.startBeat = beat; + ObjectL.curve = CurveFromLeft; + ObjectL.fromLeft = true; + ObjectL.direction = direction; + ObjectL.type = typeL; + ObjectL.sfxNum = sfxNumL; + if (direction == 2) ObjectL.shouldSfx = (typeL == typeR); + } + + if (direction is 1 or 2) + { + WhichObject.sprite = ObjectTypes[typeR]; + ThrowObject ObjectR = Instantiate(ObjectBase, gameObject.transform).GetComponent(); + ObjectR.startBeat = beat; + ObjectR.curve = CurveFromRight; + ObjectR.fromLeft = false; + ObjectR.direction = direction; + ObjectR.type = typeR; + ObjectR.sfxNum = sfxNumR; + if (direction == 2) ObjectR.shouldSfx = !(typeL == typeR); + } } - public void DoPrepare() + public void CutEverything(double beat, bool sound, string customText) + { + // plays one anim with sfx when it's not on screen, plays a different anim with no sfx when on screen. ez + if (!birdOnScreen) + { + FullBird.SetActive(true); + if (sound) + { + SoundByte.PlayOneShotGame(sfxNum + "bird_flap"); + } + BirdAnim.Play("FlyIn", 0, 0); + birdOnScreen = true; + cutEverythingText.text = customText; + } + else + { + BirdAnim.Play("FlyOut", 0, 0); + birdOnScreen = false; + } + } + + public void Prepare(double beat) { if (PlayerInput.CurrentControlStyle == InputController.ControlStyles.Touch && PlayerInput.PlayerHasControl()) return; - DogAnim.DoScaledAnimationAsync("Prepare", 0.5f); - preparing = true; + if (!DogAnim.GetBool("needPrepare")) DogAnim.DoScaledAnimationAsync("Prepare", 0.5f); + DogAnim.SetBool("needPrepare", true); } - public static void HereWeGo(double beat) + public void HereWeGo(double beat) { - // // sound sequence isn't working? - // PlaySoundSequence("dogNinja", "here_we_go", beat); - MultiSound.Play(new List() { - new("dogNinja/here", beat + 0), - new("dogNinja/we", beat + 0.5), - new("dogNinja/go", beat + 1), - }, forcePlay: true); + MultiSound.Play(new MultiSound.Sound[] { + new MultiSound.Sound(sfxNum+"here", beat), + new MultiSound.Sound(sfxNum+"we", beat + 0.5f), + new MultiSound.Sound(sfxNum+"go", beat + 1f) + }, forcePlay: true); + } + + public static void HereWeGoInactive(double beat) + { + DogNinja.instance.HereWeGo(beat); } } } diff --git a/Assets/Scripts/Games/DogNinja/SpawnHalves.cs b/Assets/Scripts/Games/DogNinja/SpawnHalves.cs index 094086e9b..30c76e4cf 100644 --- a/Assets/Scripts/Games/DogNinja/SpawnHalves.cs +++ b/Assets/Scripts/Games/DogNinja/SpawnHalves.cs @@ -4,14 +4,15 @@ using System; using UnityEngine; using NaughtyBezierCurves; +using HeavenStudio.Util; namespace HeavenStudio.Games.Scripts_DogNinja { - // this code sucks but i don't wanna touch it. it works fine enough. sorry! public class SpawnHalves : MonoBehaviour { public double startBeat; public Vector3 objPos; + private Vector3 posModifier; public bool lefty; float bpmModifier; double songPos; @@ -22,20 +23,27 @@ namespace HeavenStudio.Games.Scripts_DogNinja [SerializeField] BezierCurve3D fallLeftCurve; [SerializeField] BezierCurve3D fallRightCurve; BezierCurve3D curve; - public SpriteRenderer sr; + [SerializeField] Transform halvesParent; + + private DogNinja game; + + private void Awake() + { + game = DogNinja.instance; + bpmModifier = Conductor.instance.songBpm / 100; + songPos = Conductor.instance.songPositionInBeatsAsDouble; + } private void Start() { - bpmModifier = Conductor.instance.songBpm / 100; - songPos = Conductor.instance.songPositionInBeatsAsDouble; curve = lefty ? fallRightCurve : fallLeftCurve; } private void Update() { - float flyPosHalves = (Conductor.instance.GetPositionFromBeat(songPos, 3f) * Conductor.instance.GetPositionFromBeat(songPos, 2f)) + Conductor.instance.GetPositionFromBeat(songPos, 1f); - flyPosHalves = (flyPosHalves * 0.2f) + 0.35f; - transform.position = curve.GetPoint(flyPosHalves) + objPos; + float flyPosHalves = (Conductor.instance.GetPositionFromBeat(songPos, 3f)*(Conductor.instance.GetPositionFromBeat(songPos, 2f)))+Conductor.instance.GetPositionFromBeat(songPos, 1f); + flyPosHalves = (flyPosHalves*0.2f)+0.35f; + transform.position = curve.GetPoint(flyPosHalves)+objPos; float rot = rotSpeed; rot *= lefty ? bpmModifier : -1 * bpmModifier; @@ -43,8 +51,13 @@ namespace HeavenStudio.Games.Scripts_DogNinja // clean-up logic if (flyPosHalves > 1f) { - Destroy(gameObject); - } + GameObject.Destroy(gameObject); + }; + + if ((!Conductor.instance.isPlaying && !Conductor.instance.isPaused) + || GameManager.instance.currentGame != "dogNinja") { + GameObject.Destroy(gameObject); + }; } } } diff --git a/Assets/Scripts/Games/DogNinja/ThrowObject.cs b/Assets/Scripts/Games/DogNinja/ThrowObject.cs index 69ef9ffb0..8aaf1151e 100644 --- a/Assets/Scripts/Games/DogNinja/ThrowObject.cs +++ b/Assets/Scripts/Games/DogNinja/ThrowObject.cs @@ -10,8 +10,6 @@ namespace HeavenStudio.Games.Scripts_DogNinja { public class ThrowObject : MonoBehaviour { - [SerializeField] DogNinja game; - public double startBeat; public int type; public bool fromLeft; @@ -28,84 +26,120 @@ namespace HeavenStudio.Games.Scripts_DogNinja [Header("References")] public BezierCurve3D curve; - [SerializeField] BezierCurve3D LeftCurve; - [SerializeField] BezierCurve3D RightCurve; - private BezierCurve3D barelyCurve; + [SerializeField] BezierCurve3D barelyCurve; [SerializeField] BezierCurve3D BarelyLeftCurve; [SerializeField] BezierCurve3D BarelyRightCurve; - [SerializeField] SpawnHalves HalvesLeftBase; - [SerializeField] SpawnHalves HalvesRightBase; + [SerializeField] GameObject HalvesLeftBase; + [SerializeField] GameObject HalvesRightBase; + [SerializeField] Transform ObjectParent; public Sprite[] objectLeftHalves; public Sprite[] objectRightHalves; + private DogNinja game; + + private void Awake() + { + game = DogNinja.instance; + DogAnim = game.DogAnim; + } + private void Start() { - DogAnim = game.DogAnim; - curve = fromLeft ? LeftCurve : RightCurve; barelyCurve = fromLeft ? BarelyRightCurve : BarelyLeftCurve; - - game.ScheduleInput(startBeat, 1f, DogNinja.InputAction_Press, Hit, Miss, null); + + game.ScheduleInput(startBeat, 1f, DogNinja.InputAction_Press, Hit, Miss, Out); } private void Update() { + float flyPos = Conductor.instance.GetPositionFromBeat(startBeat, 1f)+1.1f; + float flyPosBarely = Conductor.instance.GetPositionFromBeat(barelyTime, 1f)+1f; if (isActive) { - float flyPos = game.conductor.GetPositionFromBeat(startBeat, 1f)+1.1f; flyPos *= 0.31f; transform.position = curve.GetPoint(flyPos); objPos = curve.GetPoint(flyPos); // destroy object when it's off-screen if (flyPos > 1f) { - Destroy(gameObject); + GameObject.Destroy(gameObject); } } else { - float flyPosBarely = game.conductor.GetPositionFromBeat(barelyTime, 1f)+1f; flyPosBarely *= 0.3f; transform.position = barelyCurve.GetPoint(flyPosBarely) + objPos; float rot = fromLeft ? 200f : -200f; transform.rotation = Quaternion.Euler(0, 0, transform.rotation.eulerAngles.z + (rot * Time.deltaTime)); if (flyPosBarely > 1f) { - Destroy(gameObject); + GameObject.Destroy(gameObject); } } + + if ((!Conductor.instance.isPlaying && !Conductor.instance.isPaused) + || GameManager.instance.currentGame != "dogNinja") { + GameObject.Destroy(gameObject); + } } - private void Hit(PlayerActionEvent caller, float state) + private void SuccessSlice() { - game.StopPrepare(); - string dir = direction switch { + string slice = "Slice" + direction switch + { 0 => "Left", 1 => "Right", _ => "Both", }; - if (state >= 1f || state <= -1f) { - isActive = false; - barelyTime = game.conductor.songPositionInBeatsAsDouble; - DogAnim.DoScaledAnimationAsync("Barely" + dir, 0.5f); - if (shouldSfx) SoundByte.PlayOneShotGame("dogNinja/barely"); - } else { - DogAnim.DoScaledAnimationAsync("Slice" + dir, 0.5f); - if (shouldSfx) SoundByte.PlayOneShotGame(sfxNum + "2"); + DogAnim.DoScaledAnimationAsync(slice, 0.5f); + if (shouldSfx) SoundByte.PlayOneShotGame(sfxNum+"2"); - HalvesLeftBase.sr.sprite = objectLeftHalves[type - 1]; - HalvesRightBase.sr.sprite = objectRightHalves[type - 1]; - for (int i = 0; i < 2; i++) { - SpawnHalves half = Instantiate(i == 0 ? HalvesLeftBase : HalvesRightBase, game.transform); - half.startBeat = startBeat; - half.lefty = fromLeft; - half.objPos = objPos; - } + game.WhichLeftHalf.sprite = objectLeftHalves[type-1]; + game.WhichRightHalf.sprite = objectRightHalves[type-1]; - Destroy(gameObject); - } + SpawnHalves LeftHalf = Instantiate(HalvesLeftBase, game.gameObject.transform).GetComponent(); + LeftHalf.startBeat = startBeat; + LeftHalf.lefty = fromLeft; + LeftHalf.objPos = objPos; + + SpawnHalves RightHalf = Instantiate(HalvesRightBase, game.gameObject.transform).GetComponent(); + RightHalf.startBeat = startBeat; + RightHalf.lefty = fromLeft; + RightHalf.objPos = objPos; + + GameObject.Destroy(gameObject); + } + + private void JustSlice() + { + isActive = false; + barelyTime = Conductor.instance.songPositionInBeatsAsDouble; + + string barely = "Barely" + direction switch + { + 0 => "Left", + 1 => "Right", + 2 => "Both", + _ => "Both", + }; + + DogAnim.DoScaledAnimationAsync(barely, 0.5f); + SoundByte.PlayOneShotGame("dogNinja/barely"); + } + + private void Hit(PlayerActionEvent caller, float state) + { + game.DogAnim.SetBool("needPrepare", false); + if (state >= 1f || state <= -1f) JustSlice(); + else SuccessSlice(); } private void Miss(PlayerActionEvent caller) { - if (!game.preparing) return; - DogAnim.DoScaledAnimationAsync("Unprepare", 0.5f); - game.StopPrepare(); + if (!DogAnim.GetBool("needPrepare")) return; + DogAnim.DoScaledAnimationAsync("UnPrepare", 0.5f); + DogAnim.SetBool("needPrepare", false); + } + + private void Out(PlayerActionEvent caller) + { + DogAnim.SetBool("needPrepare", false); } } }