Rookie Awards 2024 - Open for Entries!
Running Out Time
Share

Running Out Time

Juan Carlos Maroto Arellano
by juancarrrr on 9 Oct 2023

Evolución Infinita es un emocionante juego de estilo "endless runner" que te llevará a un mundo fascinante y desafiante donde la velocidad y los reflejos son tus mejores aliados. En este juego, los jugadores asumen el papel de un valiente corredor en un universo en constante evolución.

0 104 0
Round of applause for our sponsors

Este juego fue creado para brindar entretenimiento y diversión a los jugadores. Se trata de un emocionante "procedural runner" en el que los jugadores asumen el papel de un corredor que atraviesa niveles generados de manera procedural, lo que garantiza una experiencia única y desafiante en cada partida. ¡Prepárate para correr, saltar y esquivar obstáculos en este emocionante juego de realidad aumentada!

Character Controller

Public class PlayerController:

Esto declara una clase llamada PlayerController que hereda de MonoBehaviour, lo que significa que este script se adjunta a un GameObject en Unity y se ejecutará como parte del comportamiento de ese objeto.

Public Vector3 gravity, jumpSpeed : 

Estas dos variables públicas te permiten ajustar las configuraciones de gravedad y velocidad de salto directamente desde el Inspector en Unity.

Bool isGrounded: 

Aquí se declara una variable booleana llamada isGrounded, que se utilizará para rastrear si el jugador está en el suelo o en el aire.

Rigidbody rb:

Se declara una variable Rigidbody llamada rb, que se utilizará para acceder al componente Rigidbody adjunto al GameObject al que se adjunta este script.

Void Awake(): 

Este método se llama al comienzo de la ejecución. En él, se configura la gravedad del mundo utilizando el valor de gravity que se proporciona en el Inspector y se obtiene una referencia al componente Rigidbody del GameObject.

Void Update(): 

Este método se llama en cada fotograma. En él, se verifica si se presiona la tecla de espacio (KeyCode.Space) y si isGrounded es true. Si ambas condiciones son verdaderas, el Rigidbody del jugador se le asigna una velocidad igual a jumpSpeed, y isGrounded se establece en false para indicar que el jugador está en el aire.

Private void OnCollisionEnter(Collision collision): 

Este método se llama cuando el GameObject colisiona con otro objeto en el juego. Aquí, cuando el jugador colisiona con algo (posiblemente el suelo u otros objetos), isGrounded se establece en true, lo que significa que el jugador está en el suelo.

En resumen, este script controla el comportamiento del jugador en términos de gravedad y saltos. Cuando el jugador presiona la tecla de espacio y está en el suelo, el jugador salta con la velocidad especificada en jumpSpeed. La variable isGrounded se utiliza para asegurarse de que el jugador solo pueda saltar cuando está en el suelo.

Scroll Lateral

Public float scrollFactor:

Esta variable pública te permite ajustar un factor de desplazamiento desde el Inspector en Unity. Este factor probablemente se utilizará para controlar la velocidad de desplazamiento del juego.

Public Vector3 gameVelocity:

Otra variable pública, esta vez para configurar la velocidad del juego desde el Inspector en Unity.

Rigidbody rb:

Se declara una variable Rigidbody llamada rb.

Void Start(): 

Este método se llama al comienzo de la ejecución. En él, se obtiene una referencia al componente Rigidbody del GameObject y se le asigna una velocidad igual a gameVelocity multiplicado por scrollFactor. Esto probablemente controla el movimiento del juego en una dirección específica.

Void OnTriggerExit(Collider gameArea): 

Este método se llama cuando el GameObject sale de un área colisionable (trigger). Esto podría ser una forma de reciclar el terreno del juego cuando el jugador se desplaza más allá de cierto límite.

Private void OnCollisionEnter(Collision other): 

Este método se llama cuando el GameObject colisiona con otro objeto en el juego. En este caso, se utiliza para cargar la escena actual nuevamente (SceneManager.LoadScene(SceneManager.GetActiveScene().name)), lo que posiblemente se haga cuando el jugador colisiona con un objeto que indica el fin del juego o un reinicio.

En resumen, este script controla aspectos relacionados con el movimiento y las interacciones en el juego, incluyendo la velocidad, el desplazamiento lateral y la recarga de la escena en caso de colisiones.

Otros Scripts

Cambio de Escena

Public void JugarPrincipal(): 

Esta función se encarga de cargar la escena llamada "Juego". Se utiliza para iniciar el juego principal desde, por ejemplo, un botón en el menú principal.

Public void MenuOpciones(): 

Esta función carga la escena llamada "Opciones". Se suele usar para permitir a los jugadores acceder a un menú de opciones o configuración desde el menú principal o durante el juego.

Public void SalirJuego(): 

Esta función utiliza Application.Quit() para cerrar la aplicación. En otras palabras, se utiliza para salir del juego. Ten en cuenta que esto solo funcionará en compilaciones del juego (por ejemplo, una versión ejecutable) y no en el Editor de Unity.

Public void VolverAlMenu(): 

Esta función carga la escena llamada "Menu". Se utiliza para permitir a los jugadores volver al menú principal desde otras partes del juego, como después de completar un nivel o en el menú de opciones.

Estas funciones son comunes en juegos de Unity y se utilizan para gestionar la transición entre diferentes partes del juego, lo que facilita la creación de una experiencia de usuario fluida y la navegación dentro del juego.

Volumen_Menu

Public Slider slider:

Esto declara una variable pública del tipo Slider, que probablemente se asigna desde el Inspector en Unity. Este Slider se utilizará para permitir a los jugadores ajustar el volumen del audio.

Public float sliderValue:

Esta variable pública almacena el valor actual del Slider, que representa el volumen del audio.

Public Image imagenMute: 

Aquí se declara una variable pública del tipo Image, que probablemente se utiliza para mostrar un ícono de silencio (como un altavoz tachado) cuando el volumen está en cero.

Private void Start():  

En él, se configura el valor del Slider con el valor almacenado en PlayerPrefs bajo la clave "volumenAudio". Si no se encuentra un valor almacenado, se establece un valor predeterminado de 0.3. Luego, se actualiza el volumen del audio en el juego (AudioListener.volume) para que coincida con el valor del Slider y se llama a ComprobarsiEstaMute() para verificar si el volumen está en silencio.

Public void ChangeSlider(float value): 

Esta función se llama cuando se cambia el valor del Slider. Actualiza sliderValue con el nuevo valor y guarda ese valor en PlayerPrefs con la clave "volumenAudio". Luego, ajusta el volumen del audio en el juego y llama a ComprobarsiEstaMute() para verificar si el volumen está en silencio.

Public void ComprobarsiEstaMute(): 

Esta función verifica si el valor de sliderValue es igual a cero. Si es así, muestra la imagen del ícono de silencio (habilitando imagenMute.enabled). Si no es igual a cero, desactiva la imagen del ícono de silencio.

En resumen, este script permite a los jugadores ajustar el volumen del audio del juego mediante un Slider y muestra un ícono de silencio cuando el volumen está en cero. También almacena la configuración de volumen en las preferencias del jugador para que se conserve entre sesiones de juego.

Mi Website: 

Esta es mi página web


Comments (0)

This project doesn't have any comments yet.