implement more changes

This commit is contained in:
2026-05-27 00:04:52 +02:00
parent e460a69443
commit 93a2f0e08c
27 changed files with 5825 additions and 5842 deletions
+22 -2
View File
@@ -5,6 +5,8 @@ public class Enemy : MonoBehaviour
public float speed = 1.5f;
private Transform tower;
private EnemyHealth enemyHealth;
private float slowMultiplier = 1f;
private float slowEndTime;
void Start()
{
@@ -20,7 +22,10 @@ public class Enemy : MonoBehaviour
void Update()
{
if (tower == null || enemyHealth == null) return;
transform.position = Vector2.MoveTowards(transform.position, tower.position, speed * Time.deltaTime);
if (Time.time >= slowEndTime)
slowMultiplier = 1f;
transform.position = Vector2.MoveTowards(transform.position, tower.position, speed * slowMultiplier * Time.deltaTime);
if (Vector2.Distance(transform.position, tower.position) < 0.5f)
{
int damageDealt = enemyHealth.GetCurrentHealth();
@@ -29,4 +34,19 @@ public class Enemy : MonoBehaviour
Destroy(gameObject);
}
}
}
public void ApplySlow(float multiplier, float duration)
{
slowMultiplier = Mathf.Min(slowMultiplier, Mathf.Clamp(multiplier, 0.1f, 1f));
slowEndTime = Mathf.Max(slowEndTime, Time.time + duration);
}
public void ApplyKnockback(Vector2 source, float distance)
{
Vector2 direction = ((Vector2)transform.position - source).normalized;
if (direction.sqrMagnitude <= Mathf.Epsilon)
return;
transform.position += (Vector3)(direction * distance);
}
}