- 1

Programación Básica: Fundamentos y Creación de Proyectos en Línea
00:51 - 2

Programación Básica en Google Chrome: Variables y Funciones
08:12 - 3

Creación de una Página Web Básica con HTML
06:40 - 4

Estructura Básica de un Documento HTML
05:15 - 5

Estructura y funcionamiento básico de HTML y JavaScript
07:57 - 6

Instalación y uso básico de Visual Studio Code para programar
06:39 - 7

Declaración y Uso Básico de Variables en JavaScript
03:24 - 8

Programación de Piedra, Papel o Tijera en JavaScript
09:44 - 9

Programación de Piedra, Papel o Tijera en JavaScript
10:02 - 10

Generación de Números Aleatorios con JavaScript
10:32 - 11

Creación y uso de funciones en programación
14:05 - 12

Ciclos y Condiciones en Programación: Piedra, Papel o Tijera
04:11 - 13

Programación de un Juego de Piedra, Papel o Tijera en JavaScript
09:55 - 14

Manejo de Rutas y Archivos en Sistemas Operativos y Desarrollo Web
08:05 - 15

Manipulación del DOM y Eventos en JavaScript para Juegos Web
06:34 Quiz Fundamentos de Programación
Programación de Piedra, Papel o Tijera en JavaScript
Clase 9 de 84 • Curso Gratis de Programación Básica
Contenido del curso
- 16

Maquetación de Páginas Web para Videojuegos en HTML
14:12 - 17

Selección de Mascotas en HTML para Juegos Interactivos
12:53 - 18

Programar eventos de clic en botones HTML con JavaScript
15:23 - 19

Eventos de Carga en JavaScript: Iniciar Juego y Seleccionar Mascota
13:47 - 20

Selección de Mascota en JavaScript: Implementación y Validación
12:40 - 21

Manipulación del DOM con JavaScript para mostrar mascota seleccionada
11:14 - 22

Selección Aleatoria de Mascota Enemiga en JavaScript
12:31 - 23

Eventos de clic y lógica de ataque en JavaScript
12:16 - 24

Ataques Aleatorios para Mascotas Enemigas en JavaScript
08:43 - 25

Creación de Mensajes Dinámicos en Combate HTML y JavaScript
13:07 - 26

Lógica de Combate en JavaScript para Juego Mokepon
14:49 - 27

Operadores Lógicos en Programación: AND, OR y NOT
14:40 - 28

Actualización de Vidas en Juego de Combate con JavaScript
09:27 - 29

Validación de Vidas y Mensajes Finales en Juegos
08:48 - 30

Funcionalidad de Reinicio y Desactivación de Botones en Juego
10:56 - 31

Mostrar y ocultar secciones en HTML con JavaScript
15:12 Quiz Desarrollando un juego con HTML y JavaScript
- 32

Estilos CSS: Selectores, Propiedades y Valores
11:54 - 33

Tipos de Visualización en CSS: Display Block, Inline e Inline Block
06:48 - 34

Alineación de Elementos con Flexbox en CSS
10:56 - 35

Modelo de Caja en CSS: Espaciado y Bordes
10:00 - 36

Diseño y Estilo de Páginas Web con HTML y CSS
17:27 - 37

Estilos CSS para Botones en Juegos: Diseño de Pantallas Interactivas
08:37 - 38

Estilos CSS para Mejorar la Interfaz de un Juego
09:28 - 39

Estilizado de Pantallas de Juego con CSS y Flexbox
11:06 - 40

Separación de mensajes y estilos en JavaScript y HTML
21:10 - 41

CSS Grid: Organiza Elementos en Rejillas Bidimensionales
11:32 - 42

Diseño Responsivo con CSS: Media Queries y Flexbox
11:09 - 43

Pseudoclases en CSS: Mejora la Interacción del Usuario
08:31 Quiz Estilos con CSS
- 44

Optimización de Código JavaScript con Clases y Objetos
06:29 - 45

Optimización de Código JavaScript: Variables y Funciones
18:20 - 46

Clases y Objetos: Fundamentos para Optimizar Juegos
03:47 - 47

