diff --git a/Assets/Animations/Falling Platform Default.anim b/Assets/Animations/Falling Platform Default.anim new file mode 100644 index 0000000..a280ddc --- /dev/null +++ b/Assets/Animations/Falling Platform Default.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: Falling Platform Default + serializedVersion: 7 + m_Legacy: 0 + m_Compressed: 0 + m_UseHighQualityCurve: 1 + m_RotationCurves: [] + m_CompressedRotationCurves: [] + m_EulerCurves: [] + m_PositionCurves: [] + m_ScaleCurves: [] + m_FloatCurves: [] + m_PPtrCurves: [] + m_SampleRate: 60 + m_WrapMode: 0 + m_Bounds: + m_Center: {x: 0, y: 0, z: 0} + m_Extent: {x: 0, y: 0, z: 0} + m_ClipBindingConstant: + genericBindings: [] + pptrCurveMapping: [] + m_AnimationClipSettings: + serializedVersion: 2 + m_AdditiveReferencePoseClip: {fileID: 0} + m_AdditiveReferencePoseTime: 0 + m_StartTime: 0 + m_StopTime: 1 + m_OrientationOffsetY: 0 + m_Level: 0 + m_CycleOffset: 0 + m_HasAdditiveReferencePose: 0 + m_LoopTime: 1 + m_LoopBlend: 0 + m_LoopBlendOrientation: 0 + m_LoopBlendPositionY: 0 + m_LoopBlendPositionXZ: 0 + m_KeepOriginalOrientation: 0 + m_KeepOriginalPositionY: 1 + m_KeepOriginalPositionXZ: 0 + m_HeightFromFeet: 0 + m_Mirror: 0 + m_EditorCurves: [] + m_EulerEditorCurves: [] + m_HasGenericRootTransform: 0 + m_HasMotionFloatCurves: 0 + m_Events: [] diff --git a/Assets/Animations/Falling Platform Default.anim.meta b/Assets/Animations/Falling Platform Default.anim.meta new file mode 100644 index 0000000..0f16308 --- /dev/null +++ b/Assets/Animations/Falling Platform Default.anim.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 17ba966a4160c084ab24ca9af7f96e75 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 7400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Animations/Falling Platform Respawn.anim b/Assets/Animations/Falling Platform Respawn.anim new file mode 100644 index 0000000..d23e12c --- /dev/null +++ b/Assets/Animations/Falling Platform Respawn.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: Falling Platform Respawn + serializedVersion: 7 + m_Legacy: 0 + m_Compressed: 0 + m_UseHighQualityCurve: 1 + m_RotationCurves: [] + m_CompressedRotationCurves: [] + m_EulerCurves: [] + m_PositionCurves: [] + m_ScaleCurves: [] + m_FloatCurves: [] + m_PPtrCurves: [] + m_SampleRate: 60 + m_WrapMode: 0 + m_Bounds: + m_Center: {x: 0, y: 0, z: 0} + m_Extent: {x: 0, y: 0, z: 0} + m_ClipBindingConstant: + genericBindings: [] + pptrCurveMapping: [] + m_AnimationClipSettings: + serializedVersion: 2 + m_AdditiveReferencePoseClip: {fileID: 0} + m_AdditiveReferencePoseTime: 0 + m_StartTime: 0 + m_StopTime: 1 + m_OrientationOffsetY: 0 + m_Level: 0 + m_CycleOffset: 0 + m_HasAdditiveReferencePose: 0 + m_LoopTime: 1 + m_LoopBlend: 0 + m_LoopBlendOrientation: 0 + m_LoopBlendPositionY: 0 + m_LoopBlendPositionXZ: 0 + m_KeepOriginalOrientation: 0 + m_KeepOriginalPositionY: 1 + m_KeepOriginalPositionXZ: 0 + m_HeightFromFeet: 0 + m_Mirror: 0 + m_EditorCurves: [] + m_EulerEditorCurves: [] + m_HasGenericRootTransform: 0 + m_HasMotionFloatCurves: 0 + m_Events: [] diff --git a/Assets/Animations/Falling Platform Respawn.anim.meta b/Assets/Animations/Falling Platform Respawn.anim.meta new file mode 100644 index 0000000..6fcc8e1 --- /dev/null +++ b/Assets/Animations/Falling Platform Respawn.anim.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 7b5b786414379814194fad3f02df842b +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 7400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Animations/Falling Platform.controller b/Assets/Animations/Falling Platform.controller new file mode 100644 index 0000000..5491166 --- /dev/null +++ b/Assets/Animations/Falling Platform.controller @@ -0,0 +1,12 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!91 &9100000 +AnimatorController: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Falling Platform + serializedVersion: 5 + m_AnimatorParameters: [] + m_AnimatorLayers: [] diff --git a/Assets/Animations/Falling Platform.controller.meta b/Assets/Animations/Falling Platform.controller.meta new file mode 100644 index 0000000..e14b5f3 --- /dev/null +++ b/Assets/Animations/Falling Platform.controller.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 50a2075cc9e6e114ebefcdec52152a76 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 9100000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Prefabs/Falling Platform.prefab b/Assets/Prefabs/Falling Platform.prefab index 26baf10..60cbda8 100644 --- a/Assets/Prefabs/Falling Platform.prefab +++ b/Assets/Prefabs/Falling Platform.prefab @@ -13,6 +13,7 @@ GameObject: - component: {fileID: 8854999324873450215} - component: {fileID: 2969848973824835786} - component: {fileID: 3624532704509464281} + - component: {fileID: 733246688550133770} m_Layer: 6 m_Name: Falling Platform m_TagString: Untagged @@ -183,6 +184,28 @@ PlatformEffector2D: m_UseSideFriction: 0 m_UseSideBounce: 0 m_SideArc: 1 +--- !u!95 &733246688550133770 +Animator: + serializedVersion: 7 + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6077104818453282975} + m_Enabled: 1 + m_Avatar: {fileID: 0} + m_Controller: {fileID: 9100000, guid: 50a2075cc9e6e114ebefcdec52152a76, type: 2} + m_CullingMode: 0 + m_UpdateMode: 0 + m_ApplyRootMotion: 0 + m_LinearVelocityBlending: 0 + m_StabilizeFeet: 0 + m_AnimatePhysics: 0 + m_WarningMessage: + m_HasTransformHierarchy: 1 + m_AllowConstantClipSamplingOptimization: 1 + m_KeepAnimatorStateOnDisable: 0 + m_WriteDefaultValuesOnDisable: 0 --- !u!1 &6715277133551784282 GameObject: m_ObjectHideFlags: 0 @@ -275,4 +298,4 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: fallDelay: 0.2 - destroyDelay: 10 + resetDelay: 4 diff --git a/Assets/Scripts/FallPlatform.cs b/Assets/Scripts/FallPlatform.cs index f21553f..4e0a67f 100644 --- a/Assets/Scripts/FallPlatform.cs +++ b/Assets/Scripts/FallPlatform.cs @@ -8,13 +8,12 @@ public class FallPlatform : MonoBehaviour bool falling; Rigidbody2D rb; - //Vector3 defposition; + Vector3 defposition; void Start() { - //defposition = transform.position; + defposition = transform.parent.position; rb = transform.parent.GetComponent(); - } private void OnTriggerEnter2D(Collider2D collision) { @@ -30,14 +29,18 @@ public class FallPlatform : MonoBehaviour yield return new WaitForSeconds(fallDelay); rb.bodyType = RigidbodyType2D.Dynamic; yield return new WaitForSeconds(resetDelay); - //Respawn(); + transform.parent.GetComponent().SetTrigger("respawn"); + yield return new WaitForSeconds(0.5f); + Respawn(); } //only resets the object script is attached to, need to fix so platform will reset with fall trigger object - //private void Respawn() - //{ - //falling = false; - //rb.bodyType = RigidbodyType2D.Static; - //transform.position = defposition; - //} + // Use transform.parent to get the object it's attatched to + private void Respawn() + { + falling = false; + rb.bodyType = RigidbodyType2D.Static; + transform.parent.position = defposition; + transform.parent.rotation = Quaternion.identity; + } }