Uribe.Inc - StickMan Fortress

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

Moderator: julianmartinez16

User avatar
AdrianOsorio
Posts: 8
Joined: Thu Jul 26, 2018 6:24 am

Re: Uribe.Inc - StickMan Fortress

Post by AdrianOsorio » Wed Aug 15, 2018 8:43 pm

¿Que se hizo?
Se desarrollo el grafico del mapa
¿Que se va a hacer?
Se acoplaran los waypoints y el spawner de acuerdo al mapa
¿Que dificultades se tuvo?
ninguna
Image
"Todos se rien de mi por ser diferente yo me rio de ellos gracias al crotolamo..." Jesus de Nazaret 1988 D.C


Adrian Osorio Restrepo

User avatar
Juanlasso
Posts: 13
Joined: Thu Jul 26, 2018 6:24 am

Re: Uribe.Inc - StickMan Fortress

Post by Juanlasso » Mon Aug 20, 2018 10:07 pm

Qué se hizo?
Se integro el proceso de diseño y programacion
Qué dificultades se tuvo?
ninguna
Qué se va a hacer?
Pulir errores y mejorar la integración de scripts
Image
"Anime was a mistake" Hayao Miyasaki
"Those who identify as "otaku", they sicken me deeply" also Hayao Miyasaki



-------
Juan Camilo Lasso Gutierrez
Programación Orientada a Objetos

User avatar
Juanlasso
Posts: 13
Joined: Thu Jul 26, 2018 6:24 am

Re: Uribe.Inc - StickMan Fortress

Post by Juanlasso » Wed Aug 22, 2018 10:06 pm

¿Que se hizo?
Se comenzo la realizacion del script de la torreta, buscando un enemigo y disparandole al igual que la salida de un proyectil que sera la bala
Image
Codigo Torreta

Code: Select all

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

public class Torreta : MonoBehaviour {

	public Transform target;
	public float range = 15f;

	public string enemyTag = "Enemy";

	public float fireRate = 1f;
	private float fireCountdown = 0f;

	public GameObject bulletPrefab;
	public Transform firePoint;

	// Use this for initialization
	void Start () {
		InvokeRepeating ("UpdateTarget", 0f, 0.5f);
	}

	void UpdateTarget ()
	{
		GameObject[] enemies = GameObject.FindGameObjectsWithTag (enemyTag);
		float shortestDistance = Mathf.Infinity;
		GameObject nearestEnemy = null;

		foreach (GameObject enemy in enemies) 
		{
			float distanceToEnemy = Vector3.Distance (transform.position, enemy.transform.position);
			if (distanceToEnemy < shortestDistance) 
			{
				shortestDistance = distanceToEnemy;
				nearestEnemy = enemy;
			}
		}

		if (nearestEnemy != null && shortestDistance <= range) {
			target = nearestEnemy.transform;
		} else 
		{
			target = null;
		}
	}
	
	// Update is called once per frame
	void Update () {
		if (target == null)
			return;

		if (fireCountdown <= 0f) 
		{
			Shoot ();
			fireCountdown = 1f / fireRate;
		}

		fireCountdown += Time.deltaTime;
	}

	void Shoot ()
	{
		GameObject bulletGO = (GameObject)Instantiate (bulletPrefab, firePoint.position, firePoint.rotation);
		Bullet bullet = bulletGO.GetComponent <Bullet> ();

		if (bullet != null)
			bullet.Seek(target);

		Debug.Log ("Shoot");
	}

	void OnDrawGizmoSelected () // Esto es para mostrar el rango actual de la torreta
	{
		Gizmos.color = Color.red;
		Gizmos.DrawWireSphere (transform.position, range);
	}
}
Codigo Bala

Code: Select all

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

public class Bullet : MonoBehaviour {

	private Transform target;

	public float speed = 20f;

	public void Seek (Transform _target)
	{
		target = _target;
	}

	// Use this for initialization
	void Start () {
		
	}
	
