MONSTER DEFENDERS - FDG Productions
Moderator: julianmartinez16
- daniela.atencia
- Posts: 57
- Joined: Tue Jan 22, 2019 6:20 am
Re: MONSTER DEFENDERS - FDG Productions
Sprint 7
Fecha de inicio: 27 de agosto
Fecha final: 3 de septiembre
Actividades:
- Detección de enemigos (Jhon Mayuza)
- Pooling de objetos - spawn (Freddy Muriel)
- Barra de vida y menú(Daniela Atencia)
Fecha de inicio: 27 de agosto
Fecha final: 3 de septiembre
Actividades:
- Detección de enemigos (Jhon Mayuza)
- Pooling de objetos - spawn (Freddy Muriel)
- Barra de vida y menú(Daniela Atencia)
Daniela Atencia
Programación y diseño orientado a objeto, 2019-2.
Programación y diseño orientado a objeto, 2019-2.
- daniela.atencia
- Posts: 57
- Joined: Tue Jan 22, 2019 6:20 am
Re: MONSTER DEFENDERS - FDG Productions
¿Qué hemos hecho?:
-Código de Bullet.
- Código de Bullet Spawner.
- Código de enemigos. (en progreso)
¿Qué falta por hacer?:
-Programación y sprint de esta semana.
¿Qué problemas hemos tenido:
-Algunos errores en los códigos.
-Código de Bullet.
Code: Select all
public class Bullet : MonoBehaviour
{
public Transform objetivo;
public float velocidad = 20;
private Transform myTransform;
void Awake()
{
myTransform = transform;
}
void Start()
{
GameObject go = GameObject.FindGameObjectWithTag("Enemigo");
objetivo = go.transform;
// rotate the projectile to aim the target:
myTransform.LookAt(objetivo);
}
// Update is called once per frame
void Update()
{
// distance moved since last frame:
float seguirObjetivo = velocidad * Time.deltaTime;
// translate projectile in its forward direction:
myTransform.Translate(Vector3.forward * seguirObjetivo);
}
}
Code: Select all
public class BulletSpawner : MonoBehaviour
{
public GameObject bala;
public bool aparecer = false;
public float tiempoReaparicion;
public float frecuencia;
void Start()
{
InvokeRepeating("Aparicion", tiempoReaparicion, frecuencia);
}
public void Aparicion()
{
Instantiate(bala, transform.position, transform.rotation);
if (aparecer)
{
CancelInvoke("Aparicion");
}
}
}
¿Qué falta por hacer?:
-Programación y sprint de esta semana.
¿Qué problemas hemos tenido:
-Algunos errores en los códigos.
Daniela Atencia
Programación y diseño orientado a objeto, 2019-2.
Programación y diseño orientado a objeto, 2019-2.
- JhonMayuza
- Posts: 11
- Joined: Tue Jul 16, 2019 6:26 am
Re: MONSTER DEFENDERS - FDG Productions
Scripts usados hasta el momento en el proyecto.
Movimiento (Puntos de Guia)
El codigo es utilizado para guardar todos los waypoints en un arreglo, de manera que el script de movimiento del enemigo pueda seguirlos cuando se encuentre en este estado.
Movimiento (Enemigo)
Este codigo, sin embargo, tiene un problema, que es que al llegar al ultimo waypoint, el contador aumentara, pero ya no habra mas waypoints a los que hacer referencia, por lo que unity empezara a lanzar errores en masa, esto sera arreglado haciendo que el objeto sea destruido al llegar al ultimo waypoint, asi mismo como otras acciones que deba hacer al llegar a este estado.
Torre (Spawn de proyectiles)
Este codigo es usado para probar el script de las balas, y su seguimiento al jugador.
Bala:
El inconveniente de este script es que la bala falla el objetivo si este va a mucha velocidad, y no sabemos que comportamiento tendra si se hace la prueba con mas de 1 enemigo en el escenario.
El prototipo de pruebas se puede encontrar en el repositorio.
Movimiento (Puntos de Guia)
Code: Select all
public class Waypoints : MonoBehaviour
{
public Transform[] waypoints;
}
Movimiento (Enemigo)
Code: Select all
public class Enemigo: MonoBehaviour
{
public float velocidad;
private Waypoints wpoints;
private int contador;
void Start()
{
wpoints = GameObject.FindGameObjectWithTag("Waypoints").GetComponent<Waypoints>();
}
void Update()
{
transform.position = Vector3.MoveTowards(transform.position, wpoints.waypoints[contador].position, velocidad * Time.deltaTime);
if(Vector3.Distance(transform.position, wpoints.waypoints[contador].position) < 0.1f)
{
contador++;
}
}
}
Torre (Spawn de proyectiles)
Code: Select all
public class SpawnDeBalas : MonoBehaviour
{
public GameObject bala;
public bool aparecer = false;
public float tiempoReaparicion;
public float frecuencia;
void Start()
{
InvokeRepeating("Aparicion", tiempoReaparicion, frecuencia);
}
public void Aparicion()
{
Instantiate(bala, transform.position, transform.rotation);
if (aparecer)
{
CancelInvoke("Aparicion");
}
}
}
Bala:
Code: Select all
public class Bala : MonoBehaviour
{
public Transform objetivo;
public float velocidad = 20;
private Transform myTransform;
void Awake()
{
myTransform = transform;
}
void Start()
{
GameObject go = GameObject.FindGameObjectWithTag("Enemigo");
objetivo = go.transform;
// rotate the projectile to aim the target:
myTransform.LookAt(objetivo);
}
// Update is called once per frame
void Update()
{
// distance moved since last frame:
float seguirObjetivo = velocidad * Time.deltaTime;
// translate projectile in its forward direction:
myTransform.Translate(Vector3.forward * seguirObjetivo);
}
}
El prototipo de pruebas se puede encontrar en el repositorio.

