From 584b852c81c3504a823eee6eba83aa2eae53b023 Mon Sep 17 00:00:00 2001 From: cross28 Date: Fri, 15 Apr 2022 00:53:44 -0500 Subject: feat: set up template for zombie animation --- Assets/Animations/Enemies/Zombie/Idle.anim | 53 +++++++ Assets/Animations/Enemies/Zombie/Idle.anim.meta | 8 ++ Assets/Animations/Enemies/Zombie/Moving.anim | 53 +++++++ Assets/Animations/Enemies/Zombie/Moving.anim.meta | 8 ++ Assets/Animations/Enemies/Zombie/Zombie.controller | 153 +++++++++++++++++++++ .../Enemies/Zombie/Zombie.controller.meta | 8 ++ 6 files changed, 283 insertions(+) create mode 100644 Assets/Animations/Enemies/Zombie/Idle.anim create mode 100644 Assets/Animations/Enemies/Zombie/Idle.anim.meta create mode 100644 Assets/Animations/Enemies/Zombie/Moving.anim create mode 100644 Assets/Animations/Enemies/Zombie/Moving.anim.meta create mode 100644 Assets/Animations/Enemies/Zombie/Zombie.controller create mode 100644 Assets/Animations/Enemies/Zombie/Zombie.controller.meta (limited to 'Assets/Animations/Enemies/Zombie') diff --git a/Assets/Animations/Enemies/Zombie/Idle.anim b/Assets/Animations/Enemies/Zombie/Idle.anim new file mode 100644 index 0000000..c89c100 --- /dev/null +++ b/Assets/Animations/Enemies/Zombie/Idle.anim @@ -0,0 +1,53 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!74 &7400000 +AnimationClip: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Idle + serializedVersion: 6 + m_Legacy: 0 + m_Compressed: 0 + m_UseHighQualityCurve: 1 + m_RotationCurves: [] + m_CompressedRotationCurves: [] + m_EulerCurves: [] + m_PositionCurves: [] + m_ScaleCurves: [] + m_FloatCurves: [] + m_PPtrCurves: [] + m_SampleRate: 60 + m_WrapMode: 0 + m_Bounds: + m_Center: {x: 0, y: 0, z: 0} + m_Extent: {x: 0, y: 0, z: 0} + m_ClipBindingConstant: + genericBindings: [] + pptrCurveMapping: [] + m_AnimationClipSettings: + serializedVersion: 2 + m_AdditiveReferencePoseClip: {fileID: 0} + m_AdditiveReferencePoseTime: 0 + m_StartTime: 0 + m_StopTime: 1 + m_OrientationOffsetY: 0 + m_Level: 0 + m_CycleOffset: 0 + m_HasAdditiveReferencePose: 0 + m_LoopTime: 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: [] + m_EulerEditorCurves: [] + m_HasGenericRootTransform: 0 + m_HasMotionFloatCurves: 0 + m_Events: [] diff --git a/Assets/Animations/Enemies/Zombie/Idle.anim.meta b/Assets/Animations/Enemies/Zombie/Idle.anim.meta new file mode 100644 index 0000000..a3204c0 --- /dev/null +++ b/Assets/Animations/Enemies/Zombie/Idle.anim.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: a4c07776cf364714f996da50902ab553 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 7400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Animations/Enemies/Zombie/Moving.anim b/Assets/Animations/Enemies/Zombie/Moving.anim new file mode 100644 index 0000000..e8c12fb --- /dev/null +++ b/Assets/Animations/Enemies/Zombie/Moving.anim @@ -0,0 +1,53 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!74 &7400000 +AnimationClip: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Moving + serializedVersion: 6 + m_Legacy: 0 + m_Compressed: 0 + m_UseHighQualityCurve: 1 + m_RotationCurves: [] + m_CompressedRotationCurves: [] + m_EulerCurves: [] + m_PositionCurves: [] + m_ScaleCurves: [] + m_FloatCurves: [] + m_PPtrCurves: [] + m_SampleRate: 60 + m_WrapMode: 0 + m_Bounds: + m_Center: {x: 0, y: 0, z: 0} + m_Extent: {x: 0, y: 0, z: 0} + m_ClipBindingConstant: + genericBindings: [] + pptrCurveMapping: [] + m_AnimationClipSettings: + serializedVersion: 2 + m_AdditiveReferencePoseClip: {fileID: 0} + m_AdditiveReferencePoseTime: 0 + m_StartTime: 0 + m_StopTime: 1 + m_OrientationOffsetY: 0 + m_Level: 0 + m_CycleOffset: 0 + m_HasAdditiveReferencePose: 0 + m_LoopTime: 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: [] + m_EulerEditorCurves: [] + m_HasGenericRootTransform: 0 + m_HasMotionFloatCurves: 0 + m_Events: [] diff --git a/Assets/Animations/Enemies/Zombie/Moving.anim.meta b/Assets/Animations/Enemies/Zombie/Moving.anim.meta new file mode 100644 index 0000000..d08dedf --- /dev/null +++ b/Assets/Animations/Enemies/Zombie/Moving.anim.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1c65a4008d81eec4fa1a98d6a2218261 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 7400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Animations/Enemies/Zombie/Zombie.controller b/Assets/Animations/Enemies/Zombie/Zombie.controller new file mode 100644 index 0000000..3f9455b --- /dev/null +++ b/Assets/Animations/Enemies/Zombie/Zombie.controller @@ -0,0 +1,153 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!1101 &-8731865481558821802 +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: -6089190274217570171} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 3 + m_TransitionDuration: 0.25 + m_TransitionOffset: 0 + m_ExitTime: 0.75 + m_HasExitTime: 1 + m_HasFixedDuration: 1 + m_InterruptionSource: 0 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 +--- !u!1107 &-6204006212838014119 +AnimatorStateMachine: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Base Layer + m_ChildStates: + - serializedVersion: 1 + m_State: {fileID: 8969007887231168511} + m_Position: {x: 320, y: 130, z: 0} + - serializedVersion: 1 + m_State: {fileID: -6089190274217570171} + m_Position: {x: 320, y: 10, z: 0} + m_ChildStateMachines: [] + m_AnyStateTransitions: [] + m_EntryTransitions: [] + m_StateMachineTransitions: {} + m_StateMachineBehaviours: [] + m_AnyStatePosition: {x: 50, y: 20, z: 0} + m_EntryPosition: {x: 50, y: 120, z: 0} + m_ExitPosition: {x: 800, y: 120, z: 0} + m_ParentStateMachinePosition: {x: 800, y: 20, z: 0} + m_DefaultState: {fileID: 8969007887231168511} +--- !u!1102 &-6089190274217570171 +AnimatorState: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Moving + m_Speed: 1 + m_CycleOffset: 0 + m_Transitions: + - {fileID: 8139433511157601217} + m_StateMachineBehaviours: [] + m_Position: {x: 50, y: 50, z: 0} + m_IKOnFeet: 0 + m_WriteDefaultValues: 1 + m_Mirror: 0 + m_SpeedParameterActive: 0 + m_MirrorParameterActive: 0 + m_CycleOffsetParameterActive: 0 + m_TimeParameterActive: 0 + m_Motion: {fileID: 0} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: +--- !u!91 &9100000 +AnimatorController: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Zombie + serializedVersion: 5 + m_AnimatorParameters: + - m_Name: moving + m_Type: 4 + m_DefaultFloat: 0 + m_DefaultInt: 0 + m_DefaultBool: 0 + m_Controller: {fileID: 0} + m_AnimatorLayers: + - serializedVersion: 5 + m_Name: Base Layer + m_StateMachine: {fileID: -6204006212838014119} + m_Mask: {fileID: 0} + m_Motions: [] + m_Behaviours: [] + m_BlendingMode: 0 + m_SyncedLayerIndex: -1 + m_DefaultWeight: 0 + m_IKPass: 0 + m_SyncedLayerAffectsTiming: 0 + m_Controller: {fileID: 9100000} +--- !u!1101 &8139433511157601217 +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: 8969007887231168511} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 3 + m_TransitionDuration: 0.25 + m_TransitionOffset: 0 + m_ExitTime: 0.75 + m_HasExitTime: 1 + m_HasFixedDuration: 1 + m_InterruptionSource: 0 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 +--- !u!1102 &8969007887231168511 +AnimatorState: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Idle + m_Speed: 1 + m_CycleOffset: 0 + m_Transitions: + - {fileID: -8731865481558821802} + 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: a4c07776cf364714f996da50902ab553, type: 2} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: diff --git a/Assets/Animations/Enemies/Zombie/Zombie.controller.meta b/Assets/Animations/Enemies/Zombie/Zombie.controller.meta new file mode 100644 index 0000000..948bc3a --- /dev/null +++ b/Assets/Animations/Enemies/Zombie/Zombie.controller.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: e0579059f0698394b91f11d7e4bc1e7f +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 9100000 + userData: + assetBundleName: + assetBundleVariant: -- cgit v1.2.3-70-g09d2 From e50fc523b25010582c158b7a307e3e7b1db7fb47 Mon Sep 17 00:00:00 2001 From: cross28 Date: Fri, 15 Apr 2022 04:43:23 -0500 Subject: feat: Added zombie idle and moving animation --- Assets/Animations/Enemies/Zombie/Attack.anim | 86 +++++++++++++ Assets/Animations/Enemies/Zombie/Attack.anim.meta | 8 ++ Assets/Animations/Enemies/Zombie/Idle.anim | 46 ++++++- Assets/Animations/Enemies/Zombie/Moving.anim | 46 ++++++- Assets/Animations/Enemies/Zombie/Zombie.controller | 139 +++++++++++++-------- .../MontanaJohns/MontanaJohns.controller | 8 +- Assets/Prefabs/Projectile.prefab | 2 +- Assets/Scenes/Jungle.unity | 28 +++++ Assets/Scripts/Actors/Enemy.cs | 12 ++ Assets/Scripts/Projectile.cs | 9 +- 10 files changed, 310 insertions(+), 74 deletions(-) create mode 100644 Assets/Animations/Enemies/Zombie/Attack.anim create mode 100644 Assets/Animations/Enemies/Zombie/Attack.anim.meta (limited to 'Assets/Animations/Enemies/Zombie') diff --git a/Assets/Animations/Enemies/Zombie/Attack.anim b/Assets/Animations/Enemies/Zombie/Attack.anim new file mode 100644 index 0000000..43658a5 --- /dev/null +++ b/Assets/Animations/Enemies/Zombie/Attack.anim @@ -0,0 +1,86 @@ +%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: Attack + serializedVersion: 6 + m_Legacy: 0 + m_Compressed: 0 + m_UseHighQualityCurve: 1 + m_RotationCurves: [] + m_CompressedRotationCurves: [] + m_EulerCurves: [] + m_PositionCurves: [] + m_ScaleCurves: [] + m_FloatCurves: [] + m_PPtrCurves: + - curve: + - time: 0 + value: {fileID: 2078424329, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - time: 0.05 + value: {fileID: 828034450, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - time: 0.11666667 + value: {fileID: -302372421, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - time: 0.16666667 + value: {fileID: -85932321, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - time: 0.21666667 + value: {fileID: 1639612969, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - time: 0.28333333 + value: {fileID: -1764084075, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - time: 0.33333334 + value: {fileID: -560229937, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + attribute: m_Sprite + path: + classID: 212 + script: {fileID: 0} + m_SampleRate: 60 + m_WrapMode: 0 + m_Bounds: + m_Center: {x: 0, y: 0, z: 0} + m_Extent: {x: 0, y: 0, z: 0} + m_ClipBindingConstant: + genericBindings: + - serializedVersion: 2 + path: 0 + attribute: 0 + script: {fileID: 0} + typeID: 212 + customType: 23 + isPPtrCurve: 1 + pptrCurveMapping: + - {fileID: 2078424329, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - {fileID: 828034450, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - {fileID: -302372421, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - {fileID: -85932321, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - {fileID: 1639612969, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - {fileID: -1764084075, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - {fileID: -560229937, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + m_AnimationClipSettings: + serializedVersion: 2 + m_AdditiveReferencePoseClip: {fileID: 0} + m_AdditiveReferencePoseTime: 0 + m_StartTime: 0 + m_StopTime: 0.35000002 + m_OrientationOffsetY: 0 + m_Level: 0 + m_CycleOffset: 0 + m_HasAdditiveReferencePose: 0 + m_LoopTime: 1 + m_LoopBlend: 0 + m_LoopBlendOrientation: 0 + m_LoopBlendPositionY: 0 + m_LoopBlendPositionXZ: 0 + m_KeepOriginalOrientation: 0 + m_KeepOriginalPositionY: 1 + m_KeepOriginalPositionXZ: 0 + m_HeightFromFeet: 0 + m_Mirror: 0 + m_EditorCurves: [] + m_EulerEditorCurves: [] + m_HasGenericRootTransform: 0 + m_HasMotionFloatCurves: 0 + m_Events: [] diff --git a/Assets/Animations/Enemies/Zombie/Attack.anim.meta b/Assets/Animations/Enemies/Zombie/Attack.anim.meta new file mode 100644 index 0000000..ef6267c --- /dev/null +++ b/Assets/Animations/Enemies/Zombie/Attack.anim.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 46751831936f6464b867e572e5529105 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 7400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Animations/Enemies/Zombie/Idle.anim b/Assets/Animations/Enemies/Zombie/Idle.anim index c89c100..b93a7b9 100644 --- a/Assets/Animations/Enemies/Zombie/Idle.anim +++ b/Assets/Animations/Enemies/Zombie/Idle.anim @@ -17,26 +17,62 @@ AnimationClip: m_PositionCurves: [] m_ScaleCurves: [] m_FloatCurves: [] - m_PPtrCurves: [] + m_PPtrCurves: + - curve: + - time: 0 + value: {fileID: 606266643, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - time: 0.1 + value: {fileID: -1785555725, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - time: 0.21666667 + value: {fileID: -2003769690, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - time: 0.31666666 + value: {fileID: 606266643, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - time: 0.41666666 + value: {fileID: -1702410671, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - time: 0.53333336 + value: {fileID: -1785555725, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - time: 0.6166667 + value: {fileID: 606266643, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - time: 0.68333334 + value: {fileID: 606266643, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + attribute: m_Sprite + path: + classID: 212 + script: {fileID: 0} m_SampleRate: 60 m_WrapMode: 0 m_Bounds: m_Center: {x: 0, y: 0, z: 0} m_Extent: {x: 0, y: 0, z: 0} m_ClipBindingConstant: - genericBindings: [] - pptrCurveMapping: [] + genericBindings: + - serializedVersion: 2 + path: 0 + attribute: 0 + script: {fileID: 0} + typeID: 212 + customType: 23 + isPPtrCurve: 1 + pptrCurveMapping: + - {fileID: 606266643, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - {fileID: -1785555725, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - {fileID: -2003769690, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - {fileID: 606266643, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - {fileID: -1702410671, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - {fileID: -1785555725, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - {fileID: 606266643, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - {fileID: 606266643, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} m_AnimationClipSettings: serializedVersion: 2 m_AdditiveReferencePoseClip: {fileID: 0} m_AdditiveReferencePoseTime: 0 m_StartTime: 0 - m_StopTime: 1 + m_StopTime: 0.7 m_OrientationOffsetY: 0 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/Animations/Enemies/Zombie/Moving.anim b/Assets/Animations/Enemies/Zombie/Moving.anim index e8c12fb..a091f1f 100644 --- a/Assets/Animations/Enemies/Zombie/Moving.anim +++ b/Assets/Animations/Enemies/Zombie/Moving.anim @@ -17,26 +17,62 @@ AnimationClip: m_PositionCurves: [] m_ScaleCurves: [] m_FloatCurves: [] - m_PPtrCurves: [] + m_PPtrCurves: + - curve: + - time: 0 + value: {fileID: -459294537, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - time: 0.06666667 + value: {fileID: -932836783, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - time: 0.13333334 + value: {fileID: 2098029280, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - time: 0.2 + value: {fileID: -948577929, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - time: 0.26666668 + value: {fileID: -1063589079, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - time: 0.33333334 + value: {fileID: -1106049903, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - time: 0.41666666 + value: {fileID: -1787249033, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - time: 0.5 + value: {fileID: -1687654213, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + attribute: m_Sprite + path: + classID: 212 + script: {fileID: 0} m_SampleRate: 60 m_WrapMode: 0 m_Bounds: m_Center: {x: 0, y: 0, z: 0} m_Extent: {x: 0, y: 0, z: 0} m_ClipBindingConstant: - genericBindings: [] - pptrCurveMapping: [] + genericBindings: + - serializedVersion: 2 + path: 0 + attribute: 0 + script: {fileID: 0} + typeID: 212 + customType: 23 + isPPtrCurve: 1 + pptrCurveMapping: + - {fileID: -459294537, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - {fileID: -932836783, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - {fileID: 2098029280, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - {fileID: -948577929, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - {fileID: -1063589079, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - {fileID: -1106049903, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - {fileID: -1787249033, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} + - {fileID: -1687654213, guid: 5b8b5784d85f20e4db4cd6c05e225e16, type: 3} m_AnimationClipSettings: serializedVersion: 2 m_AdditiveReferencePoseClip: {fileID: 0} m_AdditiveReferencePoseTime: 0 m_StartTime: 0 - m_StopTime: 1 + m_StopTime: 0.51666665 m_OrientationOffsetY: 0 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/Animations/Enemies/Zombie/Zombie.controller b/Assets/Animations/Enemies/Zombie/Zombie.controller index 3f9455b..7cc8d1f 100644 --- a/Assets/Animations/Enemies/Zombie/Zombie.controller +++ b/Assets/Animations/Enemies/Zombie/Zombie.controller @@ -1,53 +1,32 @@ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: ---- !u!1101 &-8731865481558821802 -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: -6089190274217570171} - m_Solo: 0 - m_Mute: 0 - m_IsExit: 0 - serializedVersion: 3 - m_TransitionDuration: 0.25 - m_TransitionOffset: 0 - m_ExitTime: 0.75 - m_HasExitTime: 1 - m_HasFixedDuration: 1 - m_InterruptionSource: 0 - m_OrderedInterruption: 1 - m_CanTransitionToSelf: 1 ---- !u!1107 &-6204006212838014119 -AnimatorStateMachine: +--- !u!1102 &-2461426347161001773 +AnimatorState: serializedVersion: 6 m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_Name: Base Layer - m_ChildStates: - - serializedVersion: 1 - m_State: {fileID: 8969007887231168511} - m_Position: {x: 320, y: 130, z: 0} - - serializedVersion: 1 - m_State: {fileID: -6089190274217570171} - m_Position: {x: 320, y: 10, z: 0} - m_ChildStateMachines: [] - m_AnyStateTransitions: [] - m_EntryTransitions: [] - m_StateMachineTransitions: {} + m_Name: Attack + m_Speed: 1 + m_CycleOffset: 0 + m_Transitions: [] m_StateMachineBehaviours: [] - m_AnyStatePosition: {x: 50, y: 20, z: 0} - m_EntryPosition: {x: 50, y: 120, z: 0} - m_ExitPosition: {x: 800, y: 120, z: 0} - m_ParentStateMachinePosition: {x: 800, y: 20, z: 0} - m_DefaultState: {fileID: 8969007887231168511} ---- !u!1102 &-6089190274217570171 + 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: 46751831936f6464b867e572e5529105, type: 2} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: +--- !u!1102 &-1887222890965656619 AnimatorState: serializedVersion: 6 m_ObjectHideFlags: 1 @@ -58,7 +37,7 @@ AnimatorState: m_Speed: 1 m_CycleOffset: 0 m_Transitions: - - {fileID: 8139433511157601217} + - {fileID: 9190035719620373905} m_StateMachineBehaviours: [] m_Position: {x: 50, y: 50, z: 0} m_IKOnFeet: 0 @@ -68,7 +47,7 @@ AnimatorState: m_MirrorParameterActive: 0 m_CycleOffsetParameterActive: 0 m_TimeParameterActive: 0 - m_Motion: {fileID: 0} + m_Motion: {fileID: 7400000, guid: 1c65a4008d81eec4fa1a98d6a2218261, type: 2} m_Tag: m_SpeedParameter: m_MirrorParameter: @@ -92,7 +71,7 @@ AnimatorController: m_AnimatorLayers: - serializedVersion: 5 m_Name: Base Layer - m_StateMachine: {fileID: -6204006212838014119} + m_StateMachine: {fileID: 1063358119497531979} m_Mask: {fileID: 0} m_Motions: [] m_Behaviours: [] @@ -102,29 +81,60 @@ AnimatorController: m_IKPass: 0 m_SyncedLayerAffectsTiming: 0 m_Controller: {fileID: 9100000} ---- !u!1101 &8139433511157601217 +--- !u!1107 &1063358119497531979 +AnimatorStateMachine: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Base Layer + m_ChildStates: + - serializedVersion: 1 + m_State: {fileID: -2461426347161001773} + m_Position: {x: 290, y: -30, z: 0} + - serializedVersion: 1 + m_State: {fileID: 5416144975737678020} + m_Position: {x: 320, y: 120, z: 0} + - serializedVersion: 1 + m_State: {fileID: -1887222890965656619} + m_Position: {x: 440, y: 270, z: 0} + m_ChildStateMachines: [] + m_AnyStateTransitions: [] + m_EntryTransitions: [] + m_StateMachineTransitions: {} + m_StateMachineBehaviours: [] + m_AnyStatePosition: {x: 40, y: -30, z: 0} + m_EntryPosition: {x: 90, y: 80, z: 0} + m_ExitPosition: {x: 800, y: 120, z: 0} + m_ParentStateMachinePosition: {x: 800, y: 20, z: 0} + m_DefaultState: {fileID: 5416144975737678020} +--- !u!1101 &3411777108285681989 AnimatorStateTransition: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_Name: - m_Conditions: [] + m_Conditions: + - m_ConditionMode: 1 + m_ConditionEvent: moving + m_EventTreshold: 0 m_DstStateMachine: {fileID: 0} - m_DstState: {fileID: 8969007887231168511} + m_DstState: {fileID: -1887222890965656619} m_Solo: 0 m_Mute: 0 m_IsExit: 0 serializedVersion: 3 m_TransitionDuration: 0.25 m_TransitionOffset: 0 - m_ExitTime: 0.75 - m_HasExitTime: 1 + m_ExitTime: 0.64285713 + m_HasExitTime: 0 m_HasFixedDuration: 1 m_InterruptionSource: 0 m_OrderedInterruption: 1 m_CanTransitionToSelf: 1 ---- !u!1102 &8969007887231168511 +--- !u!1102 &5416144975737678020 AnimatorState: serializedVersion: 6 m_ObjectHideFlags: 1 @@ -135,7 +145,7 @@ AnimatorState: m_Speed: 1 m_CycleOffset: 0 m_Transitions: - - {fileID: -8731865481558821802} + - {fileID: 3411777108285681989} m_StateMachineBehaviours: [] m_Position: {x: 50, y: 50, z: 0} m_IKOnFeet: 0 @@ -151,3 +161,28 @@ AnimatorState: m_MirrorParameter: m_CycleOffsetParameter: m_TimeParameter: +--- !u!1101 &9190035719620373905 +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: moving + m_EventTreshold: 0 + m_DstStateMachine: {fileID: 0} + m_DstState: {fileID: 5416144975737678020} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 3 + m_TransitionDuration: 0.25 + m_TransitionOffset: 0 + m_ExitTime: 0.54545456 + m_HasExitTime: 1 + m_HasFixedDuration: 1 + m_InterruptionSource: 0 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 diff --git a/Assets/Animations/MontanaJohns/MontanaJohns.controller b/Assets/Animations/MontanaJohns/MontanaJohns.controller index 46d4d12..c295976 100644 --- a/Assets/Animations/MontanaJohns/MontanaJohns.controller +++ b/Assets/Animations/MontanaJohns/MontanaJohns.controller @@ -220,25 +220,25 @@ AnimatorController: m_DefaultFloat: 0 m_DefaultInt: 0 m_DefaultBool: 0 - m_Controller: {fileID: 9100000} + m_Controller: {fileID: 0} - m_Name: jump m_Type: 9 m_DefaultFloat: 0 m_DefaultInt: 0 m_DefaultBool: 0 - m_Controller: {fileID: 9100000} + m_Controller: {fileID: 0} - m_Name: fall m_Type: 9 m_DefaultFloat: 0 m_DefaultInt: 0 m_DefaultBool: 0 - m_Controller: {fileID: 9100000} + m_Controller: {fileID: 0} - m_Name: airborn m_Type: 4 m_DefaultFloat: 0 m_DefaultInt: 0 m_DefaultBool: 0 - m_Controller: {fileID: 9100000} + m_Controller: {fileID: 0} m_AnimatorLayers: - serializedVersion: 5 m_Name: Base Layer diff --git a/Assets/Prefabs/Projectile.prefab b/Assets/Prefabs/Projectile.prefab index 2069524..659aca8 100644 --- a/Assets/Prefabs/Projectile.prefab +++ b/Assets/Prefabs/Projectile.prefab @@ -118,7 +118,7 @@ BoxCollider2D: m_Enabled: 1 m_Density: 1 m_Material: {fileID: 0} - m_IsTrigger: 1 + m_IsTrigger: 0 m_UsedByEffector: 0 m_UsedByComposite: 0 m_Offset: {x: 0, y: 0} diff --git a/Assets/Scenes/Jungle.unity b/Assets/Scenes/Jungle.unity index a699f61..d385757 100644 --- a/Assets/Scenes/Jungle.unity +++ b/Assets/Scenes/Jungle.unity @@ -325005,6 +325005,10 @@ PrefabInstance: m_Modification: m_TransformParent: {fileID: 0} m_Modifications: + - target: {fileID: -849362167687110816, guid: be3f47d037eef1240b8271b5e1da25ba, type: 3} + propertyPath: m_IsTrigger + value: 0 + objectReference: {fileID: 0} - target: {fileID: 199732719703436395, guid: be3f47d037eef1240b8271b5e1da25ba, type: 3} propertyPath: m_RootOrder value: 9 @@ -325385,6 +325389,30 @@ PrefabInstance: propertyPath: hearts.Array.data[2] value: objectReference: {fileID: 2019698001} + - target: {fileID: 2776418409812533937, guid: b2169aaeb9a0e4542b1fb9d601bcc4b2, type: 3} + propertyPath: m_LocalScale.x + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2776418409812533937, guid: b2169aaeb9a0e4542b1fb9d601bcc4b2, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2776418409812533937, guid: b2169aaeb9a0e4542b1fb9d601bcc4b2, type: 3} + propertyPath: m_LocalRotation.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2776418409812533937, guid: b2169aaeb9a0e4542b1fb9d601bcc4b2, type: 3} + propertyPath: m_LocalRotation.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2776418409812533937, guid: b2169aaeb9a0e4542b1fb9d601bcc4b2, type: 3} + propertyPath: m_LocalRotation.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2776418409812533937, guid: b2169aaeb9a0e4542b1fb9d601bcc4b2, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} - target: {fileID: 2776418409999972307, guid: b2169aaeb9a0e4542b1fb9d601bcc4b2, type: 3} propertyPath: m_RootOrder value: 4 diff --git a/Assets/Scripts/Actors/Enemy.cs b/Assets/Scripts/Actors/Enemy.cs index 8e4ce1b..6862298 100644 --- a/Assets/Scripts/Actors/Enemy.cs +++ b/Assets/Scripts/Actors/Enemy.cs @@ -18,6 +18,18 @@ namespace MontanaJohns.Actors { if (player.transform.position.x < transform.position.x) Move(-stats.speedMultiplier * 0.5f); else Move(stats.speedMultiplier * 0.5f); + + if (health <= 0) Destroy(gameObject); + } + + private void OnCollisionEnter2D(Collision2D other) + { + if (other.gameObject.tag == "Projectile") + { + Debug.Log("Enemy: Hit by projectile"); + TakeDamage(1); + Destroy(other.gameObject); + } } } } diff --git a/Assets/Scripts/Projectile.cs b/Assets/Scripts/Projectile.cs index 5331264..7692917 100644 --- a/Assets/Scripts/Projectile.cs +++ b/Assets/Scripts/Projectile.cs @@ -1,6 +1,7 @@ using System.Collections; using System.Collections.Generic; using UnityEngine; +using MontanaJohns.Actors; public class Projectile : MonoBehaviour { @@ -13,14 +14,8 @@ public class Projectile : MonoBehaviour rb.velocity = transform.right * speed; } - private void OnTriggerEnter2D(Collider2D collision) + private void OnCollisionEnter2D(Collision2D collision) { - Debug.Log(collision.name); Destroy(gameObject); - - if (collision.tag == "Enemy") - { - Destroy(collision.gameObject); - } } } -- cgit v1.2.3-70-g09d2 From e01302a15cf68869088a73e561ac672d70b501a7 Mon Sep 17 00:00:00 2001 From: cross28 Date: Fri, 15 Apr 2022 06:08:15 -0500 Subject: feat: finished zombie attack animation and functionality --- Assets/Animations/Enemies/Zombie/Attack.anim | 2 +- Assets/Animations/Enemies/Zombie/Zombie.controller | 73 ++++++++++++++++++++-- Assets/Scenes/Jungle.unity | 16 +++-- Assets/Scripts/Actors/Enemy.cs | 24 ++++++- 4 files changed, 103 insertions(+), 12 deletions(-) (limited to 'Assets/Animations/Enemies/Zombie') diff --git a/Assets/Animations/Enemies/Zombie/Attack.anim b/Assets/Animations/Enemies/Zombie/Attack.anim index 43658a5..33cb5f7 100644 --- a/Assets/Animations/Enemies/Zombie/Attack.anim +++ b/Assets/Animations/Enemies/Zombie/Attack.anim @@ -69,7 +69,7 @@ AnimationClip: m_Level: 0 m_CycleOffset: 0 m_HasAdditiveReferencePose: 0 - m_LoopTime: 1 + m_LoopTime: 0 m_LoopBlend: 0 m_LoopBlendOrientation: 0 m_LoopBlendPositionY: 0 diff --git a/Assets/Animations/Enemies/Zombie/Zombie.controller b/Assets/Animations/Enemies/Zombie/Zombie.controller index 7cc8d1f..d7c2a97 100644 --- a/Assets/Animations/Enemies/Zombie/Zombie.controller +++ b/Assets/Animations/Enemies/Zombie/Zombie.controller @@ -1,5 +1,27 @@ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: +--- !u!1101 &-8824451288058899808 +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: 5416144975737678020} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 3 + m_TransitionDuration: 0.25 + m_TransitionOffset: 0 + m_ExitTime: 0.25 + m_HasExitTime: 1 + m_HasFixedDuration: 1 + m_InterruptionSource: 0 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 --- !u!1102 &-2461426347161001773 AnimatorState: serializedVersion: 6 @@ -8,9 +30,10 @@ AnimatorState: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_Name: Attack - m_Speed: 1 + m_Speed: 0.5 m_CycleOffset: 0 - m_Transitions: [] + m_Transitions: + - {fileID: -8824451288058899808} m_StateMachineBehaviours: [] m_Position: {x: 50, y: 50, z: 0} m_IKOnFeet: 0 @@ -67,7 +90,19 @@ AnimatorController: m_DefaultFloat: 0 m_DefaultInt: 0 m_DefaultBool: 0 - m_Controller: {fileID: 0} + m_Controller: {fileID: 9100000} + - m_Name: attack + m_Type: 9 + m_DefaultFloat: 0 + m_DefaultInt: 0 + m_DefaultBool: 0 + m_Controller: {fileID: 9100000} + - m_Name: airborn + m_Type: 4 + m_DefaultFloat: 0 + m_DefaultInt: 0 + m_DefaultBool: 0 + m_Controller: {fileID: 9100000} m_AnimatorLayers: - serializedVersion: 5 m_Name: Base Layer @@ -92,7 +127,7 @@ AnimatorStateMachine: m_ChildStates: - serializedVersion: 1 m_State: {fileID: -2461426347161001773} - m_Position: {x: 290, y: -30, z: 0} + m_Position: {x: 470, y: 10, z: 0} - serializedVersion: 1 m_State: {fileID: 5416144975737678020} m_Position: {x: 320, y: 120, z: 0} @@ -100,11 +135,12 @@ AnimatorStateMachine: m_State: {fileID: -1887222890965656619} m_Position: {x: 440, y: 270, z: 0} m_ChildStateMachines: [] - m_AnyStateTransitions: [] + m_AnyStateTransitions: + - {fileID: 5673627202155167741} m_EntryTransitions: [] m_StateMachineTransitions: {} m_StateMachineBehaviours: [] - m_AnyStatePosition: {x: 40, y: -30, z: 0} + m_AnyStatePosition: {x: 140, y: -10, z: 0} m_EntryPosition: {x: 90, y: 80, z: 0} m_ExitPosition: {x: 800, y: 120, z: 0} m_ParentStateMachinePosition: {x: 800, y: 20, z: 0} @@ -161,6 +197,31 @@ AnimatorState: m_MirrorParameter: m_CycleOffsetParameter: m_TimeParameter: +--- !u!1101 &5673627202155167741 +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: attack + m_EventTreshold: 0 + m_DstStateMachine: {fileID: 0} + m_DstState: {fileID: -2461426347161001773} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 3 + m_TransitionDuration: 0.25 + m_TransitionOffset: 0 + m_ExitTime: 0.75 + m_HasExitTime: 0 + m_HasFixedDuration: 1 + m_InterruptionSource: 0 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 --- !u!1101 &9190035719620373905 AnimatorStateTransition: m_ObjectHideFlags: 1 diff --git a/Assets/Scenes/Jungle.unity b/Assets/Scenes/Jungle.unity index d385757..8cf717f 100644 --- a/Assets/Scenes/Jungle.unity +++ b/Assets/Scenes/Jungle.unity @@ -325005,10 +325005,6 @@ PrefabInstance: m_Modification: m_TransformParent: {fileID: 0} m_Modifications: - - target: {fileID: -849362167687110816, guid: be3f47d037eef1240b8271b5e1da25ba, type: 3} - propertyPath: m_IsTrigger - value: 0 - objectReference: {fileID: 0} - target: {fileID: 199732719703436395, guid: be3f47d037eef1240b8271b5e1da25ba, type: 3} propertyPath: m_RootOrder value: 9 @@ -325053,6 +325049,18 @@ PrefabInstance: propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} + - target: {fileID: 514569869678374215, guid: be3f47d037eef1240b8271b5e1da25ba, type: 3} + propertyPath: m_Size.x + value: 1.198549 + objectReference: {fileID: 0} + - target: {fileID: 514569869678374215, guid: be3f47d037eef1240b8271b5e1da25ba, type: 3} + propertyPath: m_Enabled + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 514569869678374215, guid: be3f47d037eef1240b8271b5e1da25ba, type: 3} + propertyPath: m_Offset.x + value: -0.030214876 + objectReference: {fileID: 0} - target: {fileID: 4799600927363337844, guid: be3f47d037eef1240b8271b5e1da25ba, type: 3} propertyPath: m_Name value: Zombie diff --git a/Assets/Scripts/Actors/Enemy.cs b/Assets/Scripts/Actors/Enemy.cs index 6862298..3db479f 100644 --- a/Assets/Scripts/Actors/Enemy.cs +++ b/Assets/Scripts/Actors/Enemy.cs @@ -1,11 +1,14 @@ using UnityEngine; +using System.Collections; namespace MontanaJohns.Actors { [RequireComponent(typeof(Rigidbody2D))] public class Enemy : Actor { - GameObject player; + protected GameObject player; + protected float attackRate = 0.5f; + protected float nextAttackTime = 0f; protected override void Awake() { @@ -15,13 +18,32 @@ namespace MontanaJohns.Actors // Update is called once per frame void Update() + { + MoveTowardsPlayer(); + Attack(); + CheckHealth(); + } + + void MoveTowardsPlayer() { if (player.transform.position.x < transform.position.x) Move(-stats.speedMultiplier * 0.5f); else Move(stats.speedMultiplier * 0.5f); + } + void CheckHealth() + { if (health <= 0) Destroy(gameObject); } + void Attack() + { + if (Mathf.Abs(player.transform.position.x - transform.position.x) <= 3 && Time.time >= nextAttackTime) { + _animator.SetTrigger("attack"); + player.GetComponent().TakeDamage(1); + nextAttackTime = Time.time + 1f / attackRate; + } + } + private void OnCollisionEnter2D(Collision2D other) { if (other.gameObject.tag == "Projectile") -- cgit v1.2.3-70-g09d2