	// Update is called once per frame
	void Update () {
		if (target == null) 
		{
			Destroy(gameObject);
			return;
		}
		Vector3 dir = target.position + transform.position;
		float distanceThisFrame = speed * Time.deltaTime;

		if (dir.magnitude <= distanceThisFrame) 
		{
			HitTarget ();
			return;
		}

		transform.Translate (dir.normalized * distanceThisFrame, Space.World);
	}

	void HitTarget ()
	{
		Debug.Log ("Hit");
		Destroy (gameObject);
	}
}
¿Que se va a hacer?
Se pulira mejor los resultados y se integrara en la escena 2d
¿Que dificultades se tuvo?
Por ahora se presenta un inconveniente con el disparo, este sale infinitamente hacia el cielo lo cual se arreglara
"Anime was a mistake" Hayao Miyasaki
"Those who identify as "otaku", they sicken me deeply" also Hayao Miyasaki



-------
Juan Camilo Lasso Gutierrez
Programación Orientada a Objetos

User avatar
Juanlasso
Posts: 13
Joined: Thu Jul 26, 2018 6:24 am

Re: Uribe.Inc - StickMan Fortress

Post by Juanlasso » Mon Aug 27, 2018 7:33 pm

¿Que se hizo?
Se arreglo el problema con el disparo de la torreta ademas de agregarse un diseño nuevo para testeo, que permite que se vea mejor en el momento de la prueba
Image
Codigo Torreta Arreglado

Code: Select all

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

public class Torreta : MonoBehaviour {

	private Transform target;
	public float range = 15f;

	public string enemyTag = "Enemy";

	public float fireRate = 1f;
	private float fireCountdown = 0f;

	public GameObject bulletPrefab;
	public Transform firePoint;


	// Use this for initialization
	void Start () {
		InvokeRepeating ("UpdateTarget", 0f, 0.5f);
	}

	void UpdateTarget ()
	{
		GameObject[] enemies = GameObject.FindGameObjectsWithTag (enemyTag);
		float shortestDistance = Mathf.Infinity;
		GameObject nearestEnemy = null;

		foreach (GameObject enemy in enemies) 
		{
			float distanceToEnemy = Vector3.Distance (transform.position, enemy.transform.position);
			if (distanceToEnemy < shortestDistance) 
			{
				shortestDistance = distanceToEnemy;
				nearestEnemy = enemy;
			}
		}

		if (nearestEnemy != null && shortestDistance <= range) 
		{
			target = nearestEnemy.transform;
		} else 
		{
			target = null;
		}
	}
	
	// Update is called once per frame
	void Update () {
		if (target == null) 
		{
			return;
		}

		if (fireCountdown <= 0f) 
		{
			Shoot ();
			fireCountdown = 1f / fireRate;
		}

		fireCountdown -= Time.deltaTime;
	}

	void Shoot ()
	{
		
		GameObject bulletGO = (GameObject)Instantiate (bulletPrefab, firePoint.position, firePoint.rotation);
		Bullet bullet = bulletGO.GetComponent <Bullet> ();

		if (bullet != null) 
		{
			bullet.Seek(target);
		}
		Debug.Log ("Shoot");
	}


}
Codigo Bala Arreglado

Code: Select all

using UnityEngine;

public class Bullet : MonoBehaviour {

	private Transform target;

	public float speed = 20f;

	public void Seek (Transform _target)
	{
		target = _target;
	}

	// Use this for initialization
	void Start () {
		
	}
	
	// Update is called once per frame
	void Update () {
		if (target == null) 
		{
			Destroy(gameObject);
			return;
		}
		Vector3 dir = target.position - transform.position;
		float distanceThisFrame = speed * Time.deltaTime;

		if (dir.magnitude <= distanceThisFrame) 
		{
			HitTarget ();
			return;
		}

		transform.Translate (dir.normalized * distanceThisFrame, Space.World);
	}