Jhon Esteban Mayuza Villegas - Programacion orientada a objetos
2019-02
Re: MONSTER DEFENDERS - FDG Productions
Muy bien, recuerden encapsular los miembros datos y si necesitan que las propiedades tengan propiedades de edición desde el editor de Unity, recuerden que hay una forma de hacerlo.


Andrés Bedoya Tobón
Profesor
"I only smile in the dark, I only smile when it's complicated" Raybiez
Profesor
"I only smile in the dark, I only smile when it's complicated" Raybiez
- daniela.atencia
- Posts: 57
- Joined: Tue Jan 22, 2019 6:20 am
Re: MONSTER DEFENDERS - FDG Productions
¿Qué hemos hecho?
-menú
¿Qué falta por hacer?
-polling
-barra de vida
¿Qué problemas hemos tenido?
-problemas con la programación
-menú
¿Qué falta por hacer?
-polling
-barra de vida
¿Qué problemas hemos tenido?
-problemas con la programación
Daniela Atencia
Programación y diseño orientado a objeto, 2019-2.
Programación y diseño orientado a objeto, 2019-2.
- daniela.atencia
- Posts: 57
- Joined: Tue Jan 22, 2019 6:20 am
Re: MONSTER DEFENDERS - FDG Productions
Sprint 8
Fecha de inicio: 3 de septiembre
Fecha final: 10 de septiembre
Actividades:
- Daño de enemigos (Jhon Mayuza)
- Mejorar oleadas (Freddy Muriel)
- Opción de mejora de torres(Daniela Atencia)
Fecha de inicio: 3 de septiembre
Fecha final: 10 de septiembre
Actividades:
- Daño de enemigos (Jhon Mayuza)
- Mejorar oleadas (Freddy Muriel)
- Opción de mejora de torres(Daniela Atencia)
Daniela Atencia
Programación y diseño orientado a objeto, 2019-2.
Programación y diseño orientado a objeto, 2019-2.
- fredy muriel
- Posts: 6
- Joined: Tue Jul 16, 2019 6:27 am
Re: MONSTER DEFENDERS - FDG Productions
qué se ha hecho?
se continua con la elaboración del código y se hacen las correcciones mencionadas en clase, las cuales eran de como reciclar las unidades para que no crearan una sobrecarga en la memoria. para esto nos guiamos de los links de los vídeos que se dejan a continuación
código implementado
qué falta por hacer?
juntar los proyectos
el daño del enemigo
qué dificultades hemos tenido?
en la ejecución del código
se continua con la elaboración del código y se hacen las correcciones mencionadas en clase, las cuales eran de como reciclar las unidades para que no crearan una sobrecarga en la memoria. para esto nos guiamos de los links de los vídeos que se dejan a continuación
código implementado
Code: Select all
public class Nueva_Oleada : MonoBehaviour
{
public static ArrayList NuevaOleada = new ArrayList();
// Start is called before the first frame update
void Start()
{
GameObject unidad = GameObject.Find("unidad_01");
GameObject temporal;
Vector3 incremento = new Vector3(0, 1);
Vector3 posicionInicial = unidad.transform.position;
for (int i = 0; i < 10; i++)
{
temporal = (GameObject)Instantiate(unidad, posicionInicial + incremento, Quaternion.identity);
posicionInicial = temporal.transform.position;
NuevaOleada.Add(temporal);
}
}
// Update is called once per frame
void Update()
{
}
}
Code: Select all
void Start()
{
posicion_Siguiente = ruta.transform.GetChild(0).position;
}
}
// Update is called once per frame
void Update()
{
Vector3 direccion = posicion_Siguiente - this.transform.position;
this.transform.position += direccion * velocidad * Time.deltaTime;
if (direccion.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);
}
}
}
}
juntar los proyectos
el daño del enemigo
qué dificultades hemos tenido?
en la ejecución del código
fredy muriel programación y diseño orientado a objetos
- daniela.atencia
- Posts: 57
- Joined: Tue Jan 22, 2019 6:20 am
Re: MONSTER DEFENDERS - FDG Productions
¿Qué hemos hecho?
-Código de salud (para daño de personajes)
-Intento de mejora de torres.
¿Qué falta por hacer?
-Hacer que funcione la mejora de torres y el sistema de monedas.
¿Qué dificultades hemos tenido?
-Comunicación.
-Errores en la programación.
-Código de salud (para daño de personajes)
Code: Select all
public class Salud : MonoBehaviour
{
public int salud = 20;
void OnTriggerEnter(Collider collider)
{
if (collider.gameObject.CompareTag("Bala"))
{
salud -= 2;
Destroy(gameObject);
}
}
void Update()
{
if (salud == 0)
{
Destroy(this.gameObject);
}
}
}
¿Qué falta por hacer?
-Hacer que funcione la mejora de torres y el sistema de monedas.
¿Qué dificultades hemos tenido?
-Comunicación.
-Errores en la programación.
Daniela Atencia
Programación y diseño orientado a objeto, 2019-2.
Programación y diseño orientado a objeto, 2019-2.
Re: MONSTER DEFENDERS - FDG Productions

Esta pendiente el avance del día de hoy, tienen hasta las 11:59, además deben publicar la planeación del nuevo sprint.
Andrés Bedoya Tobón
Profesor
"I only smile in the dark, I only smile when it's complicated" Raybiez
Profesor
"I only smile in the dark, I only smile when it's complicated" Raybiez
- daniela.atencia
- Posts: 57
- Joined: Tue Jan 22, 2019 6:20 am
Re: MONSTER DEFENDERS - FDG Productions
Sprint 9
Fecha de inicio: 10 de septiembre
Fecha final: 17 de septiembre
Actividades:
- Parte gráfica, ilustraciones (Jhon Mayuza)
- Mejora enemigos y oleadas(Freddy Muriel)
- Mejora vidas(Daniela Atencia)
- Preparación para presentación (todos)
Fecha de inicio: 10 de septiembre
Fecha final: 17 de septiembre
Actividades:
- Parte gráfica, ilustraciones (Jhon Mayuza)
- Mejora enemigos y oleadas(Freddy Muriel)
- Mejora vidas(Daniela Atencia)
- Preparación para presentación (todos)
Daniela Atencia
Programación y diseño orientado a objeto, 2019-2.
Programación y diseño orientado a objeto, 2019-2.