Working on lession 29

This commit is contained in:
2026-04-02 16:20:38 +01:00
parent 72ae178fd1
commit 76dc783914
16735 changed files with 6083173 additions and 183 deletions

View File

@@ -0,0 +1,43 @@
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Rendering;
public class Tower : MonoBehaviour
{
public float range;
[SerializeField] private float attackSpeed;
[SerializeField] private float attackDamage;
[SerializeField] private LayerMask whatIsEnemy;
private Collider[] collidersInRange;
public List<EnemyController> enemiesInRange = new List<EnemyController>();
private float checkCounter;
[SerializeField] private float checkTime = .2f;
[HideInInspector] public bool enemiesUpdated;
// Start is called once before the first execution of Update after the MonoBehaviour is created
void Start()
{
checkCounter = checkTime;
}
// Update is called once per frame
void Update()
{
enemiesUpdated = false;
checkCounter -= Time.deltaTime;
if (checkCounter <= 0f)
{
checkCounter = checkTime;
collidersInRange = Physics.OverlapSphere(transform.position, range, whatIsEnemy);
enemiesInRange.Clear();
foreach (Collider collider in collidersInRange)
{
if (collider.gameObject.GetComponent<EnemyController>() != null)
{
enemiesInRange.Add(collider.GetComponent<EnemyController>());
}
}
enemiesUpdated = true;
}
}
}