diff --git a/Unity-Files/Assets/Examples/Defender/Enemy Ship.prefab b/Unity-Files/Assets/Examples/Defender/Enemy Ship.prefab index d1c0190..f675037 100644 --- a/Unity-Files/Assets/Examples/Defender/Enemy Ship.prefab +++ b/Unity-Files/Assets/Examples/Defender/Enemy Ship.prefab @@ -176,6 +176,10 @@ MonoBehaviour: rigidbody2D: {fileID: 0} normalSpeed: 5 returnSpeed: 5 + droppedObject: {fileID: 2252406525984333962, guid: a445f9af9bec11a4e89494c4031e6162, + type: 3} + deathEffect: {fileID: 1496494696399852, guid: e61802031429a4e2e8f547dbca07fe84, + type: 3} --- !u!114 &114000011533140650 MonoBehaviour: m_ObjectHideFlags: 0 diff --git a/Unity-Files/Assets/Examples/Defender/Pastie.prefab b/Unity-Files/Assets/Examples/Defender/Pastie.prefab index 4c37ca9..aba68b0 100644 --- a/Unity-Files/Assets/Examples/Defender/Pastie.prefab +++ b/Unity-Files/Assets/Examples/Defender/Pastie.prefab @@ -11,6 +11,7 @@ GameObject: - component: {fileID: 3590677777586087654} - component: {fileID: 1762312007996219834} - component: {fileID: 9035969042858155278} + - component: {fileID: 2612555762601387375} - component: {fileID: 885697997895152444} m_Layer: 0 m_Name: Pastie @@ -28,7 +29,7 @@ Transform: m_GameObject: {fileID: 2252406525984333962} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} + m_LocalScale: {x: 2, y: 2, z: 1} m_Children: - {fileID: 4878835270198494247} m_Father: {fileID: 0} @@ -111,6 +112,19 @@ BoxCollider2D: serializedVersion: 2 m_Size: {x: 0.29, y: 0.14} m_EdgeRadius: 0 +--- !u!114 &2612555762601387375 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2252406525984333962} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 2d5bb11f68e548f4b8699da51f5e5982, type: 3} + m_Name: + m_EditorClassIdentifier: + timeToDestruction: 10 --- !u!210 &885697997895152444 SortingGroup: m_ObjectHideFlags: 0 @@ -121,7 +135,7 @@ SortingGroup: m_Enabled: 1 m_SortingLayerID: 0 m_SortingLayer: 0 - m_SortingOrder: 0 + m_SortingOrder: -6 --- !u!1 &8759752071964469198 GameObject: m_ObjectHideFlags: 0 @@ -203,7 +217,7 @@ TextMesh: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8759752071964469198} - m_Text: 5 + m_Text: m_OffsetZ: 0 m_CharacterSize: 0.05 m_LineSpacing: 1 diff --git a/Unity-Files/Assets/Scripts/Gameplay/TimedSelfDestructWithTimer.cs.meta b/Unity-Files/Assets/Scripts/Gameplay/TimedSelfDestructWithTimerOrShootToReturn.cs.meta similarity index 83% rename from Unity-Files/Assets/Scripts/Gameplay/TimedSelfDestructWithTimer.cs.meta rename to Unity-Files/Assets/Scripts/Gameplay/TimedSelfDestructWithTimerOrShootToReturn.cs.meta index fb6e91b..7ff6e44 100644 --- a/Unity-Files/Assets/Scripts/Gameplay/TimedSelfDestructWithTimer.cs.meta +++ b/Unity-Files/Assets/Scripts/Gameplay/TimedSelfDestructWithTimerOrShootToReturn.cs.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: 7fb007fc909a54d4e9f2700296b8898d +guid: 2d5bb11f68e548f4b8699da51f5e5982 MonoImporter: externalObjects: {} serializedVersion: 2 diff --git a/Unity-Files/Assets/Scripts/Movement/EnemyReturn.cs b/Unity-Files/Assets/Scripts/Movement/EnemyReturn.cs index 6b4e1d4..d813cd1 100644 --- a/Unity-Files/Assets/Scripts/Movement/EnemyReturn.cs +++ b/Unity-Files/Assets/Scripts/Movement/EnemyReturn.cs @@ -10,6 +10,10 @@ public class EnemyReturn : Physics2DObject public float normalSpeed = 5f; [Tooltip("The amount of speed in which the boat moves away from the castle")] public float returnSpeed = 5f; + [Header("Dropped Object")] + public GameObject droppedObject; + [Header("Death Effect When Shot")] + public GameObject deathEffect; private bool isReturning = false; private Vector2 movement = new Vector2(0f, 0f); @@ -43,14 +47,28 @@ public class EnemyReturn : Physics2DObject string playerTag = otherCollider.gameObject.tag; if (playerTag == "Player" || playerTag == "Player2") { - HealthSystemAttribute healthScript = otherCollider.gameObject.GetComponent(); - if (healthScript != null) - { - // subtract health from the player - healthScript.ModifyHealth(-1); - } + // HealthSystemAttribute healthScript = otherCollider.gameObject.GetComponent(); + // if (healthScript != null) + // { + // // subtract health from the player + // healthScript.ModifyHealth(-1); + // } this.GetComponent().flipY = false; isReturning = true; } + else if (playerTag == "Bullet") + { + if (deathEffect != null) + { + GameObject newDeathEffect = Instantiate(deathEffect); + newDeathEffect.transform.position = this.transform.position; + } + float randomX = Random.Range(0, 1); + float randomY = Random.Range(0, 1); + GameObject newDroppedObject = Instantiate(droppedObject); + newDroppedObject.transform.position = new Vector2(randomX + this.transform.position.x, randomY + this.transform.position.y); + + Destroy(gameObject); + } } }