- 1

Diseño y Prototipado Rápido de RPGs con Unity
00:15 - 2

Creación de un Roguelike en 2D con Unity
08:29 - 3

Corte y Configuración de Sprites para Videojuegos en Unity
08:21 - 4

Creación de Paletas y Capas en Unity para Diseñar Escenarios 2D
13:02 - 5

Capas de Ordenación y Colisiones en Unity para Videojuegos 2D
06:40 - 6
Uso de Gráficos en Proyectos de Unity
00:15
Control de Diálogos y Movimiento en Videojuegos con Unity
Clase 48 de 60 • Curso Avanzado de Creación de RPGs con Unity
Contenido del curso
- 7

Controlador de Movimiento en Unity: Script PlayerController
10:39 - 8

Animación de Personajes en Unity: Creación de Clips y Timelines
08:07 - 9

Creación y gestión de animaciones en Unity con Animator
09:54 - 10

Creación de Blend Trees para Animaciones de Personajes
09:55 - 11

Controlador y Animador de Personajes en Unity
09:25 - 12

Programación de cámara que sigue al jugador en Unity 2D
07:56 - 13

Corrección de Bugs Gráficos en Unity: Creación de Materiales Adecuados
02:48 - 14

Colisiones y Movimiento en Unity con Rigidbody 2D
12:56 - 15

Diseño y Creación de Escenarios en Videojuegos 2D
02:56
- 20

Configuración de Enemigos en Videojuegos: Animaciones y Física
05:18 - 21

Programación de Movimiento Aleatorio para Enemigos en Juegos de Rol
12:01 - 22

Aleatoriedad en el Movimiento de Enemigos en Videojuegos
05:53 - 23

Detección de Colisiones y Reinicio en Unity
07:34 - 24

Gestión de Vida en Videojuegos: Creación de un Manager de Vida
07:35 - 25

Configuración de Armas y Colisiones en Unity para Videojuegos 2D
09:30 - 26

Programación de Vida y Daño en Enemigos de Videojuegos
04:41 - 27

Animación de Espada en Unity para Personajes 2D
11:04 - 28

Animaciones de Ataque en Unity con Blend Tree y Parámetros
03:46 - 29

Programación de Ataques y Animaciones en Videojuegos
09:11 - 30

Normalización de Velocidad en Movimiento Diagonal en Unity
09:49 - 31

Optimización de Código en Controladores de Juego
07:26 - 32

Efectos Visuales y Colisiones en Ataques de Videojuegos
17:00 - 33

Creación de Efectos de Explosión con Partículas en Unity
12:46 - 34

Crear un Canvas de Daño en Unity para Videojuegos
08:59 - 35

Programación de Texto de Daño en Unity
12:27 - 36

Creación de un HUD para mostrar la barra de vida en videojuegos
07:47 - 37

Creación y Gestión de un UI Manager en Unity para Videojuegos
13:24
- 38

Efectos Visuales de Daño en Unity: Parpadeo y Color de Texto
11:14 - 39

Implementación de sistema de experiencia y niveles en videojuegos de rol
11:22 - 40

Implementación de Estadísticas de Nivel en Juegos de Rol
11:57 - 41

Sistema de Defensa y Niveles en RPG: Implementación y Ajustes
08:58 - 42

Creación y Movimiento de NPCs en Videojuegos RPG
12:52 - 43

Limitación de Movimiento para NPCs en Unity
08:31 - 44

Diseño de Interfaz de Diálogo en Videojuegos con Unity
11:38 - 45

Programación de diálogos interactivos para NPCs en videojuegos
07:14 - 46

Implementación de Diálogos Dinámicos en Videojuegos de Rol
07:44 - 47

Control de Movimiento del NPC durante Diálogos en Videojuegos
07:38 - 48

Control de Diálogos y Movimiento en Videojuegos con Unity
09:28
- 49

Creación y Gestión de Misiones en Juegos de Rol
11:13 - 50

Creación de Misiones Triggers en Videojuegos con Unity
12:55 - 51

