Desert Space - Jump Motherfucker

En esta sección se realizará el seguimiento de los proyectos de semestre, con los respectivos avances periódicos según lo definido en la metodología SCRUM.

Moderator: julianmartinez16

User avatar
Awaketo
Posts: 29
Joined: Thu Jul 18, 2019 9:29 am

Re: Desert Space - Jump Motherfucker

Post by Awaketo » Fri Sep 06, 2019 1:41 am

Image

Animación junto al código del disparo, no se sabe si se va dejar ese prefab de bala.
Juan Osorio Ceballos
Estudiante de fundamentos de programación. :geek:
Gyga Tryhard

User avatar
Awaketo
Posts: 29
Joined: Thu Jul 18, 2019 9:29 am

Re: Desert Space - Jump Motherfucker

Post by Awaketo » Fri Sep 06, 2019 1:43 am

Code: Select all

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

public class arma : MonoBehaviour {

    public Transform puntoTiro;
    public GameObject BalaPrefab;
    AudioSource disparo;
    [SerializeField] float  coldown = 2f, time = 0f;
    [SerializeField]
    AudioClip mdisparo;

    //[SerializeField] int ammo = 10, currentAmmo = 0;

    // Use this for initialization
    void Awake () {
        time = coldown;
       // currentAmmo = ammo;
		
	}

    void Start()
    {
        disparo = GetComponent<AudioSource>();
    }

    // Update is called once per frame
    void Update () {
		if (Input.GetButtonDown("Fire1") && time >= coldown)
        {

            time = 0f;
            Disparar();
            disparo.clip = mdisparo;
            disparo.Play();
        }

        if (time < coldown)
        {
            time += Time.deltaTime;
        }


	}

    void Disparar()
    {
        Instantiate(BalaPrefab, puntoTiro.position, puntoTiro.rotation);
    }
}
Código de disparo.
Juan Osorio Ceballos
Estudiante de fundamentos de programación. :geek:
Gyga Tryhard

User avatar
EliteP
Posts: 29
Joined: Thu Jul 18, 2019 9:31 am

Re: Desert Space - Jump Motherfucker

Post by EliteP » Fri Sep 06, 2019 2:30 am

Vida del jugador

El jugador ahora posee un valor de vida que se le puede ser otorgado a gusto y al perderla toda este se destruye y reinicia la escena


Prueba de la perdida de vida:

Image


Se usaron dos codigos para esto:


Este primero es el que determina que hace daño al jugador

Code: Select all

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;
using UnityEngine.UI;

public class VidaPlayer : MonoBehaviour
{
    public int vida;
    public float restartDelay = 1f;
    



    // Start is called before the first frame update
    void Start()
    {
        if (vida <= 0)
        {


            StartCoroutine(RestartGame());





        }
    }

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

    public void OnTriggerEnter2D(Collider2D col)
    {
        if (col.tag == "Enemigo")
        {
            Vida2.Corazones.QuitarVida ();
            vida = Vida2.Corazones.vida;
        }

      

        if (vida <= 0)
        {
            Destroy(gameObject);
            //GameOverManager.gameOverManager.CallGameOver();
            





        }
        if (vida <= 0)
        {
         
            
            StartCoroutine(RestartGame());





        }

    }

    public IEnumerator RestartGame()
    {
        yield return new WaitForSeconds(2f);
        SceneManager.LoadScene(SceneManager.GetActiveScene().name);
    }
}



Y este segundo determina la vida que se pierde

Code: Select all

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

public class Vida2 : MonoBehaviour
{

    public GameObject[] corazones;
    public int vida = 5;
    public static Vida2 Corazones;

    // Start is called before the first frame update
    void Start()
    {
        Corazones = this;
    }

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

    }

    public void AgregarVida()
    {
        if (vida >= 5)
            return;

        corazones[vida].SetActive(true);
        vida += 1;
    }

    public void QuitarVida()
    {
        if (vida <= 0)
            return;

        vida -= 1;
        corazones[vida].SetActive(false);
    }
       
    

 }
