HELHEIM - ANUNNAKI STUDIOS

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
kriptonauta
Posts: 29
Joined: Tue Jan 22, 2019 6:36 am

Re: HELHEIM - ANUNNAKI STUDIOS

Post by kriptonauta » Fri Apr 05, 2019 6:48 am

¿Qué hemos hecho?

Mejora significativa del salto del jugador


Programar un GameObject que gira con respecto al mouse, que luego sera programado con el jugador para ser su ataque (Va a lanzar Hachas)
Pequeños cambios en el escenario con respecto a la accesibilidad e interacción del jugador

¿Qué se va a hacer?
  • Programar la interfaz de usuario y configuración de sonido, etc.
  • Programación de un enemigo que dispara al jugador
  • Diseño de Mini-Boss y objeto de salud
  • Diseño de barrera con limite de monedas al llegar al boss final
  • Adición de plataformas que se tambalean (con ejes)
¿Qué dificultades hemos tenido?
Ninguna

CÓDIGO

Code: Select all

private float jumptimecounter;
    public float JumpTime;

    
    public float maxSpeed = 5f;
    public float speed = 2f;
    public bool grounded;
    public float jumpPower;
    public bool attack;

    
    private Rigidbody2D rb2d;
    private Animator anim;
    private bool jump;
   
    
    
    void Start()
    {
        rb2d = GetComponent<Rigidbody2D>();
        anim = GetComponent<Animator>();
        
    }


    void Update()
    {
        anim.SetFloat("Speed", Mathf.Abs(rb2d.velocity.x));
        anim.SetBool("Grounded", grounded);
        anim.SetBool("Attack", attack);

        if (Input.GetKeyDown(KeyCode.W))
        {
           
            if (grounded)
            {
                jumptimecounter = JumpTime;
                jump = true;

            }
        }

        if (Input.GetKey(KeyCode.W))
        {
            if (jumptimecounter > 0)
            {
                jump = true;
                jumptimecounter -= Time.deltaTime;

            }
        }

        if (Input.GetKeyDown(KeyCode.L))
        {
            attack = true;
        }
        else
            attack = false;
        
    }

    void FixedUpdate()
    {
        Vector3 fixedVelocity = rb2d.velocity;
        fixedVelocity.x *= 0.85f;
        if (grounded)
        {
            rb2d.velocity = fixedVelocity;
        }

        float h = Input.GetAxis("Horizontal");

        rb2d.AddForce(Vector2.right * speed * h);

        float limitedSpeed = Mathf.Clamp(rb2d.velocity.x, -maxSpeed, maxSpeed);

        rb2d.velocity = new Vector2(limitedSpeed, rb2d.velocity.y);

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

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

        if (jump == true)
        {
            rb2d.AddForce(Vector2.up * jumpPower, ForceMode2D.Impulse);
            jump = false;
        }
       

    }
Last edited by kriptonauta on Tue Apr 09, 2019 6:56 am, edited 4 times in total.
Javier Santiago Arango :idea:
– La existencia es azarosa. No tiene ningún patrón seguro que podamos imaginar después de haberlo observado fijamente por demasiado tiempo.
Programación orientada a objetos

User avatar
kriptonauta
Posts: 29
Joined: Tue Jan 22, 2019 6:36 am

Re: HELHEIM - ANUNNAKI STUDIOS

Post by kriptonauta » Tue Apr 09, 2019 11:21 pm

¿Qué hicimos?
Diseñamos un arma que el jugador controle con el mouse para disparar hachas. El código de abajo registra la posición del Mouse y altera el ángulo de inclinación del objeto deseado respecto a esa posición.

Code: Select all

public float offset;
    private void Update()
    {
        Vector3 difference = Camera.main.ScreenToWorldPoint(Input.mousePosition) - transform.position;
        float rotZ = Mathf.Atan2(difference.y, difference.x)*Mathf.Rad2Deg;
        transform.rotation = Quaternion.Euler(0f, 0f,rotZ+offset);
    }
¿Qué vamos a hacer?
  • Programar la interfaz de usuario y configuración de sonido, etc.
  • Programación de un enemigo que dispara al jugador
  • Diseño de Mini-Boss y objeto de salud
  • Diseño de barrera con limite de monedas al llegar al boss final
  • Adición de plataformas que se tambalean (con ejes)
