Added Enemy Return Script Functionality
This commit is contained in:
parent
5394ae8f79
commit
914070f0f3
127
Unity-Files/Assets/Examples/Defender/Enemy Ship.prefab
generated
127
Unity-Files/Assets/Examples/Defender/Enemy Ship.prefab
generated
@ -11,11 +11,10 @@ GameObject:
|
|||||||
- component: {fileID: 416926}
|
- component: {fileID: 416926}
|
||||||
- component: {fileID: 21256868}
|
- component: {fileID: 21256868}
|
||||||
- component: {fileID: 5058630}
|
- component: {fileID: 5058630}
|
||||||
- component: {fileID: 114000011533140650}
|
|
||||||
- component: {fileID: 114000012881949288}
|
|
||||||
- component: {fileID: 11441764}
|
|
||||||
- component: {fileID: 114000012184921828}
|
|
||||||
- component: {fileID: 4441117583140911826}
|
- component: {fileID: 4441117583140911826}
|
||||||
|
- component: {fileID: -2225950841401146330}
|
||||||
|
- component: {fileID: 114000011533140650}
|
||||||
|
- component: {fileID: 114000012184921828}
|
||||||
- component: {fileID: -7020474658778450613}
|
- component: {fileID: -7020474658778450613}
|
||||||
m_Layer: 0
|
m_Layer: 0
|
||||||
m_Name: Enemy Ship
|
m_Name: Enemy Ship
|
||||||
@ -81,7 +80,7 @@ SpriteRenderer:
|
|||||||
m_Sprite: {fileID: 21300000, guid: d3e5ee0eb24b6d84ea3c1965e4cbefdb, type: 3}
|
m_Sprite: {fileID: 21300000, guid: d3e5ee0eb24b6d84ea3c1965e4cbefdb, type: 3}
|
||||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||||
m_FlipX: 0
|
m_FlipX: 0
|
||||||
m_FlipY: 0
|
m_FlipY: 1
|
||||||
m_DrawMode: 0
|
m_DrawMode: 0
|
||||||
m_Size: {x: 1, y: 1}
|
m_Size: {x: 1, y: 1}
|
||||||
m_AdaptiveModeThreshold: 0.5
|
m_AdaptiveModeThreshold: 0.5
|
||||||
@ -101,78 +100,15 @@ Rigidbody2D:
|
|||||||
m_Simulated: 1
|
m_Simulated: 1
|
||||||
m_UseFullKinematicContacts: 0
|
m_UseFullKinematicContacts: 0
|
||||||
m_UseAutoMass: 1
|
m_UseAutoMass: 1
|
||||||
m_Mass: 1.0318747
|
m_Mass: 1
|
||||||
m_LinearDrag: 4
|
m_LinearDrag: 4
|
||||||
m_AngularDrag: 0.05
|
m_AngularDrag: 0.05
|
||||||
m_GravityScale: 1
|
m_GravityScale: 0
|
||||||
m_Material: {fileID: 0}
|
m_Material: {fileID: 0}
|
||||||
m_Interpolate: 0
|
m_Interpolate: 0
|
||||||
m_SleepingMode: 1
|
m_SleepingMode: 1
|
||||||
m_CollisionDetection: 0
|
m_CollisionDetection: 0
|
||||||
m_Constraints: 0
|
m_Constraints: 0
|
||||||
--- !u!114 &114000011533140650
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 105984}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 0
|
|
||||||
m_Script: {fileID: 11500000, guid: bdab9334f9a2a4efe8c019b5d37595cd, type: 3}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
actions:
|
|
||||||
- {fileID: 114000012881949288}
|
|
||||||
useCustomActions: 0
|
|
||||||
customActions:
|
|
||||||
m_PersistentCalls:
|
|
||||||
m_Calls: []
|
|
||||||
happenOnlyOnce: 1
|
|
||||||
filterByTag: 0
|
|
||||||
filterTag: Player
|
|
||||||
--- !u!114 &114000012881949288
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 105984}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 0
|
|
||||||
m_Script: {fileID: 11500000, guid: be840ffee03ed4abe9b3dc9b48f9cae7, type: 3}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
target: 0
|
|
||||||
deathEffect: {fileID: 1496494696399852, guid: 61bb6781d7b9444e89d1fd6eef729832,
|
|
||||||
type: 3}
|
|
||||||
--- !u!114 &11441764
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 105984}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 0
|
|
||||||
m_Script: {fileID: 11500000, guid: 0fa3c260db47248a18ecb8112019040d, type: 3}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
destroyWhenActivated: 0
|
|
||||||
healthChange: -1
|
|
||||||
--- !u!114 &114000012184921828
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 105984}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 0
|
|
||||||
m_Script: {fileID: 11500000, guid: b9c4adaf25c56477b836b81ad48e3bdb, type: 3}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
pointsWorth: 1
|
|
||||||
--- !u!60 &4441117583140911826
|
--- !u!60 &4441117583140911826
|
||||||
PolygonCollider2D:
|
PolygonCollider2D:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
@ -183,7 +119,7 @@ PolygonCollider2D:
|
|||||||
m_Enabled: 1
|
m_Enabled: 1
|
||||||
m_Density: 1
|
m_Density: 1
|
||||||
m_Material: {fileID: 0}
|
m_Material: {fileID: 0}
|
||||||
m_IsTrigger: 0
|
m_IsTrigger: 1
|
||||||
m_UsedByEffector: 0
|
m_UsedByEffector: 0
|
||||||
m_UsedByComposite: 0
|
m_UsedByComposite: 0
|
||||||
m_Offset: {x: 0, y: 0}
|
m_Offset: {x: 0, y: 0}
|
||||||
@ -225,6 +161,55 @@ PolygonCollider2D:
|
|||||||
- {x: -0.044999998, y: 0.42499998}
|
- {x: -0.044999998, y: 0.42499998}
|
||||||
- {x: -0.065, y: 0.375}
|
- {x: -0.065, y: 0.375}
|
||||||
- {x: -0.055, y: 0.375}
|
- {x: -0.055, y: 0.375}
|
||||||
|
--- !u!114 &-2225950841401146330
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 105984}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 1cf824a8218b19a4f843a9fa0642f548, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
rigidbody2D: {fileID: 0}
|
||||||
|
normalSpeed: 5
|
||||||
|
returnSpeed: 5
|
||||||
|
--- !u!114 &114000011533140650
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 105984}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: bdab9334f9a2a4efe8c019b5d37595cd, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
actions:
|
||||||
|
- {fileID: 0}
|
||||||
|
useCustomActions: 0
|
||||||
|
customActions:
|
||||||
|
m_PersistentCalls:
|
||||||
|
m_Calls: []
|
||||||
|
happenOnlyOnce: 1
|
||||||
|
filterByTag: 0
|
||||||
|
filterTag: Player
|
||||||
|
--- !u!114 &114000012184921828
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 105984}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: b9c4adaf25c56477b836b81ad48e3bdb, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
pointsWorth: 1
|
||||||
--- !u!210 &-7020474658778450613
|
--- !u!210 &-7020474658778450613
|
||||||
SortingGroup:
|
SortingGroup:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
|
@ -5,6 +5,15 @@ using UnityEngine;
|
|||||||
[RequireComponent(typeof(Rigidbody2D))]
|
[RequireComponent(typeof(Rigidbody2D))]
|
||||||
public class EnemyReturn : Physics2DObject
|
public class EnemyReturn : Physics2DObject
|
||||||
{
|
{
|
||||||
|
[Header("Movement Speed")]
|
||||||
|
[Tooltip("The amount of speed in which the boat moves towards the castle")]
|
||||||
|
public float normalSpeed = 5f;
|
||||||
|
[Tooltip("The amount of speed in which the boat moves away from the castle")]
|
||||||
|
public float returnSpeed = 5f;
|
||||||
|
|
||||||
|
private bool isReturning = false;
|
||||||
|
private Vector2 movement = new Vector2(0f, 0f);
|
||||||
|
|
||||||
// Start is called before the first frame update
|
// Start is called before the first frame update
|
||||||
void Start()
|
void Start()
|
||||||
{
|
{
|
||||||
@ -14,6 +23,34 @@ public class EnemyReturn : Physics2DObject
|
|||||||
// Update is called once per frame
|
// Update is called once per frame
|
||||||
void Update()
|
void Update()
|
||||||
{
|
{
|
||||||
|
if (isReturning)
|
||||||
|
{
|
||||||
|
movement = new Vector2(0f, returnSpeed);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
movement = new Vector2(0f, -normalSpeed);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//FixedUpdate is called every frame when the physics are calculated
|
||||||
|
void FixedUpdate()
|
||||||
|
{
|
||||||
|
rigidbody2D.AddForce(movement);
|
||||||
|
}
|
||||||
|
void OnTriggerEnter2D(Collider2D otherCollider)
|
||||||
|
{
|
||||||
|
string playerTag = otherCollider.gameObject.tag;
|
||||||
|
if (playerTag == "Player" || playerTag == "Player2")
|
||||||
|
{
|
||||||
|
HealthSystemAttribute healthScript = otherCollider.gameObject.GetComponent<HealthSystemAttribute>();
|
||||||
|
if (healthScript != null)
|
||||||
|
{
|
||||||
|
// subtract health from the player
|
||||||
|
healthScript.ModifyHealth(-1);
|
||||||
|
}
|
||||||
|
this.GetComponent<SpriteRenderer>().flipY = false;
|
||||||
|
isReturning = true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user