Emanuel Perez, estudiante
"Keelah Se'lai"

User avatar
EliteP
Posts: 29
Joined: Thu Jul 18, 2019 9:31 am

Re: Desert Space - Jump Motherfucker

Post by EliteP » Wed Sep 11, 2019 11:32 pm

¿Qué hemos hecho?
Se animo la animacion del disparo del personaje principal
Se programo el codigo que determinara la cantidad de salud,perder y recuperar vida; que puede ser usada para el personaje principal y los enemigos


¿Qué vamos a hacer?
Juntar codigos y prefabs para tener un archivo de trabajo conjunto
Programar el daño del disparo del personaje principal
Agregar el HUB para permitir al jugador visualizar la vida del personaje

¿Qué dificultades hemos tenido?
Las plataformas en movimiento que se realizo con los videos proporcionados dan un error despues de programar la primera plataforma

Sprint 09

Inicio: 6/09/2019
Final: 12/09/2019

Tareas
Ver el video de la semana(todos)
Programas el daño de la bala y la destruccion del enemigo(Juan)
Mejorar el codigo de salto(Emanuel)
programar el HUB de la vida(Mateo)
Emanuel Perez, estudiante
"Keelah Se'lai"

User avatar
Awaketo
Posts: 29
Joined: Thu Jul 18, 2019 9:29 am

Re: Desert Space - Jump Motherfucker

Post by Awaketo » Mon Sep 16, 2019 7:48 pm

Image

El código de arma, ya venía con las proporciones de daño, solo se añadió un personaje con "vida", se estableció una relación de daño-salud del enemigo, Y se vinculó a la bala.
Juan Osorio Ceballos
Estudiante de fundamentos de programación. :geek:
Gyga Tryhard

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

Re: Desert Space - Jump Motherfucker

Post by xacarana » Tue Sep 17, 2019 11:27 am

Image

¡Strike! No están respondiendo a las preguntas de seguimiento, falta la planeación del sprint.
Andrés Bedoya Tobón
Profesor
"I only smile in the dark, I only smile when it's complicated" Raybiez

User avatar
EliteP
Posts: 29
Joined: Thu Jul 18, 2019 9:31 am

Re: Desert Space - Jump Motherfucker

Post by EliteP » Wed Sep 18, 2019 10:23 pm

¿Qué hemos hecho?
Se programo la interaccion del disparo

¿Qué vamos a hacer?

Terminar el diseño del primer nivel
Mejorar el movimiento del jugador
Programar HUB y sistema de puntuacion

¿Qué dificultades hemos tenido?

Hubo errores en la compatibilidad de la carpeta del juego entre nosotros(los desarrolladores)
El personaje tenia un bug que le hacia atravesar el suelo si caia muy fuerte

Sprint 10

Inicio: 13/09/2019
Final: 19/09/2019

Tareas

Ver el video de la semana(todos)
Preparar la presentacion para la pre-entrega(todos)
Terminar el diseño del primer nivel y que sea jugable (Emanuel)
Programar el coleccionable (Emanuel y Mateo)
Crear y programar el conteo de puntos por PickUp(Mateo)
Mejorar el movimiento del jugador para que no se creen fallos(Juan)
Programar las animciones del personaje para que concuerden con el movimiento(Juan)
Last edited by EliteP on Thu Sep 19, 2019 5:37 am, edited 1 time in total.
Emanuel Perez, estudiante
"Keelah Se'lai"

User avatar
EliteP
Posts: 29
Joined: Thu Jul 18, 2019 9:31 am

Re: Desert Space - Jump Motherfucker

Post by EliteP » Thu Sep 19, 2019 2:32 am

Se completo el diseño del primer nivel completable en Unity


Image

Se programaron las animaciones para que coincidieran con las animaciones

Image

Image
Emanuel Perez, estudiante
"Keelah Se'lai"

User avatar
EliteP
Posts: 29
Joined: Thu Jul 18, 2019 9:31 am