	void HitTarget ()
	{
		Debug.Log ("Hit");
		Destroy (gameObject);
	}
}
¿Que se va a hacer?
Se arreglaran las torretas del diseño del juego y se comenzara a hacer los scripts para la construccion de torretas para el juego , por el momento estas torretas no sera con recursos
¿Que dificultades se tuvo?
En el momento del arreglo del codigo ningua
"Anime was a mistake" Hayao Miyasaki
"Those who identify as "otaku", they sicken me deeply" also Hayao Miyasaki



-------
Juan Camilo Lasso Gutierrez
Programación Orientada a Objetos

User avatar
AdrianOsorio
Posts: 8
Joined: Thu Jul 26, 2018 6:24 am

Re: Uribe.Inc - StickMan Fortress

Post by AdrianOsorio » Wed Aug 29, 2018 10:54 pm

¿Que se hizo?
Se desarrollo el codigo para generar las torres al clickear una base
¿Que se va a hacer?
Se desarrollaran los sprites de las torres
¿Que dificultades se tuvo?
Ninguna

Code: Select all

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

public class clicktorre : MonoBehaviour {

	public GameObject torre;
	void OnMouseDown()
	{
		GameObject temporal;
		Vector3 pos = this.transform.position;
		pos.y = pos.y + .4f;
		temporal = Instantiate(torre);
		temporal.transform.position = pos;
		temporal.layer = 5;
		Destroy(this.gameObject);
	}

}
Last edited by AdrianOsorio on Mon Sep 10, 2018 9:57 pm, edited 2 times in total.
"Todos se rien de mi por ser diferente yo me rio de ellos gracias al crotolamo..." Jesus de Nazaret 1988 D.C


Adrian Osorio Restrepo

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

Re: Uribe.Inc - StickMan Fortress

Post by xacarana » Tue Sep 04, 2018 6:18 am

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

User avatar
Juanlasso
Posts: 13
Joined: Thu Jul 26, 2018 6:24 am

Re: Uribe.Inc - StickMan Fortress

Post by Juanlasso » Mon Sep 10, 2018 9:54 pm

¿Que se hizo?
Se comenzo la realizacion del Overlay de la tienda
Image
?Que se va a hacer?
Se organizara el overlay con sprites
?Que dificultades se tuvo?
Se presenta la dificultad de que la camara esta en una posicion maluca, por lo cual se va a organizar esta para arreglar la vista en general
"Anime was a mistake" Hayao Miyasaki
"Those who identify as "otaku", they sicken me deeply" also Hayao Miyasaki



-------
Juan Camilo Lasso Gutierrez
Programación Orientada a Objetos

User avatar
AdrianOsorio
Posts: 8
Joined: Thu Jul 26, 2018 6:24 am

Re: Uribe.Inc - StickMan Fortress

Post by AdrianOsorio » Mon Sep 10, 2018 11:12 pm

¿Que se hizo?
Se organizo el numero de spawns de las oleadas
¿Que se va a hacer?
se desarrollaran las torretas en 2d
¿Que dificultades se tuvo?
se dieron dificultades en el desplazamiento de los sprites que spawnean
Image
Image
"Todos se rien de mi por ser diferente yo me rio de ellos gracias al crotolamo..." Jesus de Nazaret 1988 D.C


Adrian Osorio Restrepo

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

Re: Uribe.Inc - StickMan Fortress

Post by xacarana » Tue Sep 11, 2018 6:56 am

Image
  • Falta el diagrama de clases
  • No publicaron avance el jueves
Andrés Bedoya Tobón
Profesor
"I only smile in the dark, I only smile when it's complicated" Raybiez

User avatar
AdrianOsorio
Posts: 8
Joined: Thu Jul 26, 2018 6:24 am

Re: Uribe.Inc - StickMan Fortress

Post by AdrianOsorio » Thu Sep 13, 2018 12:01 am

¿Que se hizo?
Se desarrollo el sprite de las torrestas
¿Que se va a hacer?
Se programaran las torrestas para que disparen en 2d
¿Que dificultades se tuvo?
Ninguna
Image
"Todos se rien de mi por ser diferente yo me rio de ellos gracias al crotolamo..." Jesus de Nazaret 1988 D.C


Adrian Osorio Restrepo

Post Reply