Disparar al enemigo

Unity Disparar al enemigo, aquí vamos aprender a disparar al enemigo aunque en el anterior tutorial ya lo enseñe, y a eliminar al enemigo, de una manera muy sencilla

Aquí tenemos nuestro juego, y con el mouse en este caso será con el dedo lanzándole un proyectil  eliminaríamos al enemigo que en este caso el el muñeco rojo

Una vez nuestro objeto colisioné con el enemigo, este dará volteretas y se eliminara. Así que vamos a empezar

Vamos a nuestro cámara y hay tenemos un script que os pondré en la descripción

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class disparodesdelacamara : MonoBehaviour
{

    private Vector3 target;

    private Vector3 mousePos;
    private Vector3 objectPos;
    public GameObject disparo;


    // Use this for initialization
    void Start()
    {
        Cursor.visible = true;
    }

    // Update is called once per frame
    void Update()
    {



        if (Input.GetButtonDown("Fire1"))
        {
            mousePos = Input.mousePosition;
            mousePos.z = 2.0f;
            objectPos = Camera.main.ScreenToWorldPoint(mousePos);
            Instantiate(disparo, objectPos, Quaternion.identity);

        }
    }
}

Aquí tendremos el script de la cámara

este seria el script de la cámara, donde pone «Disparo» hay pondríamos la bola negra con ojos, ahora a la bola negra con ojos vamos a crear un script que seria una muy simple que desapareciese pasado un segundo , para que no ocupe espacio una vez el juego se  reproduce

aquí tenemos  a la bola con ojos tiene un script que ahora pondré en la descripción, un Box Collider 2D con el Is Trigger activado , y una Tag llamado dos

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class destruirobjeto : MonoBehaviour
{
    void Start()
    {

    }

    // Update is called once per frame
    void Update()
    {
        Destroy(gameObject, 1f);

    }
}

este seria el script de la bola, que permanecería en la carpeta de Prefab, ahora vamos al script del enemigo

y le creamos el Script que tenemos en pantalla y entre los dos paréntesis ponemos «dos» con esto nuestro personaje se eliminaría, pero no realizaría ninguna animación. importante que nuestro personaje tenga el rigbody2d con la gravedad 0. ahora creamos dos animaciones una de caminar y la otra ELIMINAR, que  será la que realice cuando le toque nuestro proyectil  . así que vamos a crear dos animaciones a nuestro enemigo.

 

Aquí tenemos a nuestras dos animaciones, la de caminar es la principal.

y ahora en el script del enemigo creamos lo siguiente

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class enemigo : MonoBehaviour
{ /// </summary>
    public float moveSpeed = 3f;
    private Animator animactionenemigo;
  
    public bool deatr;
    Transform lefWayPoint, rigWayPOint;
    Vector3 localScale;
    bool movinRIght = true;
    Rigidbody2D rb;

    void Start()
    {
        animactionenemigo = GetComponent<Animator>();
     
        localScale = transform.localScale;
        rb = GetComponent<Rigidbody2D>();
        lefWayPoint = GameObject.Find("LefWaupoin").GetComponent<Transform>();
        rigWayPOint = GameObject.Find("RigfWaupoin").GetComponent<Transform>();

    }
    void Update()
    {


        if (transform.position.x > rigWayPOint.position.x)
            movinRIght = false;
        if (transform.position.x < lefWayPoint.position.x)
            movinRIght = true;

        if (movinRIght)
            movinRIg();
        else
            movelef();


    }


    void movinRIg()
    {

        movinRIght = true;
        localScale.x = 1;
        transform.localScale = localScale;
        rb.velocity = new Vector2(localScale.x * moveSpeed, rb.velocity.y);
    }

    void movelef()
    {
        movinRIght = false;
        localScale.x = -1;
        transform.localScale = localScale;
        rb.velocity = new Vector2(localScale.x * moveSpeed, rb.velocity.y);


    }


    void OnTriggerEnter2D(Collider2D col)
    {
        if (col.gameObject.tag == "dos")
        {

            animactionenemigo.Play("ELIMINAR");
            Destroy(gameObject, 0.9f);

        }

    }


}

 

Related Posts

Messi después del Mundial: la historia de un campeón que siguió intentando tocar el cielo

Lionel Messi: la historia del niño que tuvo que perder muchas veces antes de tocar el cielo La historia de Lionel Messi no es solamente la historia de uno de…

No fue el Mundial de Lamine Yamal: Rodri se convirtió en el verdadero líder de España

España volvió a tocar el cielo y se proclamó campeona del mundo en 2026. Antes de comenzar el torneo, muchas miradas estaban puestas en Lamine Yamal. Por edad, talento, repercusión…

One thought on “Disparar al enemigo

Deja una respuesta

You Missed

Messi después del Mundial: la historia de un campeón que siguió intentando tocar el cielo

  • Por admin
  • julio 27, 2026
  • 11 views
Messi después del Mundial: la historia de un campeón que siguió intentando tocar el cielo

Argentina no perdió por un complot: España fue mejor y hay que aceptarlo

  • Por admin
  • julio 24, 2026
  • 23 views
Argentina no perdió por un complot: España fue mejor y hay que aceptarlo

No fue el Mundial de Lamine Yamal: Rodri se convirtió en el verdadero líder de España

  • Por admin
  • julio 23, 2026
  • 28 views
No fue el Mundial de Lamine Yamal: Rodri se convirtió en el verdadero líder de España

Jugadores que ganaron el Mundial antes de los 20 años: la lista histórica

  • Por admin
  • julio 22, 2026
  • 38 views
Jugadores que ganaron el Mundial antes de los 20 años: la lista histórica

Mbappé vs Lamine Yamal: ¿quién es mejor?

  • Por admin
  • julio 21, 2026
  • 47 views
Mbappé vs Lamine Yamal: ¿quién es mejor?

Lamine Yamal 2026: ¿El nuevo rey del fútbol mundial?

  • Por admin
  • julio 21, 2026
  • 36 views
Lamine Yamal 2026: ¿El nuevo rey del fútbol mundial?