Re: Desert Space - Jump Motherfucker

Post by EliteP » Thu Sep 19, 2019 5:01 am

Se animo el PickUp que tenia anteriormente interaccio ncon el personaje


Image


Se hizo una distribucion de los PickUps


Image


Se creo un Canvas de texto que muestra el escore


Image


Los Pick Ups otorgan puntos


Image



Codigo para mostrar los puntos

Code: Select all

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

public class ControlPuntos : MonoBehaviour
{
    public static int Score = 0; //Indica desde donde se empieza a contar
    public string ScoreString = "Energia:"; //Permite modificar que dice el texto

    public Text TextScore;

    public static ControlPuntos Gamecontroller;


    void Awake()
    {
        Gamecontroller = this;
    }

    void Start()
    {
        
    }

  
    void Update()
    {
        if (TextScore != null )
        {
            TextScore.text = ScoreString + Score.ToString();  //Realiza la suma 
        }
    }
}
Codigo del puntaje en el PlayerController

Code: Select all

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

public class PlayerController : MonoBehaviour
{
    public int Puntaje = 1; 

    public float speed = 2f;      //Permite elegir la velocidad
    public float maxSpeed = 5f;   //Establece un valor maximo de velocidad
    public bool grounded;         // booleanos que permite muestra si se encuentra o no en "el suelo"
    public float jumpPower = 6.5f;//Permite elegir la distancia del salto

    private Rigidbody2D rb2d;
    private Animator anim;         //Permite la animacion
    private bool jump;

    // Start is called before the first frame update
    void Start()
    {
        rb2d = GetComponent<Rigidbody2D>();
        anim = GetComponent<Animator>();
    }

    // Update is called once per frame
    void Update()
    {
        anim.SetFloat("Speed", Mathf.Abs(rb2d.velocity.x));   //Determina si se encuentra o no en el suelo y permite o no realizar un salto
        anim.SetBool("Grounded", grounded);

        if (Input.GetKeyDown(KeyCode.UpArrow) && grounded)
        {
            jump = true;
        }
    }

    private void FixedUpdate()
    {
        float h = Input.GetAxis("Horizontal");

        rb2d.AddForce(Vector2.right * speed * h);                           //Determina las direcciones con respecto a la velocidad

       if (rb2d.velocity.x > maxSpeed)
        {
            rb2d.velocity = new Vector2(maxSpeed, rb2d.velocity.y);             
        }
        if (rb2d.velocity.x < -maxSpeed)
        {
            rb2d.velocity = new Vector2(-maxSpeed, rb2d.velocity.y);
        }

        if (h > 0.1f)
        {
            transform.localScale = new Vector3(1f, 1f, 1f);
        }

        if (h< -0.1f)
        {
            transform.localScale = new Vector3(-1f, 1f, 1f);
        }

        if (jump)
        {
            rb2d.AddForce(Vector2.up * jumpPower, ForceMode2D.Impulse);             //Determinar la distancia de salto 
            jump = false;
        }
        Debug.Log(rb2d.velocity.x);

    }
    void OnTriggerEnter2D(Collider2D other)
    {

        if (other.gameObject.CompareTag("PickUp"))      //Al colisionar con el objeto con dicha Tag este se desactivara 
        {

            other.gameObject.SetActive(false);
            ControlPuntos.Score += Puntaje;             //Al colisionar con este objeto tambien sumara +1 al puntaje
            
        }
        
    }

}
Especificamente

Image

Image
Emanuel Perez, estudiante
"Keelah Se'lai"

User avatar
EliteP
Posts: 29
Joined: Thu Jul 18, 2019 9:31 am

Re: Desert Space - Jump Motherfucker

Post by EliteP » Thu Sep 19, 2019 5:28 am

Se agrego un enemigo moviendose en uan de las plataformas

Image

(El codigo utilziado es el mismo que el de las plataformas moviles)
Emanuel Perez, estudiante
"Keelah Se'lai"

Post Reply