Ratbots deal damage to the player upon contact
This commit is contained in:
@@ -3,7 +3,10 @@ using UnityEngine;
|
||||
public class Ratbot : MonoBehaviour
|
||||
{
|
||||
public float moveSpeed;
|
||||
public float damageStrength;
|
||||
public float damageTimeoutSeconds;
|
||||
GameObject player;
|
||||
float lastDamageTime;
|
||||
// Start is called once before the first execution of Update after the MonoBehaviour is created
|
||||
void Start()
|
||||
{
|
||||
@@ -17,4 +20,11 @@ public class Ratbot : MonoBehaviour
|
||||
Vector2 direction = (player.transform.position - transform.position).normalized;
|
||||
controller.linearVelocity = direction*moveSpeed;
|
||||
}
|
||||
void OnCollisionStay2D(Collision2D collision) {
|
||||
// Deal damage when colliding with the player on a 0.5 second cooldown
|
||||
if (collision.gameObject.tag != "Player") return;
|
||||
if (lastDamageTime > Time.fixedTime-damageTimeoutSeconds) return;
|
||||
lastDamageTime = Time.fixedTime;
|
||||
collision.gameObject.GetComponent<Teo>().health -= damageStrength;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -15,7 +15,7 @@ GameObject:
|
||||
- component: {fileID: 3449798187735636588}
|
||||
m_Layer: 0
|
||||
m_Name: Ratbot
|
||||
m_TagString: Untagged
|
||||
m_TagString: Ratbot
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
@@ -103,6 +103,7 @@ MonoBehaviour:
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
moveSpeed: 9.3
|
||||
damageTimeoutSeconds: 0.5
|
||||
--- !u!61 &8441426735084966298
|
||||
BoxCollider2D:
|
||||
m_ObjectHideFlags: 0
|
||||
|
||||
Reference in New Issue
Block a user