Construcción de Clases y Objetos en JavaScript
10:18 - 48

Uso de Arreglos para Almacenar Objetos en JavaScript
06:49 - 49

Agregar ataques a objetos en JavaScript
13:47 - 50

Renderizado Dinámico de Objetos en HTML con JavaScript
16:27 - 51

Solución de errores en variables y elementos HTML en JavaScript
07:22 - 52

Uso de Objetos para Centralizar Información en JavaScript
04:44 - 53

Selección de Mascota Aleatoria en JavaScript
07:07 - 54

Iteración de Arreglos y Manipulación DOM en JavaScript
12:17 - 55

Crear Función "mostrarAtaques" en JavaScript para Juegos
13:06 - 56

Eventos de Clic en Botones con JavaScript
20:45 - 57

Secuencia de Ataques y Validación de Resultados en JavaScript
15:53 - 58

Implementación de lógica de combate en juegos JavaScript
18:41 - 59

Programación de Juegos: Lógica de Ataques y Victorias
12:44 - 60

Optimización y Corrección de Errores en Juegos Web con JavaScript
13:33 Quiz Optimización de código
- 61

Dibujo y manejo de gráficos en Canvas con JavaScript
10:40 - 62

Movimiento de Capipepo en Canvas con HTML y JavaScript
05:54 - 63

Movimiento Continuo de Personajes en Canvas con JavaScript
11:04 - 64

Eventos de Teclado para Controlar Personajes en Juegos
08:23 - 65

Pintar Fondos y Personajes en Canvas HTML
12:03 - 66

Métodos de Clases en JavaScript para Juegos Interactivos
09:16 - 67

Detección de Colisiones en Videojuegos con JavaScript
13:00 - 68

Programación de eventos y colisiones en un juego interactivo
10:40 - 69

Ajuste Responsivo de Mapas en Pantallas con JavaScript
09:04 - 70

Estilos Responsivos en HTML y CSS para Mapas Interactivos
06:59 Quiz Mapa con canvas
- 71

Desarrollo de Juegos Multijugador con Cliente-Servidor y API
08:38 - 72

Instalación de Node.js en Windows para desarrollo backend
05:45 - 73

Uso básico de la terminal de comandos y Node.js
08:59 - 74

Creación de un Servidor Básico con Express.js en Node.js
08:19 - 75

Conceptos Clave de URIs y Verbos HTTP en Node.js
07:07 - 76

Desarrollo de API con Node.js y Comunicación Frontend-Backend
12:47 - 77

Selección de Mokepon y Comunicación JSON en Express.js
25:43 - 78

Implementación de un Endpoint para Coordenadas de Jugadores en Node.js
11:12 - 79

Integración de Coordenadas de Jugadores en Mokepon Multijugador
23:03 - 80

Optimización de Coordenadas en Videojuegos con JavaScript
05:17 - 81

Batalla Final en Mokepon: Implementación de Colisiones y Back-End
13:02 - 82

