Tower defense - Titan Invasion

Programación Orientada a Objetos (Tower defense - kingdom rush)

Moderator: julianmartinez16

User avatar
ArturoHG
Posts: 7
Joined: Fri Jan 24, 2020 2:11 pm

Re: Tower defense - Titan Invasion

Post by ArturoHG » Thu Mar 05, 2020 5:35 am

¿Qué hemos hecho?
Continuamos avanzando con el sprite del personaje para incluirlo en el juego.

Ultimo dibujo hecho del sprite
Image

Todos los dibujos del sprite que llevamos hasta el momento
Image

¿Qué vamos a hacer?
Vamos a continuar el diseño de los personajes con sus respectivos dibujos para poder darles movimiento y comenzar a incluirlos en el mapa en unity, ya con la ruta trazada. Realizar el diagrama de clases

¿Qué inconvenientes se han tenido?
No realizamos la publicación a tiempo porqué me encontraba enfermo y no estaba en condiciones para poder publicar a tiempo.
Arturo José Hoyos González. :twisted:
Estudiante.
Programación Orientada a Objetos.

User avatar
xacarana
Site Admin
Posts: 1248
Joined: Fri Jan 15, 2016 6:13 pm

Re: Tower defense - Titan Invasion

Post by xacarana » Fri Mar 06, 2020 2:41 pm

Esperamos la publicación de hoy, esperamos un buen avances. Si un integrante del equipo esta enfermo el otro lo apoya.

Image
Andrés Bedoya Tobón
Profesor
"I only smile in the dark, I only smile when it's complicated" Raybiez

User avatar
ValeMe
Posts: 11
Joined: Fri Jan 24, 2020 2:05 pm

Re: Tower defense - Titan Invasion

Post by ValeMe » Fri Mar 06, 2020 11:38 pm

¿Qué hemos hecho?
Mejoramos el diseño del mapa en Tilemap, trazamos de nuevo la ruta y agregamos una más, también agregamos un nuevo sprite para simular el movimiento de los personajes y comenzamos con el código para que la unidad( el sprite) siga las rutas trazadas.

Mejora en el mapa, ahora son dos rutas:

Image



Movimiento del sprite en la ruta trazada anteriormente:

Code: Select all

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

public class Astronautacontrol : MonoBehaviour
{
    public GameObject ruta;
    private int numeronodos;
    private float tiempo;

    // Start is called before the first frame update
    void Start()
    {
        ruta = GameObject.Find("Ruta_1");        
    }

    // Update is called once per frame
    void Update()
    {
        if (tiempo > 0.5)
        {
            if (numeronodos < ruta.transform.childCount)
            {
                Debug.Log(ruta.transform.GetChild(numeronodos).transform.position.x + " " + ruta.transform.GetChild(numeronodos).transform.position.y);
                this.transform.position = new Vector3(ruta.transform.GetChild(numeronodos).transform.position.x, ruta.transform.GetChild(numeronodos).transform.position.y, this.transform.position.z);
                numeronodos++;
            }
            tiempo = 0;
        }
        else
        {
            tiempo += Time.deltaTime;
        }
    }

    public float[] obtenerRuta()
    {
        return new float[] { 0.0f };
    }

}
¿Qué haremos?
Resolveremos dudas que tenemos a cerca del código, continuaremos con la implementación de los sprites.

¿Qué inconvenientes hemos tenido?
Ninguno
Last edited by ValeMe on Wed Mar 25, 2020 11:43 pm, edited 1 time in total.
Programación Orientada a Objetos
Valeria Mejía Mejía :D
Id:000213834

User avatar
xacarana
Site Admin
Posts: 1248
Joined: Fri Jan 15, 2016 6:13 pm

Re: Tower defense - Titan Invasion

Post by xacarana » Wed Mar 11, 2020 2:27 pm

Image

Muy bien, pendientes de la publicación de hoy.
Andrés Bedoya Tobón
Profesor
"I only smile in the dark, I only smile when it's complicated" Raybiez

User avatar
ArturoHG
Posts: 7
Joined: Fri Jan 24, 2020 2:11 pm

Re: Tower defense - Titan Invasion

Post by ArturoHG » Thu Mar 12, 2020 12:21 am

¿Qué hemos hecho?
Definimos el diseño final del mapa y los sprites de los personajes finales (heroe y villano)

Sprite Villano
Image

Heroe
Image
El Sprite se organizara en los proximos días

Mapa
Image
Background
Image
¿Qué haremos?
Resolveremos dudas que tenemos a cerca del código, y continuar programando.
¿Qué inconvenientes hemos tenido?
Al momento de compartir el proyecto en Unity no se realizaba adecuadamente y compartia un proyecto vacío.
Arturo José Hoyos González. :twisted:
Estudiante.
Programación Orientada a Objetos.

User avatar
ValeMe
Posts: 11
Joined: Fri Jan 24, 2020 2:05 pm

Re: Tower defense - Titan Invasion

Post by ValeMe » Fri Mar 13, 2020 11:36 pm

¿Qué hemos hecho?
Solucionamos las dudas respecto al código, por ende logramos que el sprite siguiera la ruta trazada y encontramos assets prefabricados que utilizaremos para la mejora del mapa


Movimiento sprite en ruta 1.

Image
Grupo 1 de assets para la mejora del mapa

Image
Grupo 2 de assets para la mejora del mapa

Image
Grupo 3 de assets para la mejora del mapa

¿Qué haremos?
Vamos a mejorar el diseño del mapa, le vamos a agregar más rutas e incorporaremos los nuevos sprites

