This commit is contained in:
Gerard Gascón 2025-04-24 17:19:36 +02:00
commit 001bb14f16
951 changed files with 270074 additions and 0 deletions

View file

@ -0,0 +1,69 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class EnemyController : MonoBehaviour, IPooledObject{
public float speed;
public float maxSpeed;
public Material red;
public GameObject[] materialsApplied;
public LayerMask whatStops;
public Transform circlePos;
bool canDisappear;
Transform target;
Rigidbody2D rb2d;
Vector2 mov;
Animator anim;
// Start is called before the first frame update
void Start(){
rb2d = GetComponent<Rigidbody2D>();
target = GameObject.FindGameObjectWithTag("Player").transform;
anim = GetComponentInChildren<Animator>();
anim.SetBool("Walking", true);
}
public void OnObjectSpawn(){
canDisappear = false;
}
void FixedUpdate(){
/*if (target.position.x < transform.position.x){
rb2d.AddForce(Vector2.left * speed * Time.deltaTime);
}else{
rb2d.AddForce(Vector2.right * speed * Time.deltaTime);
}
if (target.position.y < transform.position.y){
rb2d.AddForce(Vector2.down * speed * Time.deltaTime);
}else{
rb2d.AddForce(Vector2.up * speed * Time.deltaTime);
}
float limitedSpeed = Mathf.Clamp(rb2d.velocity.x, -maxSpeed, maxSpeed);
float yLimitedSpeed = Mathf.Clamp(rb2d.velocity.y, -maxSpeed, maxSpeed);
rb2d.velocity = new Vector2(limitedSpeed, yLimitedSpeed);*/
mov = transform.position;
mov = Vector2.MoveTowards(rb2d.position, target.position, speed * Time.fixedDeltaTime);
rb2d.MovePosition(mov);
//print(rb2d.velocity.magnitude);
}
void OnTriggerEnter2D(Collider2D col){
if(col.gameObject.tag == "Attack"){
anim.SetBool("Attacking", true);
for (int i = 0; i < materialsApplied.Length; i++){
materialsApplied[i].GetComponent<SkinnedMeshRenderer>().material = red;
}
}
}
void OnBecameVisible(){
canDisappear = true;
}
void OnBecameInvisible(){
if (canDisappear){
gameObject.SetActive(false);
}
}
}