¿Qué problemas hemos tenido?
Problemas al cambiar el pivote de un GameObject (No encontramos información de como hacerlo)
Javier Santiago Arango :idea:
– La existencia es azarosa. No tiene ningún patrón seguro que podamos imaginar después de haberlo observado fijamente por demasiado tiempo.
Programación orientada a objetos

User avatar
jacobo.be_
Posts: 17
Joined: Tue Jan 22, 2019 6:21 am

Re: HELHEIM - ANUNNAKI STUDIOS

Post by jacobo.be_ » Thu Apr 11, 2019 4:11 pm

¿Que hicimos?
  • Se añadió y se programó un curable para que la vida de el jugador aumente al ser recolectado
Image
  • Jacobo

Code: Select all

private void OnCollisionEnter2D(Collision2D collision)
    {
        if (collision.gameObject.CompareTag("player"))
        {
            collision.gameObject.GetComponent<Health>().hp += cura;
        }
    }
    private void OnTriggerEnter2D(Collider2D collision)
    {
        if (collision.gameObject.CompareTag("player"))
        {
            Destroy(this.gameObject);
        }
    }


¿Que vamos a hacer?
  • Terminar de hacer ajustes a la mecánica de salto
    Comenzar a incluir arte para el fondo
¿Que dificultades se han tenido?
  • Mecánica de salto
    Establecer medida estandar y resolución para el diseño de tiles
Jacobo Bedoya Patiño
FUNDAMENTOS DE PROGRAMACIÓN
:geek:

User avatar
jacobo.be_
Posts: 17
Joined: Tue Jan 22, 2019 6:21 am

Re: HELHEIM - ANUNNAKI STUDIOS

Post by jacobo.be_ » Fri Apr 19, 2019 10:37 am

¿Que hicimos?
  • Se añadieron prefabs de arboles en el escenario para crear escenografía
    ¿Que vamos a hacer?
    • Se van a remplazar sprites el personaje por sprites definitivas
      Image
Last edited by jacobo.be_ on Wed Apr 24, 2019 12:02 am, edited 2 times in total.
Jacobo Bedoya Patiño
FUNDAMENTOS DE PROGRAMACIÓN
:geek:

User avatar
kriptonauta
Posts: 29
Joined: Tue Jan 22, 2019 6:36 am

Re: HELHEIM - ANUNNAKI STUDIOS

Post by kriptonauta » Tue Apr 23, 2019 11:56 pm

¿Qué hicimos?
  • Reemplazamos el Idle del jugador por las sprites finales, junto con el de saltar y el correr.
    Image
    Image
    Image
    Image
  • Se corrigieron las mécanicas de salto
  • Se programaron plataformas que rotan
¿Qué vamos a hacer?
  • Programar la interfaz de usuario y configuración de sonido, etc.
  • Programación de un enemigo que dispara al jugador
  • Diseño de Mini-Boss
  • Diseño de barrera con limite de monedas al llegar al boss final
¿Qué problemas hemos tenido?
  • Ninguno por el momento
Last edited by kriptonauta on Thu Apr 25, 2019 11:24 pm, edited 1 time in total.
Javier Santiago Arango :idea:
– La existencia es azarosa. No tiene ningún patrón seguro que podamos imaginar después de haberlo observado fijamente por demasiado tiempo.
Programación orientada a objetos

User avatar
kriptonauta
Posts: 29
Joined: Tue Jan 22, 2019 6:36 am

Re: HELHEIM - ANUNNAKI STUDIOS

Post by kriptonauta » Thu Apr 25, 2019 10:51 pm