¿Qué inconvenientes hemos tenido?
Estábamos teniendo un inconveniente con las cuentas de unity, para ambos tener acceso al juego desde diferentes cuentas, pero ya lo solucionamos trabajando ambos desde una misma cuenta.
Programación Orientada a Objetos
Valeria Mejía Mejía :D
Id:000213834

User avatar
ArturoHG
Posts: 7
Joined: Fri Jan 24, 2020 2:11 pm

Re: Tower defense - Titan Invasion

Post by ArturoHG » Thu Mar 19, 2020 10:47 pm

¿Qué hemos hecho?
Se avanzo en la programación de la detección de enemigos, se realizo la organización de los sprites de los heroes

Sprite Caminando
Image

Sprite estatico
Image

Ataques
Image

Image

Corriendo
Image
¿Qué haremos?
Continuar con la programación del juego y la inclusion de los personajes.

¿Qué inconvenientes hemos tenido?
Al momento de cerrar y volver a entrar a Unity, toda la carpeta del proyecto me aparecia vacia, como su fuera un proyecto nuevo, intentamos durante los dias pasados solucionar el problema pero no hallamos solución. El avance que se hizo no se ve reflejado en el proyecto, solo a mi me sale vacia la carpeta.
Arturo José Hoyos González. :twisted:
Estudiante.
Programación Orientada a Objetos.

User avatar
ArturoHG
Posts: 7
Joined: Fri Jan 24, 2020 2:11 pm

Re: Tower defense - Titan Invasion

Post by ArturoHG » Fri Mar 20, 2020 11:46 pm

¿Qué hemos hecho?
Finalizamos el mapa en tiled y listo para programar

Mapa en tiled
Image

¿Qué vamos a hacer?
Programar las torres y los personajes correspondientes, tambien se programara la deteccion de enemigos.

¿Qué inconvenientes hemos tenido?
Ninguno.
Arturo José Hoyos González. :twisted:
Estudiante.
Programación Orientada a Objetos.

User avatar
ValeMe
Posts: 11
Joined: Fri Jan 24, 2020 2:05 pm

Re: Tower defense - Titan Invasion

Post by ValeMe » Wed Mar 25, 2020 11:58 pm

¿Qué hicimos?
Continuamos viendo los videos y comenzamos a trabajar en el código de mejora del movimiento de la unidad y la detección de enemigos

Code: Select all

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

public class mejoramvto : MonoBehaviour
{
    public GameObject ruta;
    private int indice;
    private Vector3 posicion_siguiente;
    private float velocidad = 1;
    private float distancia_punto = 0.5f;

    // Start is called before the first frame update
    void Start()
    {
        posicion_siguiente = ruta.transform.GetChild(0).position;

        
    }

    // Update is called once per frame
    void Update()
    {
        Vector3 dir = posicion_siguiente - this.transform.position;
        this.transform.position += dir * velocidad * Time.deltaTime;

        if(dir.magnitude <= distancia_punto)
        {
            if (indice+1 < ruta.transform.childCount)
            {
                indice++;
                posicion_siguiente = ruta.transform.GetChild(indice).position;
                Debug.Log("xs"+ posicion_siguiente.x +"ys" + posicion_siguiente.y);
            }
        }

        
    }
}

Code: Select all

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

public class Torre : MonoBehaviour
{
    public GameObject enemigo;
    private float distancia_umbral = 2;

    // Start is called before the first frame update
    void Start()
    {
        
    }

    // Update is called once per frame
    void Update()
    {
        float dist = (enemigo.transform.position - this.transform.position).magnitude;

        if(dist <= distancia_umbral)
        {
            Debug.DrawLine(this.transform.position, enemigo.transform.position, Color.green);
        }
        
    }
}
¿Qué haremos?
Solucionar el problema que tenemos, ya que no nos permite avanzar lo que quisiéramos y continuar con la implementación del nuevo mapa

¿Qué inconvenientes hemos tenido?
Hemos venido teniendo un gran inconveniente en cuanto a la parte de poder trabajar ambos sobre el mismo proyecto, lo cual creíamos que estaba resuelto, al crear una cuenta en la que ambos pudiéramos acceder, pero el problema continúa por que después de crearla, efectivamente podemos acceder, pero no nos muestra el proyecto ni los cambios que alguno de los dos hace, no sabemos a que se debe. Desde uno de los computadores se editó y mejoró el mapa, luego se subió a unity a la cuenta que ambos tenemos y se guardó todo exitosamente, pero al intentar abrir el proyecto desde el otro computador, se logra ingresar a la cuenta pero no muestra el proyecto, sale un proyecto en blanco.
Programación Orientada a Objetos
Valeria Mejía Mejía :D
Id:000213834

User avatar
ValeMe
Posts: 11
Joined: Fri Jan 24, 2020 2:05 pm

Re: Tower defense - Titan Invasion

Post by ValeMe » Wed Apr 01, 2020 1:53 pm

--> PREENTREGA

¿Qué hemos hecho?
Avanzamos hasta la programación explicada en el video 9, organizamos la presentación para la preentrega y sacamos el diagrama de clases




GAMEPLAY:



¿Qué haremos?
Vamos a mejorar el diagrama de clases con sus respectivas relaciones, vamos a mejorar y a especificar más las actividades para las semanas que faltan en el backlog, y además vamos a corregir y solucionar errores que tenemos hasta el momento

¿Qué inconvenientes hemos tenido?
Hemos tenido problemas con la barra de vida y con la lista de arrays de enemigos, ya que no están funcionando correctamente, la barra de vida se queda quieta en el punto de inicio, no avanza junto con el sprite y una de las hordas de enemigos funciona, pero la otra no sigue como debería al objeto inicial. Todo esto se ve en el gameplay

;)
Gracias!
Programación Orientada a Objetos
Valeria Mejía Mejía :D
Id:000213834

Post Reply