- 1

Programación de Videojuegos en Unity con C#
04:03 - 2

Creación y organización de proyectos 2D en Unity
11:00 - 3

Uso de Sprite Atlas en Unity para Optimizar Recursos Visuales
12:00 - 4

Animación de Personajes en Unity: Creación y Control de Sprites
10:01 - 5

Transiciones de Animaciones en Unity para Videojuegos 2D
15:04 - 6

Creación de Prefabs y Física Básica en Unity 2D
12:15 - 7

Conceptos de Física en Videojuegos con Unity: Colliders y RigidBodies
08:56 - 8

Creación y Uso de Colliders y Scripts en Unity para Videojuegos
13:56 - 9

Métodos Awake y Start en Unity para Configuración Inicial
12:39 - 10

Detección de Colisión con Raycast en Unity para Saltos Precisos
13:31 - 11

Uso de Gizmos y Física en Unity para Desarrollo de Videojuegos
06:37 - 12

Cambio de Animaciones de Personaje con Animator en Unity
09:21 - 13

Animación de Salto en Videojuegos: Creación de Estados Dinámicos
02:37 - 14

Animaciones y Transiciones en Unity Mechanim
04:59 - 15

Movimiento automático y control del personaje en Unity
10:52
Notificación de Recolección de Pociones en Unity
Clase 41 de 53 • Curso de C# para Videojuegos
Contenido del curso
- 16

Creación y Gestión de un Game Manager en Videojuegos
14:30 - 17

Implementación de Singletons en Programación de Videojuegos
07:03 - 18

Transición de Estados en Videojuegos con Unity: Menú a Juego
05:30 - 19

Configuración de Controles en Unity: Uso del Input Manager
12:22 - 20

Configuración de Input Manager en Unity para Juegos
03:02 - 21

Creación de Zonas de Muerte con Colliders y Triggers en Unity
13:13 - 22

Función de Reset en Videojuegos 2D: Reinicio y Corrección de Bugs
09:18 - 23

Corrección de Bugs en Reaparición y Reinicio en Unity
08:16
- 24

Diseño de Niveles: Creación Manual y Procedural en Videojuegos
08:44 - 25

Diseño Procedural de Niveles en Videojuegos: Pixel Perfect en Unity
10:30 - 26

Gestión de Bloques de Nivel en Videojuegos con Unity
12:27 - 27

Implementación de ExitZone para Destrucción de Bloques en Videojuegos
08:36 - 28

Generación Procedural de Niveles en Unity: Object Pooling y Optimización
14:55 - 29

Implementación de Cámara Follow en Videojuegos 2D con Unity
13:25 - 30

Destrucción de Bloques y Generación Procedural en Videojuegos
07:37 - 31

Corrección de errores en el Game Manager de videojuegos
08:48 - 32

Sincronización de Cámara y Fondo en Videojuegos 2D
06:11
- 33

El canvas en Unity
10:25 - 34

Diseño de Menú de Inicio en Videojuegos con Canvas
09:41 - 35

Programación de Funcionalidades de Botones en Unity
12:15 - 36

Diseño de Canvas para Pantalla de Juego y Game Over
03:36 - 37

Programación de Script para Interfaz de Juego en Unity
09:18 - 38

Incorporación de Objetos Recolectables en Unity
13:43 - 39

Implementación de un sistema de recolección de monedas en Unity
12:19 - 40

Programación de Pociones de Vida y Maná en Videojuegos
05:49 - 41

Notificación de Recolección de Pociones en Unity
09:19 - 42

Diseño e Implementación de Barras de Vida y Maná en Unity
12:23 - 43

Cálculo de Puntuación y Persistencia en Videojuegos con Unity
09:41 - 44

Implementación de Super Salto en Unity con Uso de Maná
07:31
- 45

Creación de Plataformas Móviles en Unity con Animaciones
09:13 - 46

Scripts y Triggers para Plataformas Móviles en Videojuegos 2D
07:58 - 47

