Files
CastleDefence/Assets/Scripts/Towers/Projectile.cs
2026-04-02 16:20:38 +01:00

39 lines
968 B
C#

using System;
using UnityEngine;
public class Projectile : MonoBehaviour
{
private Rigidbody theRB;
[SerializeField] private float moveSpeed;
[SerializeField] private float damageAmount;
[SerializeField] private GameObject impactEffect;
void Awake()
{
theRB = GetComponent<Rigidbody>();
}
// Start is called once before the first execution of Update after the MonoBehaviour is created
void Start()
{
theRB.linearVelocity = transform.forward * moveSpeed;
}
// Update is called once per frame
void Update()
{
}
void OnTriggerEnter(Collider other)
{
if(other.tag == "Enemy")
{
other.GetComponent<EnemyHealthController>().TakeDamage(damageAmount);
Instantiate(impactEffect, transform.position, transform.rotation);
Destroy(gameObject);
}
}
void OnBecameVisible()
{
Destroy(gameObject);
}
}