¿Qué hicimos?
  • Programar un marcador que se mueve en la dirección que se mueve el mouse e indica al jugador hacia adonde apunta con su disparo
  • El siguiente código calcula por ArcTan la posición angular del mouse y transforma la posición del marcador respecto a esta

    Code: Select all

    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine;
    
    public class Weapon : MonoBehaviour
    {
        public float offset;
        public GameObject proyectile;
        public Transform shotPoint;
        private float TimeBShots;
        public float StartBtS;
    
        private void Update()
        {
            Vector3 difference = Camera.main.ScreenToWorldPoint(Input.mousePosition) - transform.position;
            float rotZ = Mathf.Atan2(difference.y, difference.x)*Mathf.Rad2Deg;
            transform.rotation = Quaternion.Euler(0f, 0f,rotZ+offset);
    
            if (TimeBShots <= 0)
            {
    
                if (Input.GetMouseButtonDown(0))
                {
                    Instantiate(proyectile, shotPoint.position, transform.rotation);
                    TimeBShots = StartBtS;
                }
            
            }
            else
            {
                TimeBShots -= Time.deltaTime;
            }
        }
    }
    
¿Qué vamos a hacer?
  • Programar la interfaz de usuario y configuración de sonido, etc.
  • Diseño de Mini-Boss
  • Diseño de barrera con limite de monedas al llegar al boss final
  • Programación de un enemigo que dispara al jugador
  • Programamos la muerte del jugador, y checkpoints
¿Qué problemas hemos tenido?
  • Ninguno por el momento
Last edited by kriptonauta on Thu May 09, 2019 5:11 pm, edited 1 time in total.
Javier Santiago Arango :idea:
– La existencia es azarosa. No tiene ningún patrón seguro que podamos imaginar después de haberlo observado fijamente por demasiado tiempo.
Programación orientada a objetos

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

Re: HELHEIM - ANUNNAKI STUDIOS

Post by xacarana » Tue Apr 30, 2019 7:10 am

Image

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

User avatar
jacobo.be_
Posts: 17
Joined: Tue Jan 22, 2019 6:21 am

Re: HELHEIM - ANUNNAKI STUDIOS

Post by jacobo.be_ » Mon May 06, 2019 8:41 pm

¿Qué hicimos ?
  • Programamos un menú principal primitivo para el juego

Code: Select all

 public void CargarEscena(string NombreDeEscena)
    {
        SceneManager.LoadSceneAsync(NombreDeEscena);
 }

    public void Salir ()
    {
        Application.Quit();
        Debug.Log("Has Salido");
    }
¿Qué vamos a hacer?
  • Vamos a poner las animaciones del personaje con los sprites reales
  • Programar menú de pausa
  • Comenzar a diseñar tileset para el escenario
¿Qué problemas hemos tenido?
Remplazo de sprites en las animaciones
Jacobo Bedoya Patiño
FUNDAMENTOS DE PROGRAMACIÓN
:geek:

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

Re: HELHEIM - ANUNNAKI STUDIOS

Post by xacarana » Thu May 09, 2019 5:35 pm

Image

Se ve muy bien.
Andrés Bedoya Tobón
Profesor
"I only smile in the dark, I only smile when it's complicated" Raybiez

User avatar
kriptonauta
Posts: 29
Joined: Tue Jan 22, 2019 6:36 am

Re: HELHEIM - ANUNNAKI STUDIOS

Post by kriptonauta » Sat May 11, 2019 7:32 am

¿Que hemos hecho?
  • Programar la muerte y el restart del jugador.

    Code: Select all

    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine;
    using UnityEngine.SceneManagement;
    public class GameOver : MonoBehaviour
    {
        public Health h;
        //Cito el Script que contiene la barra de vida
        void Start()
        {
            
        }
    
        
        void FixedUpdate()
        {
            if (h.hp<=0)
                
            {
                SceneManager.LoadScene(2);
            }
        }
        // Cuando esta barra de vida llegue a 0, se cambiará a la escena donde se le indica al jugador que perdio
    }
    
    
  • Reemplazar la animaciones dentro del juego.
  • Programar plataformas deslizantes.
¿Qué vamos a hacer?
  • Vamos a poner las animaciones del personaje con los sprites reales
  • Programar menú de pausa
  • Comenzar a diseñar tileset para el escenario
¿Qué problemas hemos tenido?
  • Reemplazo de sprites en las animaciones
  • Reemplazo de sprites en las tiles
  • Problemas con el collab de unity
Javier Santiago Arango :idea:
– La existencia es azarosa. No tiene ningún patrón seguro que podamos imaginar después de haberlo observado fijamente por demasiado tiempo.
Programación orientada a objetos

Post Reply