Creación de Misiones de Recolección en Videojuegos
10:22 - 52

Creación de Misiones para Derrotar Enemigos en Videojuegos
10:00 - 53

Corrección de Bugs en Diálogos y Animaciones de Videojuegos
06:52 - 54

Límites de cámara en juegos 2D: implementación y ajuste
12:53 - 55

Ajuste Dinámico de Límites de Cámara en Unity
08:35
¿Cómo parar al protagonista de nuestro videojuego durante un diálogo?
El mundo de la programación nos ofrece múltiples formas de abordar un problema, y aquí nos centraremos en cómo detener al personaje principal de nuestro videojuego, un entrañable conejito aun sin nombre. Para lograrlo, revisaremos un script originalmente diseñado para controlar el movimiento del personaje, el Player Controller.
Añadir una variable para el diálogo
Comenzaremos añadiendo una nueva variable para manejar cuándo el jugador está en un diálogo. Esta variable ayudará a determinar si debe detenerse el movimiento del conejito durante una conversación.
public bool playerTalking;
Para asegurarnos que al iniciar el videojuego el personaje no esté hablando, podemos inicializar esta variable en false en el método Start:
playerTalking = false;
Ahora, modificaremos nuestro update para detener al personaje cuando está conversando:
if (playerTalking)
{
playerRigidBody.velocity = Vector2.zero;
return;
}
Este simple control asegura que al iniciar un diálogo, el protagonista se detiene en seco, pausando tanto el movimiento como las animaciones.
¿Cómo sincronizar el diálogo con el control del jugador?
Una vez establecido cómo detenemos el personaje, es crucial mantener esta sincronización entre el diálogo y el control del jugador. Para esto, usamos el script Dialog Manager.
Notificar al Player Controller desde el Dialog Manager
Primero, haremos referencia al Player Controller dentro del Dialog Manager para iniciar y finalizar los diálogos de manera efectiva.
private PlayerController playerController;
Procedemos a inicializarlo en Start con:
playerController = FindObjectOfType<PlayerController>();
Luego, cuando se inicia un diálogo, notificamos al Player Controller que el personaje está hablando:
playerController.playerTalking = true;
De igual manera, al finalizar un diálogo, necesitamos indicar que la conversación terminó para que el jugador pueda volver a moverse:
playerController.playerTalking = false;
¿Cómo expandir nuestro juego con nuevos NPCs y áreas de movimiento?
Una vez configurados los scripts, podemos empezar a agregar nuevos elementos y expandir el mundo de nuestro juego, creando prefabs tanto para los NPCs como para las zonas de diálogo. Un prefab es una plantilla que facilita la creación de múltiples instancias de un objeto en Unity.
Creación de prefabs para NPCs
Arrastramos nuestro NPC a la sección inferior de Unity para crear automáticamente un prefab. Esto nos permite replicar el mismo NPC en diferentes ubicaciones o variarlo fácilmente.
Agregar personajes adicionales
Imagina que hemos añadido otro personaje, Ricarda, cerca de la casa de nuestro amigo Ricardo. Al seleccionar un aspecto diferente para Ricarda, no solo variamos el diseño, sino también las interacciones posibles:
- NPCs adicionales: añadir nuevos personajes le da vida al poblado, incentivando al jugador a explorar.
- Zonas de movimiento: podemos definir áreas específicas de movimiento para evitar que los personajes se muevan fuera de su contexto.
Para personalizar el diálogo de Ricarda, le asignamos líneas únicas y definimos una villager zone – la zona en la que se mueve:
Hola, soy Ricarda. ¿Has visto a mi marido?
Esta expansión no solo profundiza la narrativa, sino que también incrementa la jugabilidad y la interacción, permitiendo que cada jugador modele el mundo a su gusto. Al animar a los estudiantes a crear más personajes y líneas de diálogo, se les instiga a perfeccionar sus habilidades en programación y creatividad, asegurando que su juego sea único y memorable.