Programación de Enemigos Móviles en Unity con C#
06:38 - 48

Implementación de Fixed Update para Movimiento de Enemigos en Unity
06:50 - 49

Programación de colisiones para enemigos en videojuegos
11:27 - 50

Corrección de Bugs en Colisiones y Vida de un Personaje en Videojuegos
12:00 - 51

Control de Vida y Muerte de Personaje en Videojuegos
03:54 - 52

Añadir Música de Fondo en Videojuegos con Unity
08:56 - 53

Implementación de Efectos de Sonido en Videojuegos con Unity
06:37
¿Cómo se notifica al jugador que ha recogido una poción?
Implementar una comunicación efectiva entre los diferentes componentes del juego es crucial para mejorar la experiencia de los jugadores. En este caso, aprenderás a notificar al jugador cuando recoja una poción de vida o de maná. Antes de comenzar, es importante saber que el Player Controller no es una instancia única o singleton, lo que implica que necesitamos acceder a él de forma diferente, generalmente a través de su GameObject asociado.
Para llevar a cabo esta tarea, usaremos los siguientes pasos:
-
Buscar el GameObject del Jugador: Utilizaremos la clase
GameObjectpara localizar al jugador. Podemos hacerlo con el siguiente comando:GameObject player = GameObject.Find("Player"); -
Obtener el Componente Player Controller: Una vez identificado el objeto jugador, necesitamos acceder a su
Player Controllery notificarle la recolecta de la poción:PlayerController playerController = player.GetComponent<PlayerController>(); -
Notificar la Recolección: Dependiendo de si se recogió una poción de vida o de maná, llamaremos al método correspondiente desde el controlador del jugador.
-
Para una poción de vida:
playerController.CollectHealth(10); // Suponiendo que '10' es el valor de la vida a recoger -
Para una poción de maná:
playerController.CollectMana(10); // Asumiendo que '10' es el valor del maná a recoger
-
¿Cómo optimizar la búsqueda y el acceso al Player Controller?
Una vez que comprendemos el flujo básico de notificación, optimizar el acceso al Player Controller nos ayudará a hacer el código más eficiente y limpio:
-
Definir
GameObject playercomo una Variable Privada: Esto permitirá inicializarlo una sola vez en el métodoStart, evitando búsquedas repetitivas innecesarias:private GameObject player; void Start() { player = GameObject.Find("Player"); } -
Uso Centralizado del Player Controller: Al tener
playerdefinido globalmente, puedes acceder al controlador del jugador cada vez que sea necesario, sin necesidad de consultas reiteradas:PlayerController playerController = player.GetComponent<PlayerController>();
¿Cómo personalizar visualmente las pociones?
La personalización visual es clave para distingir los diferentes tipos de pociones en el juego. Exploremos cómo lograr esta diferenciación de manera sencilla y efectiva:
-
Asignar el Script Collectable: Asegúrese de asignar el script
collectablea las nuevas pociones para que estén plenamente funcionales. -
Configurar Tipo y Valor de Recuperación: Al arrastrar la poción al entorno del juego, especificar si se trata de una poción de vida o maná, y ajustar el número de puntos que debería recuperar.
-
Diferenciación Visual:
- Usar el Tintado de Color: Accede al
Sprite Rendererde la poción y, con el cuentagotas, selecciona un color adecuado (ej. rojo para poción de vida, azul para maná). - Ajustar la Intensidad: Puedes suavizar el color seleccionado para que no se confunda con otros elementos del entorno usando el control de opacidad.
- Usar el Tintado de Color: Accede al
-
Colocación de Collider: Añade un
Circle Collidera cada poción, ajustándolo a su tamaño para que solo se activen al contacto deseado.
Al seguir estos pasos, tendrás tus pociones listas tanto funcional como visualmente, ampliando la experiencia y la jugabilidad del entorno que estás desarrollando. Continúa experimentando e innovando, siempre recordando que la clave está en los pequeños detalles que enriquecen el juego.