Implementación de Ataques en Tiempo Real para Videojuego Mokepon
10:42 Quiz Backend: videojuego multijugador
Ya construimos la base de nuestro juego de piedra, papel o tijera. Ahora pongámoslo a funcionar. Esta es la segunda parte del ejercicio de programar un juego de piedra, papel o tijera que planteamos la clase anterior. Visita la clase si deseas ver cómo llegamos hasta aquí 😉
¿Dónde nos quedamos?
Aquí nos quedamos. Compáralo con tu código, o construye el tuyo para continuar la clase 🙂
💡 Ojo, no copies y pegues si no lo has hecho aún. Al contrario, aprovecha la oportunidad para practicar 😉
Sin embargo, si tienes problemas para visualizarlo por el tamaño de la ventana, prueba copiandolo y pegandolo en un archivo HTML diferente al tuyo en Visual Studio Code. Ahí deberías poder verlo bien 👍
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Algoritmo piedra, papel o tijera</title>
<script>
//OBTENIENDO LA ELECCIÓN DEL JUGADOR
let eleccionDelJugador = 0;
eleccionDelJugador = prompt( "Elige: 1 para piedra, 2 para papel, 3 para tijera" );
// alert( "Elegiste " + jugador );
//INFORMANDO LA ELECCIÓN DEL JUGADOR
if ( eleccionDelJugador == 1 ) {
alert( "Elegiste piedra" );
}
else if ( eleccionDelJugador == 2 ) {
alert( "Elegiste papel" )
}
else if ( eleccionDelJugador == 3 ) {
alert( "Elegiste tijera" )
}
else {
alert( "Elegiste otra cosa, así no puedes jugar >-<" )
}
</script>
</head>
<body>
<h1>Piedra, papel o tijera</h1>
</body>
</html>
La elección de la computadora
Necesitamos un oponente para este juego, así que primero debemos trabajar en la elección de la computadora.
Lógico quieres que la computadora elija una opción al azar para el juego. Pero eso lo construiremos en la clase de aleatoriedad 😉 Mientras tanto, usa comentarios y espacios para crear un apartado dónde escribiremos este código más tarde; y escribe en una línea que la computadora. Elige una de las tres opciones (puede ser la que tú quieras, con los números que empleamos para la elección del jugador).
¿Ya lo hiciste? Inténtalo por tu cuenta, y luego compáralo con el código aquí abajo 😉
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Algoritmo piedra, papel o tijera</title>
<script>
//OBTENIENDO LA ELECCIÓN DEL JUGADOR
let eleccionDelJugador = 0;
eleccionDelJugador = prompt( "Elige: 1 para piedra, 2 para papel, 3 para tijera" );
// alert( "Elegiste " + jugador );
//INFORMANDO LA ELECCIÓN DEL JUGADOR
if ( eleccionDelJugador == 1 ) {
alert( "Elegiste piedra" );
}
else if ( eleccionDelJugador == 2 ) {
alert( "Elegiste papel" )
}
else if ( eleccionDelJugador == 3 ) {
alert( "Elegiste tijera" )
}
else {
alert( "Elegiste otra cosa, así no puedes jugar >-<" )
}
//OBTENIENDO LA ELECCIÓN DEL COMPUTADOR
let eleccionDelComputador = 1;
</script>
</head>
<body>
<h1>Piedra, papel o tijera</h1>
</body>
</html>
Anunciando la elección del computador
Antes de proceder, planteemos un momento como queremos que se produzca el juego:
- El juego pide su elección al jugador, y luego le informa cuál fue su elección.
- El juego asigna una elección a la computadora, y luego le informa al jugador la elección de la computadora.
- El juego evalúa ambas elecciones, decide el ganador, y muestra un mensaje informando el veredicto.
Por lo tanto, ahora que la computadora ya eligió, crea un apartado que informe la elección de la computadora con un alert() 🙂 crea un apartado para esto, y recicla el código que usaste para informar la elección del jugador para que muestre ahora la elección del computador 😉
💡 ¡Por cierto! También puedes usar emojis en los mensajes. Puedes utilizarlos desde la emojipedia o, si estás en windows, puedes pulsar Win+”.” para abrir la ventana de emojis 🙂
Hazlo tú y pruébalo en el navegador para validar que esté funcionando bien. Luego compáralo con el código de abajo antes de continuar 😉
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Algoritmo piedra, papel o tijera</title>
<script>
//OBTENIENDO LA ELECCIÓN DEL JUGADOR
let eleccionDelJugador = 0;
eleccionDelJugador = prompt( "Elige: 1 para 🥌, 2 para 📄, 3 para ✂️" );
// alert( "Elegiste " + jugador );
//INFORMANDO LA ELECCIÓN DEL JUGADOR
if ( eleccionDelJugador == 1 ) {
alert( "Elegiste 🥌" );
}
else if ( eleccionDelJugador == 2 ) {
alert( "Elegiste 📄" )
}
else if ( eleccionDelJugador == 3 ) {
alert( "Elegiste ✂️" )
}
else {
alert( "Elegiste otra cosa, así no puedes jugar 😣" )
}
//OBTENIENDO LA ELECCIÓN DEL COMPUTADOR
let eleccionDelComputador = 1;
//INFORMANDO LA ELECCION DEL COMPUTADOR
if ( eleccionDelComputador == 1 ) {
alert( "La computadora eligió 🥌" );
}
else if ( eleccionDelComputador == 2 ) {
alert( "La computadora eligió 📄" )
}
else if ( eleccionDelComputador == 3 ) {
alert( "La computadora eligió ✂️" )
}
else {
alert( "Cometí un error programando la elección del computador 🙃" )
}
</script>
</head>
<body>
<h1>Piedra, papel o tijera</h1>
</body>
</html>
¿Quién gana y quién pierde?
Crea un nuevo apartado para saber si ganas o pierdes. Allí debes escribir condiciones para evaluar:
- Cuándo empatas.
- Cuándo ganas.
- Cuándo pierdes.
Luego de evaluar esto, utiliza un alert() para informarle al jugador si ganó, empató o perdió 👍
💡 Ojo, puedes evaluar varias condiciones a la vez en un solo if si separas las condiciones con un &&. Por ejemplo:
if ( eleccionDelJugador = 1 && eleccionDelComputador = 3 ) {
alert( "¡GANASTE! 🥳" );
}
Empieza escribiendo la condición de empate (que es la más fácil) y luego escribe las demás. Inténtalo, pruébalo en el navegador, cambia la elección del computador para validar que en serio todo funciona, y luego compara tu código con el ejemplo de abajo 👍
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Algoritmo piedra, papel o tijera</title>
<script>
//OBTENIENDO LA ELECCIÓN DEL JUGADOR
let eleccionDelJugador = 0;
eleccionDelJugador = prompt( "Elige: 1 para 🥌, 2 para 📄, 3 para ✂️" );
// alert( "Elegiste " + jugador );
//INFORMANDO LA ELECCIÓN DEL JUGADOR
if ( eleccionDelJugador == 1 ) {
alert( "Elegiste 🥌" );
}
else if ( eleccionDelJugador == 2 ) {
alert( "Elegiste 📄" )
}
else if ( eleccionDelJugador == 3 ) {
alert( "Elegiste ✂️" )
}
else {
alert( "Elegiste otra cosa, así no puedes jugar 😣" )
}
//OBTENIENDO LA ELECCIÓN DEL COMPUTADOR
let eleccionDelComputador = 1;
//INFORMANDO LA ELECCION DEL COMPUTADOR
if ( eleccionDelComputador == 1 ) {
alert( "La computadora eligió 🥌" );
}
else if ( eleccionDelComputador == 2 ) {
alert( "La computadora eligió 📄" )
}
else if ( eleccionDelComputador == 3 ) {
alert( "La computadora eligió ✂️" )
}
else {
alert( "Cometí un error programando la elección del computador 🙃" )
}
//DECIDIENDO EL GANADOR
if ( eleccionDelJugador == eleccionDelComputador ) {
alert( "¡EMPATE! 🤼" );
}
else if ( eleccionDelJugador == 1 && eleccionDelComputador == 3 ) {
alert( "¡GANASTE! 🥳" );
}
else if ( eleccionDelJugador == 2 && eleccionDelComputador == 1 ) {
alert( "¡GANASTE! 🥳" );
}
else if ( eleccionDelJugador == 3 && eleccionDelComputador == 2 ) {
alert( "¡GANASTE! 🥳" );
}
else {
alert( "PERDISTE... 😢" );
}
</script>
</head>
<body>
<h1>Piedra, papel o tijera</h1>
</body>
</html>
¿Te divertiste?
Existen muchos caminos para llegar a la misma solución. Puedes abordar el problema de varias formas y personalizarlo a tu gusto. Si te dio error en algún lado, no te preocupes. Resolver errores en el código es la mitad del trabajo de un programador. Desarrolla tu tolerancia a la frustración, y tómalo como parte del oficio.
Experimenta un poco con tu código, personalízalo y cuando estés listo continúa a la clase de aleatoriedad para que aprendas a hacer que la computadora elija por si misma lo que va a jugar 😁
Contribución creada por: Jhonkar Sufia (Platzi Contributor).