diff --git a/.gitattributes b/.gitattributes index de0bfc06c9a034a2bb6cdd2566ab9e67a1aab487..8e01af9635110294d0e4cda3c4b6e84e1b0ec4d2 100644 --- a/.gitattributes +++ b/.gitattributes @@ -286,3 +286,7 @@ subir/Curso[[:space:]]Práctico[[:space:]]de[[:space:]]C/09-Finalizando[[:space: subir/Curso[[:space:]]Práctico[[:space:]]de[[:space:]]C/09-Finalizando[[:space:]]nuestro[[:space:]]proyecto/04-Conexión[[:space:]]de[[:space:]]Jugador[[:space:]]y[[:space:]]Coordenadas[[:space:]]en[[:space:]]Mapas[[:space:]]de[[:space:]]Videojuegos.mp4 filter=lfs diff=lfs merge=lfs -text subir/Curso[[:space:]]Práctico[[:space:]]de[[:space:]]C/09-Finalizando[[:space:]]nuestro[[:space:]]proyecto/05-Carga[[:space:]]y[[:space:]]Lectura[[:space:]]de[[:space:]]Archivos[[:space:]]para[[:space:]]Mapas[[:space:]]en[[:space:]]Juegos.mp4 filter=lfs diff=lfs merge=lfs -text subir/Curso[[:space:]]Práctico[[:space:]]de[[:space:]]C/09-Finalizando[[:space:]]nuestro[[:space:]]proyecto/06-Colisiones[[:space:]]y[[:space:]]Movimiento[[:space:]]en[[:space:]]Juegos[[:space:]]2D[[:space:]]con[[:space:]]C.mp4 filter=lfs diff=lfs merge=lfs -text +subir/Curso[[:space:]]Práctico[[:space:]]de[[:space:]]C/09-Finalizando[[:space:]]nuestro[[:space:]]proyecto/07-Colisiones[[:space:]]y[[:space:]]restricciones[[:space:]]de[[:space:]]movimiento[[:space:]]en[[:space:]]mapas[[:space:]]de[[:space:]]juegos.mp4 filter=lfs diff=lfs merge=lfs -text +subir/Curso[[:space:]]Práctico[[:space:]]de[[:space:]]C/09-Finalizando[[:space:]]nuestro[[:space:]]proyecto/08-Colisiones[[:space:]]y[[:space:]]Portadas[[:space:]]en[[:space:]]Videojuegos[[:space:]]Implementación[[:space:]]en[[:space:]]C.mp4 filter=lfs diff=lfs merge=lfs -text +subir/Curso[[:space:]]Práctico[[:space:]]de[[:space:]]C/09-Finalizando[[:space:]]nuestro[[:space:]]proyecto/09-Creación[[:space:]]de[[:space:]]Juegos[[:space:]]de[[:space:]]Aventuras[[:space:]]en[[:space:]]C[[:space:]]Laberintos[[:space:]]y[[:space:]]Cofres[[:space:]]del[[:space:]]Tesoro.mp4 filter=lfs diff=lfs merge=lfs -text +subir/Curso[[:space:]]Práctico[[:space:]]de[[:space:]]C/09-Finalizando[[:space:]]nuestro[[:space:]]proyecto/10-Programación[[:space:]]Orientada[[:space:]]a[[:space:]]Objetos[[:space:]]en[[:space:]]Videojuegos[[:space:]]Básicos.mp4 filter=lfs diff=lfs merge=lfs -text diff --git a/subir/.cache/huggingface/.gitignore b/subir/.cache/huggingface/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..f59ec20aabf5842d237244ece8c81ab184faeac1 --- /dev/null +++ b/subir/.cache/huggingface/.gitignore @@ -0,0 +1 @@ +* \ No newline at end of file diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/01-C\303\263mo usar ChatGPT como copiloto para acelerar tu productividad.mp4.lock" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/01-C\303\263mo usar ChatGPT como copiloto para acelerar tu productividad.mp4.lock" new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/01-C\303\263mo usar ChatGPT como copiloto para acelerar tu productividad.mp4.metadata" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/01-C\303\263mo usar ChatGPT como copiloto para acelerar tu productividad.mp4.metadata" new file mode 100644 index 0000000000000000000000000000000000000000..6ea98de68687a67e8c9efc88c384dff57bd68b5b --- /dev/null +++ "b/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/01-C\303\263mo usar ChatGPT como copiloto para acelerar tu productividad.mp4.metadata" @@ -0,0 +1,8 @@ +1762797052.7740073 +31363892 +0 +be4dd8d64ab39f5790dc538f2ad163540a7601c281ef2a36bd47c9d831989da9 +lfs + +1 +1 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/01-C\303\263mo usar ChatGPT como copiloto para acelerar tu productividad.vtt.lock" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/01-C\303\263mo usar ChatGPT como copiloto para acelerar tu productividad.vtt.lock" new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/01-C\303\263mo usar ChatGPT como copiloto para acelerar tu productividad.vtt.metadata" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/01-C\303\263mo usar ChatGPT como copiloto para acelerar tu productividad.vtt.metadata" new file mode 100644 index 0000000000000000000000000000000000000000..3fd8aa5903c557f94575313c36cfaf552ed1c24c --- /dev/null +++ "b/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/01-C\303\263mo usar ChatGPT como copiloto para acelerar tu productividad.vtt.metadata" @@ -0,0 +1,8 @@ +1762796718.856397 +1991 +0 +9b3db355252aae8fa440d1dd04ff142fccf61fd224aea34f661befc50190185f +regular + +0 +1 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/01-Resumen.html.lock" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/01-Resumen.html.lock" new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/01-Resumen.html.metadata" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/01-Resumen.html.metadata" new file mode 100644 index 0000000000000000000000000000000000000000..214b09513a01fbd1d2ac3e655729448ca61a4478 --- /dev/null +++ "b/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/01-Resumen.html.metadata" @@ -0,0 +1,8 @@ +1762796718.8565338 +592175 +0 +695b91b4977006360dc7cd8d8dba7e0084a72aa7e5f8d1e8bd30bed460f455ea +regular + +0 +1 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/02-Qu\303\251 es ChatGPT y c\303\263mo funciona la inteligencia artificial generativa.mp4.lock" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/02-Qu\303\251 es ChatGPT y c\303\263mo funciona la inteligencia artificial generativa.mp4.lock" new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/02-Qu\303\251 es ChatGPT y c\303\263mo funciona la inteligencia artificial generativa.mp4.metadata" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/02-Qu\303\251 es ChatGPT y c\303\263mo funciona la inteligencia artificial generativa.mp4.metadata" new file mode 100644 index 0000000000000000000000000000000000000000..3b2b7be6c36fbd8bc17d5766bd30e4e262b96866 --- /dev/null +++ "b/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/02-Qu\303\251 es ChatGPT y c\303\263mo funciona la inteligencia artificial generativa.mp4.metadata" @@ -0,0 +1,8 @@ +1762797052.774149 +77156688 +0 +48ff58352eb9c0f112bb86dc0b5b4b9625b227b4d67fa968dd2bcff443921f11 +lfs + +1 +1 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/02-Qu\303\251 es ChatGPT y c\303\263mo funciona la inteligencia artificial generativa.vtt.lock" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/02-Qu\303\251 es ChatGPT y c\303\263mo funciona la inteligencia artificial generativa.vtt.lock" new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/02-Qu\303\251 es ChatGPT y c\303\263mo funciona la inteligencia artificial generativa.vtt.metadata" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/02-Qu\303\251 es ChatGPT y c\303\263mo funciona la inteligencia artificial generativa.vtt.metadata" new file mode 100644 index 0000000000000000000000000000000000000000..f42d4b3c1dcda47e4c4790a4631884454101a789 --- /dev/null +++ "b/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/02-Qu\303\251 es ChatGPT y c\303\263mo funciona la inteligencia artificial generativa.vtt.metadata" @@ -0,0 +1,8 @@ +1762796718.856672 +5430 +0 +ab5750ad00fe18271e81995ad1195051a468c4bb00cd9f8000c84238013466e1 +regular + +0 +1 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/02-Resumen.html.lock" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/02-Resumen.html.lock" new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/02-Resumen.html.metadata" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/02-Resumen.html.metadata" new file mode 100644 index 0000000000000000000000000000000000000000..1ad13ab8448c851fc30d97ba12991b734a35aa9a --- /dev/null +++ "b/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/02-Resumen.html.metadata" @@ -0,0 +1,8 @@ +1762796718.8568082 +593729 +0 +d265cbeda6ccebc5db767ebcdb1bba3404d340888f91ae77d71bb15a7bd9e4cb +regular + +0 +1 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/03-C\303\263mo crear cuenta en ChatGPT y elegir el plan adecuado.mp4.lock" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/03-C\303\263mo crear cuenta en ChatGPT y elegir el plan adecuado.mp4.lock" new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/03-C\303\263mo crear cuenta en ChatGPT y elegir el plan adecuado.mp4.metadata" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/03-C\303\263mo crear cuenta en ChatGPT y elegir el plan adecuado.mp4.metadata" new file mode 100644 index 0000000000000000000000000000000000000000..f448ea5ce68277915d806eef6bb70a4a04ff5eb6 --- /dev/null +++ "b/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/03-C\303\263mo crear cuenta en ChatGPT y elegir el plan adecuado.mp4.metadata" @@ -0,0 +1,8 @@ +1762797052.7743027 +182595927 +0 +b45ebc8bb0160e17e17e71afdf976a3fa3b7b1ef8ee3de5362e4b6e84c5cac86 +lfs + +1 +1 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/03-C\303\263mo crear cuenta en ChatGPT y elegir el plan adecuado.vtt.lock" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/03-C\303\263mo crear cuenta en ChatGPT y elegir el plan adecuado.vtt.lock" new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/03-C\303\263mo crear cuenta en ChatGPT y elegir el plan adecuado.vtt.metadata" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/03-C\303\263mo crear cuenta en ChatGPT y elegir el plan adecuado.vtt.metadata" new file mode 100644 index 0000000000000000000000000000000000000000..e5222e838d535133e72f39c274da862859cc42dc --- /dev/null +++ "b/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/03-C\303\263mo crear cuenta en ChatGPT y elegir el plan adecuado.vtt.metadata" @@ -0,0 +1,8 @@ +1762796718.8569472 +13390 +0 +4dd4018e2de7fe56efbcaf39b160ce2f61aa60066b4fe26d962921ad828d5f46 +regular + +0 +1 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/03-Resumen.html.lock" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/03-Resumen.html.lock" new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/03-Resumen.html.metadata" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/03-Resumen.html.metadata" new file mode 100644 index 0000000000000000000000000000000000000000..7873428e4f4d47cb4241c34b7f2897f1555222fe --- /dev/null +++ "b/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/03-Resumen.html.metadata" @@ -0,0 +1,8 @@ +1762796718.857096 +595579 +0 +d577a1a8e568348ef43062f3007b812577d25959ff5896e73676480eb0e707b7 +regular + +0 +1 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/04-Quiz.mhtml.lock" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/04-Quiz.mhtml.lock" new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/04-Quiz.mhtml.metadata" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/04-Quiz.mhtml.metadata" new file mode 100644 index 0000000000000000000000000000000000000000..b3fff30a914c283762c50f6a70eae71a1cdc273e --- /dev/null +++ "b/subir/.cache/huggingface/upload/Curso de ChatGPT/01-M\303\263dulo 1 Fundamentos de ChatGPT/04-Quiz.mhtml.metadata" @@ -0,0 +1,8 @@ +1762796718.857241 +643994 +0 +0412479a07c3f57364b8f953f9aaf6fbe64a1455bb938c894e24ead9d37235dc +regular + +0 +1 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/02-M\303\263dulo 2 Uso efectivo de ChatGPT/01-Estrategia flexible de prompting para mejores resultados con IA.mp4.lock" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/02-M\303\263dulo 2 Uso efectivo de ChatGPT/01-Estrategia flexible de prompting para mejores resultados con IA.mp4.lock" new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/02-M\303\263dulo 2 Uso efectivo de ChatGPT/01-Estrategia flexible de prompting para mejores resultados con IA.vtt.lock" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/02-M\303\263dulo 2 Uso efectivo de ChatGPT/01-Estrategia flexible de prompting para mejores resultados con IA.vtt.lock" new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/02-M\303\263dulo 2 Uso efectivo de ChatGPT/01-Resumen.html.lock" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/02-M\303\263dulo 2 Uso efectivo de ChatGPT/01-Resumen.html.lock" new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/02-M\303\263dulo 2 Uso efectivo de ChatGPT/02-Prompting encadenado para tareas complejas con ChatGPT.mp4.lock" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/02-M\303\263dulo 2 Uso efectivo de ChatGPT/02-Prompting encadenado para tareas complejas con ChatGPT.mp4.lock" new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/02-M\303\263dulo 2 Uso efectivo de ChatGPT/02-Prompting encadenado para tareas complejas con ChatGPT.vtt.lock" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/02-M\303\263dulo 2 Uso efectivo de ChatGPT/02-Prompting encadenado para tareas complejas con ChatGPT.vtt.lock" new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/02-M\303\263dulo 2 Uso efectivo de ChatGPT/02-Resumen.html.lock" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/02-M\303\263dulo 2 Uso efectivo de ChatGPT/02-Resumen.html.lock" new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/02-M\303\263dulo 2 Uso efectivo de ChatGPT/03-Conversaci\303\263n por voz con ChatGPT dictado y modo avanzado.mp4.lock" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/02-M\303\263dulo 2 Uso efectivo de ChatGPT/03-Conversaci\303\263n por voz con ChatGPT dictado y modo avanzado.mp4.lock" new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/02-M\303\263dulo 2 Uso efectivo de ChatGPT/03-Conversaci\303\263n por voz con ChatGPT dictado y modo avanzado.vtt.lock" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/02-M\303\263dulo 2 Uso efectivo de ChatGPT/03-Conversaci\303\263n por voz con ChatGPT dictado y modo avanzado.vtt.lock" new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/02-M\303\263dulo 2 Uso efectivo de ChatGPT/03-Resumen.html.lock" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/02-M\303\263dulo 2 Uso efectivo de ChatGPT/03-Resumen.html.lock" new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/02-M\303\263dulo 2 Uso efectivo de ChatGPT/04-Configuraci\303\263n de personalizaci\303\263n y memoria en ChatGPT.mp4.lock" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/02-M\303\263dulo 2 Uso efectivo de ChatGPT/04-Configuraci\303\263n de personalizaci\303\263n y memoria en ChatGPT.mp4.lock" new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/02-M\303\263dulo 2 Uso efectivo de ChatGPT/04-Configuraci\303\263n de personalizaci\303\263n y memoria en ChatGPT.vtt.lock" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/02-M\303\263dulo 2 Uso efectivo de ChatGPT/04-Configuraci\303\263n de personalizaci\303\263n y memoria en ChatGPT.vtt.lock" new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/02-M\303\263dulo 2 Uso efectivo de ChatGPT/04-Resumen.html.lock" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/02-M\303\263dulo 2 Uso efectivo de ChatGPT/04-Resumen.html.lock" new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/02-M\303\263dulo 2 Uso efectivo de ChatGPT/05-Configuraci\303\263n de privacidad y seguridad en ChatGPT.mp4.lock" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/02-M\303\263dulo 2 Uso efectivo de ChatGPT/05-Configuraci\303\263n de privacidad y seguridad en ChatGPT.mp4.lock" new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/02-M\303\263dulo 2 Uso efectivo de ChatGPT/05-Configuraci\303\263n de privacidad y seguridad en ChatGPT.vtt.lock" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/02-M\303\263dulo 2 Uso efectivo de ChatGPT/05-Configuraci\303\263n de privacidad y seguridad en ChatGPT.vtt.lock" new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/02-M\303\263dulo 2 Uso efectivo de ChatGPT/05-Resumen.html.lock" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/02-M\303\263dulo 2 Uso efectivo de ChatGPT/05-Resumen.html.lock" new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git "a/subir/.cache/huggingface/upload/Curso de ChatGPT/02-M\303\263dulo 2 Uso efectivo de ChatGPT/06-Quiz.mhtml.lock" "b/subir/.cache/huggingface/upload/Curso de ChatGPT/02-M\303\263dulo 2 Uso efectivo de ChatGPT/06-Quiz.mhtml.lock" new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git "a/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/07-Colisiones y restricciones de movimiento en mapas de juegos.mp4" "b/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/07-Colisiones y restricciones de movimiento en mapas de juegos.mp4" new file mode 100644 index 0000000000000000000000000000000000000000..959cceec23ab720b70e12080d41ebe6bfdf25b0c --- /dev/null +++ "b/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/07-Colisiones y restricciones de movimiento en mapas de juegos.mp4" @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b305ec138b5a4e85ba47dfa0953a543c96d91d4b119c506ece95fa0b16011972 +size 96069129 diff --git "a/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/07-Colisiones y restricciones de movimiento en mapas de juegos.vtt" "b/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/07-Colisiones y restricciones de movimiento en mapas de juegos.vtt" new file mode 100644 index 0000000000000000000000000000000000000000..4ad9cc858c0c150b6a62190553ecec082ede0fd8 --- /dev/null +++ "b/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/07-Colisiones y restricciones de movimiento en mapas de juegos.vtt" @@ -0,0 +1,293 @@ +WEBVTT + +00:03.839 --> 00:08.390 +lo que hicimos en la clase anterior fue mejorar como se dibuja nuestro mapa, parte de los puedes vacíos + +00:08.400 --> 00:12.750 +y no un montón de seres cmd feos. Eso lo hicimos cambiando el gran Zar enteros. + +00:12.779 --> 00:20.030 +Usa los caracteres y metemos los datos directo del archivo.txt Add nuestro mapa como + +00:20.030 --> 00:25.239 +caracteres y estamos interpretado el carácter como cero que otras tercero siguen + +00:25.239 --> 00:28.260 +una tabla de aquí, que es la tabla de símbolos que te permite la consola. + +00:28.289 --> 00:32.219 +Es una aproximación. Ahora vamos a continuar y vamos a hacer todo Otro personaje no + +00:32.219 --> 00:37.469 +puede traspasar una pared que son representados por uno nuestro código. + +00:37.479 --> 00:42.850 +Lo que vamos a hacer es que Cuando mi hijo se mueve, tiene que poder moverse, pero antes de moverse + +00:42.850 --> 00:46.810 +tiene que checar. Si su siguiente movimiento está ocupado por una pared. + +00:46.820 --> 00:49.740 +Cómo hacemos eso? El jugador le tiene que preguntar al mapa. + +00:49.770 --> 00:53.780 +Oye, mapa. Puedo moverme en esta posición que luego le tiene que responder sí + +00:53.810 --> 01:00.619 +o no? Para eso vamos a lanzar a nuestras Max el punto h. + +01:00.630 --> 01:04.650 +Vamos a enfocar las células de la mapa para que nos dicen si podemos o no hacer eso. + +01:05.040 --> 01:15.069 +Vamos a decir La Ser Yum Pull! No son la función tipo Pull Ando que se llame Es + +01:15.099 --> 01:21.200 +muy esta función Lo que va a hacer es que nos va a revisar si la célula está bloqueado o + +01:21.200 --> 01:28.450 +no por una pared Nuestro código fuente vamos a poner hay que salvar. + +01:29.540 --> 01:33.099 +Vamos a poner Voy No era vull que era el tipo de Touch. + +01:33.099 --> 01:37.980 +Regresa Maxell dos punto dos puntos y acabó remoto. + +01:37.980 --> 01:43.049 +Completa la función y Blog aquí podría rezar retro dentro. + +01:43.439 --> 01:47.969 +Eso que decir que todas celdas están bloqueadas y no pueden ser Camín hables, pero no queremos eso + + --> +. + +01:48.000 --> 01:58.450 +Queremos que si Si nuestro aire es igual igual uno Word que es el símbolo que representa la pared. + +02:00.040 --> 02:05.150 +Vamos a regresar verdadero si es cualquier otra cosa. + +02:10.340 --> 02:22.759 +Vamos a ingresar falso Los en nuestro lugar, en nuestro mapa cuando actualizamos la posición del jugador + + --> +, + +02:22.789 --> 02:30.439 +que es que en puntos De en puntos EPP que aceptamos la selva del jugador Primero + +02:30.439 --> 02:49.849 +tenemos que preguntar Sí, en las células playas DE play El PX fondo CTO Code es + +02:49.849 --> 03:08.150 +no igual igual a falso No estados mover sino que nos dejaran su jugador quieto. + +03:08.539 --> 03:11.090 +Pero cómo hacemos eso? Cómo hacemos que no es un favor? + +03:11.120 --> 03:15.780 +Regresa a su posible anterior porque si se fijaron cuando metemos los inputs, el jugador está + +03:15.780 --> 03:18.840 +cambiando su posición. Hay tres opciones que podemos hacer. + +03:18.870 --> 03:25.000 +La primera es guardar el jugador sus últimas jornadas y, en caso de que no pueda transitar por ahí + + --> +, + +03:25.030 --> 03:28.849 +regresar. La segunda es guardar en la célula del mapa. + +03:29.340 --> 03:34.990 +Sí puede, cuando pasar por ahí que nos quejamos de preguntar y las prendas de esa célula, si no puede + +03:34.990 --> 03:39.909 +pasar, lo queríamos. Sería asignarles las pruebas de la célula anterior al jugador para recetarlo + + --> +. + +03:39.939 --> 03:45.849 +Y la tercera es que el mapa día no, no puedes literal, agarra a jugador y le pongas frenadas a mano + + --> +. + +03:46.240 --> 03:51.629 +Cuál de las tres ustedes creen que es la mejor dejado en su comentario discutiendo cuál + +03:51.629 --> 03:56.530 +harían y si tiene una nueva propuesta no debe poner la Ahora. + +03:56.560 --> 03:59.509 +La solución que yo voy a elegir es la número uno. + +03:59.539 --> 04:04.340 +Es porque el jugador va acordar siempre después de movimientos con las viejas y + +04:04.340 --> 04:07.949 +en caso de que el movimiento sea fallido, va regresarse a su fusión anterior. + +04:08.340 --> 04:14.639 +Para eso vamos a ir a nuestro encabezado de Player punto H empleo, apuntó H. + +04:14.669 --> 04:22.329 +Aparte de las cuerdas y sigue, vamos a ser unas de las ex y LAS DE ESO para presentar las últimas + +04:22.329 --> 04:28.180 +jornadas en las cuales tu jugador y en estos países puntos, el PP, donde modificamos las + +04:28.180 --> 04:33.800 +posiciones del usuario con el input. Vamos a decir que después de modificar antes de modificar el input + + --> +, + +04:33.829 --> 04:40.769 +vamos a guardar la última prenda. Esto es que Las guerras es igual. + +04:40.769 --> 04:57.449 +Ayer vamos a copiar esto K también y en este caso el X dos x que sí, bueno, X Lo + +04:57.449 --> 05:02.790 +que hacemos con esto es guardar una posición en la cual el jugador era aceptado que se moviera para + +05:02.790 --> 05:09.500 +que en caso de que dice una pared día a no puede estar por ahí y obedece a su última posición seis + +05:09.529 --> 05:17.269 +A salvo digamos, o la última cuestión que puede estar Estamos haciendo una pseudo predicción que + +05:17.269 --> 05:22.540 +se utiliza en juegos de verdad. Incluso multiplayer Rolandas es muy sencilla Sólo donde aprenda, pero + +05:22.540 --> 05:25.149 +José líneas hacen este tipo de producciones de prendas muy seguido. + +05:26.740 --> 05:31.139 +Entonces, ya que logramos guardar las últimas pruebas de esto de, de su jugador, vamos a hacerla + +05:31.139 --> 05:34.920 +nuestro Player una función que se llame la oscura bajo el Commit Pull que sea. + +05:34.920 --> 05:45.189 +Me voy muy set Vim tu seis posición lo que hace esta función es resetear mis prendas en X y llegue a + +05:45.189 --> 05:51.620 +la última posición, que fue a salvo. O sea, las tesis y las de Vamos. + +05:51.620 --> 06:01.149 +Implementarla. CTO Hoy Player dos puntos, puntos, conceptos Exposición Cat y + +06:01.149 --> 06:09.250 +aquí adentro lo que vamos a decir. Eso X es igual a las TX Guille es igual a las diez. + +06:09.939 --> 06:13.350 +Lo que nos permitió Eso fue cuando se llama esta función. + +06:13.839 --> 06:17.250 +Va a reiniciar mis jugadores con las a la posición que está a salvo. + +06:19.040 --> 06:24.629 +Ahora vamos a eso. Mapa en nuestro mapa. Le preguntamos a la célula Jaime apuntó Se + +06:24.629 --> 06:29.540 +Pepe en esta función. Se Players El le estados. Preguntado eso, celular si está bloqueado. + +06:29.540 --> 06:34.509 +No, Si no está bloqueada, quiere decir que podemos vernos allí y ejecutamos el código que antes teníamos + + --> +, + +06:34.540 --> 06:39.279 +que nos dejan movernos por todos lados. Pero si está bloqueada Lo que tengo que hacer, decir a + +06:39.279 --> 06:43.649 +no te puedes mover. Entonces en lugar de que sea voy, vamos ser un goleador también. + +06:44.639 --> 06:51.449 +Entonces Si. Todo sale bien. Vamos a besar verdadero Con esta función Proto entro le + +06:56.139 --> 07:01.430 +Y si todo salió mal, vamos a revisar. Faltó Esto. + +07:01.430 --> 07:06.790 +Quiere decir que el móvil, El movimiento que el jugador propuso no se pudo hacer y por lo tanto, en + +07:06.790 --> 07:14.439 +nuestro código principal hay que reiniciar la posición del jugador Como cambiamos nuestra función de + +07:14.439 --> 07:18.240 +SP s on volia No tenemos que también actualizarla en el en Caen El. + +07:18.240 --> 07:24.540 +En cambio, Eza en el encabezado Vim Add se os anima al encabezado aquí dos Berserk le BSD, pero es + +07:24.540 --> 07:28.949 +muy que vamos a cambiar, formulen y ambas son iguales. + +07:30.639 --> 07:41.279 +Perfecto sobre instrument vamos a decir si La posición de Setién el jugador es correcta dibujados + +07:41.279 --> 07:55.769 +el mapa, sino También dibujados el mago. Pero la diferencia entre estas dos es + +07:55.769 --> 07:59.680 +que si la posición que desee tener jugadores correcta José López normal. + +07:59.709 --> 08:07.139 +Pero si no, lo que va a ser es reiniciar el jugador a mi player En su última posición a + +08:07.139 --> 08:15.459 +saludar y eso a evitar que pase por paredes. Vamos a ver si todo sale bien. + +08:15.490 --> 08:20.110 +Vamos a mí Mac Ser punto H. Sólo voy a achicar que día sí, me allí es uno regresa + +08:20.110 --> 08:23.889 +falso, perfecto. Con esto teóricamente había funcionado bien. + +08:23.899 --> 08:28.230 +Vamos a ver si me ningún bus. Le pongo play y es un error. + +08:28.259 --> 08:40.929 +Aquí tengo un cráter de más nueve euros. Me gusta tener mi el así Play me dice lo + +08:40.929 --> 08:45.500 +que no es conocido antes de Player lo que está pasando acá Estoy viendo Player y + +08:45.500 --> 08:50.139 +se recuerdan Playa es mi clase, no mi variable. Lo que tengo que hacer es poner pero y qué + +08:50.139 --> 08:54.549 +es el nombre y variable se criba, héroe, Reinicia te a tu posición o salud. + +08:55.039 --> 09:04.360 +Me Pongo play Finish el fuego. Todos movernos. Vieron cómo está viviendo mi tres? + +09:04.360 --> 09:10.320 +No. Y puedo Trató de caminar juntos de pared. No me deja entonces un personaje? + +09:10.350 --> 09:13.529 +Voy a esta parte Data, digamos y estoy junto a la pared. + +09:13.539 --> 09:18.580 +Aquí a la izquierda. Cuéntanoslo home la izquierda que no me dejara cientos Con esto lo + +09:18.580 --> 09:27.789 +que logramos hacer fue Colisiones Felicidades por e nuestro siguiente clase. + +09:27.820 --> 09:32.649 +Lo que vamos a hacer es nos falta el Tesoro para poder recolectar, lo ganar. + +09:33.039 --> 09:37.159 +Y aparte nos falta poner no esta instrucción de Bienvenido a mi juego épico de dragón. + +09:37.169 --> 09:38.909 +Y en la pantalla de terminaste el juego + diff --git "a/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/07-Resumen.html" "b/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/07-Resumen.html" new file mode 100644 index 0000000000000000000000000000000000000000..5c4cf8b3c0ee765e1d5cbb0dfacda1049215d89d --- /dev/null +++ "b/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/07-Resumen.html" @@ -0,0 +1,95 @@ + + + + + + + Colisiones y restricciones de movimiento en mapas de juegos + + + +
+
+

Resumen

Las colisiones en los videojuegos NO existen, solo son una abstracción de las colisiones para simular su comportamiento. En vez de programar el choque de nuestros elementos, vamos a crear algunas variables (lastMoveX y lastMoveY) para guardar los movimientos de nuestros jugadores y regresarlos al movimiento anterior en caso de que su último movimiento los haga “chocar” contra una pared.

+
+
+ + \ No newline at end of file diff --git "a/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/08-Colisiones y Portadas en Videojuegos Implementaci\303\263n en C.mp4" "b/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/08-Colisiones y Portadas en Videojuegos Implementaci\303\263n en C.mp4" new file mode 100644 index 0000000000000000000000000000000000000000..5f69e0e2570d2370e8756ada62ec19afe145ca08 --- /dev/null +++ "b/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/08-Colisiones y Portadas en Videojuegos Implementaci\303\263n en C.mp4" @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:678c3b644dd034ef98ef396ca28f0e5a0ec52ede51080075bcf5cf0c5cf2eae7 +size 69717453 diff --git "a/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/08-Colisiones y Portadas en Videojuegos Implementaci\303\263n en C.vtt" "b/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/08-Colisiones y Portadas en Videojuegos Implementaci\303\263n en C.vtt" new file mode 100644 index 0000000000000000000000000000000000000000..6bbb6a8c4f82e3df23038ad5d5ee3cee5ec842c4 --- /dev/null +++ "b/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/08-Colisiones y Portadas en Videojuegos Implementaci\303\263n en C.vtt" @@ -0,0 +1,224 @@ +WEBVTT + +00:03.439 --> 00:08.960 +Bienvenidos de vuelta a nuestro curso de ese más, más si se fija en la clase pasada en lo que se os + +00:08.960 --> 00:15.439 +fue colisiones, Las colisiones son la cosa un concepto un poco extraño porque realmente no existen + + --> +. + +00:15.470 --> 00:20.280 +Bueno, nada de lo que está nuestra computadora existe solos electricidad pasando por circuitos, pero + +00:20.280 --> 00:23.160 +es una abstracción de lo que son las colecciones. + +00:23.190 --> 00:28.660 +Una colección significa que un objeto no puede pasar porque otro objetos interpone entre el Pero + +00:28.670 --> 00:32.310 +en videojuegos. Lo que estamos haciendo es cuando objeto está moviendo. + +00:32.340 --> 00:36.729 +Va a preguntarle un sistema que puede ser un sistema de físicas o un sistema que ustedes hagan. + +00:36.759 --> 00:39.590 +Si puede seguirse moviendo en esta dirección cuando puede. + +00:39.590 --> 00:43.619 +Por alguna razón, en nuestro caso, lo que hacemos es una predicción de movimiento en + +00:43.619 --> 00:48.179 +el cual preguntamos Oye, en mi siguiente exposición hay una pared y la paleta dice Si + +00:48.189 --> 00:53.679 +no puedes pasar por mí o te me quedo quieto. Pero así funciona también de maneras más complicadas. + +00:53.679 --> 00:58.000 +Obviamente, en los juegos y juegos en línea, en los dos en línea, lo que se hace es + +00:58.000 --> 01:01.920 +que se hace una predicción de movimiento utilizando la latencia del internet para + +01:01.920 --> 01:07.099 +ver si esa posición es correcta o no En caso de que no el motor defición lo que hace es corregir la + +01:07.099 --> 01:11.829 +posición a como debería de estar. Es muy interesante porque aunque no es un sistema se sencillo La + +01:11.829 --> 01:16.209 +base de predicción es la misma. Ustedes pueden crear ya Push sistemas más complejos utilizando + +01:16.209 --> 01:21.230 +figuras geométricas o es un poquito más allá y bajar librerías que ya funcionan como físic + +01:21.260 --> 01:26.090 +con la librería llamada Bolsos de Pero bueno, continuamos con nuestro con su juego. + +01:26.099 --> 01:30.180 +Lo que va a hacer ahorita es cargar la portada de este juego que va a ser un dragón que + +01:30.180 --> 01:34.450 +diga Bienvenido mi juego épico y cuando le pique cualquier tecla ya pasen a la aventura. + +01:34.939 --> 01:39.189 +Continuamos en nuestro juego. Lo que vamos seres que le vamos a decir vamos a decir el mapa. + +01:39.219 --> 01:41.950 +Oye, mapa, por favor, dibuja la portada de mi juego. + +01:42.340 --> 01:46.040 +Vamos a Irán Mac Vim apuntó H y vamos a una función que sea. + +01:46.040 --> 02:00.790 +Me voy Voy rock Intro Y lo que va a ser de lo entró Si Esos definir la aquí abajo. + +02:00.790 --> 02:08.349 +La voy a escribir arriba de mi. Los más trofeo Dotx Gay Mac, dos puntos, dos puntos. + +02:10.039 --> 02:23.439 +Rock intro y voy a copiar micro dado archivo para no volver Escribir todo Pero voy a borrar Este + +02:23.439 --> 02:32.300 +Ford Y en lugar de que nuestro error fatal día no puede cargar el mapa nuestro fatal va a decir No + +02:32.300 --> 02:42.180 +puede cargar en entró tú sacabas comer Intro q no Vim Blog Tengo cuidado de que tengan exactamente su + +02:42.180 --> 02:47.710 +código como yo estemos ventana lo voy a rezar Si quieren verme tomas el tiempo, pueden poner pausa + +02:47.740 --> 02:54.860 +y copiarlo Pero bueno, sigamos ahora lo que vamos a cargar en lugar de cargar del archivo mapa vamos + +02:54.860 --> 03:02.590 +a cargar un destrucción intro y nuestro menú después de neutralizar nuestro mapa y nuestro verde vamos + +03:02.590 --> 03:10.560 +a decir a nuestro mapa Oye, mapa, dibuja el intro Blog intro porque no lo ponemos en el look Porque + +03:10.560 --> 03:14.979 +no creemos que le digo que muchas veces creemos que lo dibuja Una vez antes de empezar el juego Hay + +03:14.979 --> 03:19.990 +pedir cualquier entrada de de, de, de teclado Y ya que se es cumplió eso va a ir a + +03:19.990 --> 03:22.449 +dibujar el juego. Por eso le ponemos aquí afuera. + +03:23.240 --> 03:27.250 +Por volar este inicial juego porque ya no lo vamos a estar porque vamos a poder estar portada Increíble + +03:30.539 --> 03:36.800 +nuestra función de infra portada vamos a decir Mientras hay una línea de mi archivo que es intro + +03:36.800 --> 03:48.110 +.txt y la línea que es mi string Vamos a imprimir la línea, se auto La y Si les confunda un poquito + +03:48.110 --> 03:51.319 +lo que está pasando aquí en que Blair esta función. + +03:51.349 --> 03:54.340 +Esta paz está recibiendo este string y le está llenando. + +03:54.370 --> 03:58.349 +Está haciendo magia negra que para explicar, pero le está llenando por dentro. + +03:58.349 --> 04:01.370 +Es función y luego la va a mantener sin modificarla. + +04:01.400 --> 04:05.520 +Entonces nosotros, después de este paso, llevate contener la información del archivo + +04:05.550 --> 04:12.990 +de la línea del archivo. Vamos a dibujar cada línea del archivo y con eso dibuja nuestra portada Pero + +04:12.990 --> 04:23.319 +Después de dibujar nuestra portada. Lo que vamos a pedir es un c Vim y lo vamos a empezar al + +04:23.319 --> 04:32.300 +aire Por Qué es esto? Porque son seis Lain Porqué no le Add Sólo. + +04:32.300 --> 04:35.730 +Quiero pausar por un ratito el programa dos no me importaban. + +04:35.730 --> 04:40.290 +Falla la información, pero esto me sigue. Pasen una pausa para y en nuestro y no vamos a poder Por + +04:40.290 --> 04:44.089 +favor presionar cualquier tecla oyente para continuar para que fue la presión de ese + +04:44.089 --> 04:49.810 +y entre Ahora si tratamos de cargar, lo va a haber un error porque no existe. + +04:49.839 --> 04:54.949 +Es lo que podemos hacer. Es usar el código. Hace más más para crearlo o esta vez no va a ser diferente + + --> +. + +04:55.439 --> 05:02.250 +Vamos a ver nuestro archivo, Cat. Mapa. Vamos a hacer una copia. + +05:03.639 --> 05:09.879 +Copiar pegar y le vamos a cambiar el nombre a conseguir Madame. + +05:09.879 --> 05:19.129 +Archivo Intro.txt Cambiar nombre Pietro. Fíjense que le extensión sea documento de texto. + +05:19.160 --> 05:23.180 +Si no nos va a dejar cargar. Si tienen problemas, pueden saber código ese más, más para crear su + +05:23.180 --> 05:28.740 +archivo desde el código desde su código. Lo voy a abrir y va a tener mi papá. + +05:28.769 --> 05:32.449 +No quiero eso. Así que lo que voy a hacer es Buena Googol. + +05:35.240 --> 05:41.449 +Voy a poner grado Haski Add y aquí me salen la primera portada. + +05:42.339 --> 05:47.250 +Muchas gra- Gómez Me poner este que está muy épico. + +05:49.040 --> 05:53.870 +No de Pedreña Archivo Intro Tenga cuidado de no escribir en su archivo de mapa porque sino van a arruinar + +05:53.870 --> 06:13.209 +su mapa. Dos tomas mi dragón y acaba de poner Bienvenido Mi Laberinto, Atlético, Presiona cualquier + +06:13.240 --> 06:24.550 +tecla y enter para continuar. Voy a salvarlo y vamos a ver si funciona. + +06:29.040 --> 06:39.129 +Sí podemos play. Mire, nada más voy a ser menos o más grande y Ventana y se bienvenido + +06:39.129 --> 06:43.750 +a mi laberinto ético presión A cualquier tecla para entrar. + +06:44.240 --> 06:51.160 +Impresión cualquier tecla en ese juego un Toque entonces corriendo mi programa ya + +06:51.160 --> 06:55.949 +tengo mi portada épica de ese dragón y se presionar cualquier tecla para continuar. + +06:56.339 --> 07:02.399 +Entonces presionó cualquier tecla y enter me permite ya entrar a mi juego perfecto + + --> +. + +07:02.430 --> 07:08.279 +Entonces jugador esta En estado en esta en función y estoy jugando en mi juego y pido Lo + +07:08.279 --> 07:13.519 +que nos falta para terminar es hacer un tesoro el cual el jugador por recolectar y + +07:13.519 --> 07:15.350 +obviamente hacen un laberinto un poquito más complicado. + +07:16.040 --> 07:17.649 +Eso lo vamos a hacer en la próxima clase. + diff --git "a/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/08-Resumen.html" "b/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/08-Resumen.html" new file mode 100644 index 0000000000000000000000000000000000000000..790a6be90f60cb8e3125b260793a7df08669159d --- /dev/null +++ "b/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/08-Resumen.html" @@ -0,0 +1,96 @@ + + + + + + + Colisiones y Portadas en Videojuegos: Implementación en C++ + + + +
+
+

Resumen

Vamos a guardar la imagen de un dragón (con un texto de bienvenida, si quieres) en un nuevo archivo de texto llamado Intro.txt (puedes copiar y pegar el archivo Map.txt) para pausar la ejecución de nuestro juego por un momento y darle la bienvenida al jugador.

+

Para esto vamos a crear una nueva función llamada DrawMap en la clase GameMap con un código muy parecido a la función LoadMapFromFile pero, en vez de usar un ciclo for para imprimir las celdas de nuestro mapa, vamos a imprimir línea por línea nuestro mensaje de bienvenida con el dragón.

+
+
+ + \ No newline at end of file diff --git "a/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/09-Creaci\303\263n de Juegos de Aventuras en C Laberintos y Cofres del Tesoro.mp4" "b/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/09-Creaci\303\263n de Juegos de Aventuras en C Laberintos y Cofres del Tesoro.mp4" new file mode 100644 index 0000000000000000000000000000000000000000..77c981d99457906cdb350212eddfefbc111dbb7f --- /dev/null +++ "b/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/09-Creaci\303\263n de Juegos de Aventuras en C Laberintos y Cofres del Tesoro.mp4" @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b17026557c737a47f33b49e1559d15eb8c0235d85da26b1ff37629b88076ffa2 +size 114380131 diff --git "a/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/09-Creaci\303\263n de Juegos de Aventuras en C Laberintos y Cofres del Tesoro.vtt" "b/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/09-Creaci\303\263n de Juegos de Aventuras en C Laberintos y Cofres del Tesoro.vtt" new file mode 100644 index 0000000000000000000000000000000000000000..650997a20e8bb20cc0b5e63dda6f55eda4764155 --- /dev/null +++ "b/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/09-Creaci\303\263n de Juegos de Aventuras en C Laberintos y Cofres del Tesoro.vtt" @@ -0,0 +1,299 @@ +WEBVTT + +00:03.439 --> 00:08.419 +Muy bien, ya tenemos nuestro juego épico que puede va a derrotar a muchos fuegos triple A como Geli + +00:08.419 --> 00:13.779 +todo esto? Porque jugar el consuelo es muy divertido, Pero bueno, Ahora, lo que hay que hacer es + +00:13.779 --> 00:19.969 +la victoria de su jugador Antes quiero hacer un pequeño ajuste que es Al principio, estados llevado + +00:20.000 --> 00:24.399 +ya estamos llamando imputa Y esto hace que se queda un poco pausado y se vea raro el + +00:24.399 --> 00:29.250 +juego son los que voy a hacer. Es que voy a dibujar una vez Después del intro. + +00:30.239 --> 00:35.950 +Voy a dibujar una vez más guapa y ya después acá poner un mensajito Quería sea otro. + +00:39.740 --> 01:00.549 +Introduce El movimiento el comando El comando de movimiento A doble ese doble a + +01:01.640 --> 01:11.650 +ese. Y de esto porque lo hice porque quiero que salga la instrucción de que pueda ser el jugador cada + +01:11.650 --> 01:17.319 +movimiento y así la gente, aunque todos por nuestro juego y no entienda cómo funciona el código nos + +01:17.319 --> 01:29.480 +permita jugar Os. Así funciona Open sale aventura del Dragón precio no introduce + +01:29.480 --> 01:32.349 +comando, Continue viento y hacía Puedo moverme sin problemas. + +01:33.540 --> 01:40.459 +Muy bien, súper bien. Lo que vamos a hacer es la victoria. + +01:40.489 --> 01:46.549 +Entonces en nuestro mapa vamos a representar. Voy a pasar mismo por acá. + +01:47.739 --> 01:52.150 +Vamos ser un Atom poquito más complicado. Tus en esta parte de que iba a tener unas paredes. + +01:52.540 --> 01:55.549 +Este va estar cercado por acá. Sólo tiene un camino. + +01:56.840 --> 02:05.209 +Todos estos décadas los vamos a poder así. Es- Tags cerrado que es el que mejor tiene que Moverse + +02:05.209 --> 02:10.150 +por arriba y a la derecha. Vamos a tener otras pares por acta. + +02:12.039 --> 02:20.750 +Es un final cerrado, buena salida. Y lo que va a ustedes que vamos a poner en esta parte de aquí abajo + +02:21.340 --> 02:28.280 +Por es tarea nuestro cofre que lo vas a representar por un cuatro Luego. + +02:28.280 --> 02:33.669 +Podemos cambiar los bonitos por cosas más este características como un simbolito dinero. + +02:33.680 --> 02:36.639 +Saben que vamos a esos directo de una vez. Vamos a poner un símbolo. + +02:36.639 --> 02:43.050 +Dinero y estímulo. Dinero significa mi cofre. Voy a guardarme archivo y si le pongo play me + +02:43.050 --> 02:48.909 +sale mi entrada épica de mi laberinto. Pues si no cualquier tecla ya puedo jugar y + +02:48.909 --> 02:53.550 +se fijan Mi laberinto está creado tiene para el de éste, aunque moverme a través de ellas. + +02:55.240 --> 03:01.080 +Y aquí está mi cofre. Ahora lo que tengo que hacer es que se mi jugador Juba cómico, fre Victoria + +03:01.110 --> 03:12.990 +ponemos La Ventana de Victoria y terminó el juego para eso Vamos achicar en el donde + +03:12.990 --> 03:20.409 +podemos checar donde chocó el jugador El mapa. Está achicando A veces Si chocó con la pared Puedes + +03:20.409 --> 03:26.699 +aprovechar esa función para además decir si chocó con una pared Dónde Está bien, no? + +03:26.699 --> 03:30.849 +Pues muerte. Pero sí chocó con un tesoro. Ejecuta el código de tesoro. + +03:31.240 --> 03:33.849 +Les voy a dar un pequeño sin para su código para el proyecto final. + +03:34.370 --> 03:37.490 +Ahí pueden poner también chico con un enemigo pierde. + +03:37.520 --> 03:48.550 +Pero bueno, eso ya se lo ustedes. Vamos con el de sólo Word. + +03:49.639 --> 03:55.330 +Vamos, A Vim apuntó se Pepe Y en la sección en la cual estamos checando EL me voy Pull de mi jugador + +03:55.360 --> 04:00.530 +que es se pers- el aquí estados chic Add o si es bloqueado, Sin desbloqueado. + +04:00.560 --> 04:03.550 +Podemos checar a dentro de ahí? Sí, es un tesoro. + +04:04.840 --> 04:20.949 +Pues puedan ser sí, mis células punto. Allí es igual el símbolo de tesoro sino + +04:21.839 --> 04:33.850 +Muévete normalmente y vamos a ver todos nuestro bloque de movimiento normal, pequeño, perfecto. + +04:35.339 --> 04:39.889 +Entonces todo sigue normal. Usted no se preocupen, pero lo que estamos haciendo aquí es si + +04:39.889 --> 04:46.250 +chocó con tesoro. Vamos a cargar La imagen. Vamos a dibujar la puerta de tesoro. + +04:47.939 --> 04:52.750 +Vamos ir a nuestra función como otro intro La Vamos a copiar. + +04:54.639 --> 05:06.649 +Yo soy la función Se home rock Muchas Otro visto Help Roddick No puedo poner símbolos de respiración + +05:07.040 --> 05:13.970 +Y aquí lo que vamos a cargar es Victory.txt y vamos a a dibujar En caso de que no pueda ser cargamos + +05:13.970 --> 05:25.519 +muy fatal error Victory Mac, unas mil Aube. Yo me apellido triste usted les podrían poner el error + +05:25.519 --> 05:29.750 +Numerosas. Error como número uno, tres, tres, siete. + +05:30.240 --> 05:32.250 +Y ustedes pueden hacer ver con él solo en una tabla. + +05:32.259 --> 05:37.420 +Pero bueno, sigamos entonces si chocó con mi símbolo. + +05:37.420 --> 05:44.759 +Dinero? Vamos dibujar la parte de Victoria. Entonces aquí lo que vamos a hacer es Fred + +05:44.759 --> 05:52.050 +CTO en Touch Y antes de eso, Pos a dibujar la victoria. + +05:55.639 --> 06:02.959 +Todavía funcionar bien. Pero también hay que decir que cuando dibujados la planta de Victoria es ni + +06:02.959 --> 06:06.649 +mover. Entonces este puliendo de que mover Lo voy a cambiar a mi mapa. + +06:07.740 --> 06:11.730 +Vamos a mover este que mover de lugar. Lo voy a quitar acá y voy a pasarlo. + +06:11.730 --> 06:18.939 +Add Vim Mac punto H. Y aquí voy a poder mover este Juliano y ponerlo aquí y en el constructor DeMille + +06:18.939 --> 06:29.850 +Vim Mac en que más puntos del PP voy a poner es que mover es igual a falsa En ni me voy a poner Mientras + +06:30.639 --> 06:40.279 +ya existe y Vim over. Pero este mapa su decir mientras Mapa punto es Vim over va + +06:40.279 --> 06:46.129 +contra el juego perfecto. Entonces lo que hicimos fue mover el juliano que atrasados para el alumno + +06:46.129 --> 06:52.589 +Nuestro juego a el mapa o en un clima punto H Ahora Lo que hay que hacer es que cuando todo + +06:52.589 --> 06:58.089 +vamos el cofre aparte de dibujar la ventanita de victoria, cuando la imagen de victoria hay + +06:58.089 --> 07:02.300 +que romper el look y lo único que tenemos que hacer es de hacer esa que mover verdadero y + +07:02.300 --> 07:04.449 +se Uruguay. Se va a salir y va a terminar el programa. + +07:05.939 --> 07:10.949 +Vamos A punto H Yo punto se Pepe y en la punto se Pepe. + +07:11.740 --> 07:23.910 +Y aquí cuando le Ujados la victoria, vamos a decir y de mover es igual a truck Antes + +07:23.910 --> 07:31.040 +de poner play checar que funcione Nuestro archivo de dibujar Victoria que se llamaba Víctor + +07:31.040 --> 07:35.600 +Help.txt no existe, así que hay que crear lo recuerdo como lo podemos crear. + +07:35.629 --> 07:40.310 +Podemos a ganar el código de ese más más para crear archivos y crearlo a segundo en común O en caso + +07:40.310 --> 07:44.949 +de que no exista dibujarlo sí o podemos, Claro. Nosotros a mano que es lo que va a hacer ahorita? + +07:47.639 --> 07:52.050 +Voy a abrir el archivo contenedor. Me voy a a la base de mi proyecto. + +07:52.439 --> 07:56.509 +Aquí está Intro Mac En caso de que esto no sea una Mac. + +07:56.540 --> 08:00.879 +Puede ser que dos archivos está en otro lado. Pueden buscarlo con FIFA enter. + +08:00.889 --> 08:09.550 +No se preocupen, es lo que voy a hacer es duplicar Miembro, Le voy a cambiar el nombre a + +08:09.550 --> 08:18.850 +que se mama Victory,.txt, Víctor y.txt y lo voy a abrir. + +08:20.939 --> 08:30.170 +Entonces que voy a hacer? Es buscar una esquiar DE un cofre que les va a enseñar y + +08:30.170 --> 08:41.850 +vamos a buscar un bonito chef. Está bonito. Graciasa déjeme Noventa y siete por el arte. + +08:43.539 --> 08:50.980 +Cancela o seleccionar edición Seleccionar Todo Lo voy a borrar y eso podemos. + +08:51.009 --> 08:58.350 +Felicidades. Un contraste El Tesoro Gracias por jugar. + +08:59.740 --> 09:07.460 +Los salvamos y vamos a ver si todo funciona. Vos Vim Help Ley no me deja porque + +09:07.460 --> 09:10.149 +dice que Trob History no fue declarado de Cisco Blog. + +09:10.740 --> 09:15.649 +Eh, Change Directory CEO fue declarado Scope. Aquí está. + +09:16.740 --> 09:26.950 +Vamos a ver cual es el error claro. Nuestro error es que sí, sí, está declarado en sus CPP pero + +09:26.950 --> 09:30.600 +cometimos el error de no haberlo definido en nuestro punto. + +09:30.600 --> 09:37.860 +H es lo que va a hacer es Voy pro Victory y ya les tiren ambos lados. + +09:37.889 --> 09:42.360 +Recuerden si le sale un error de que no fue declarado tiene que tal vez falta en el otro Me + +09:42.360 --> 09:51.830 +podemos play y tenemos nuestro super Laberinto presión o cualquier tema por continuar. + +09:51.860 --> 09:59.090 +Introduce el comando, el movimiento, Los que íbamos por el solo Mira como en San unieron todo + + --> +, + +09:59.090 --> 10:00.850 +Todo, todo, todo, todo, todo, todo, todo, todo no? + +10:02.440 --> 10:10.500 +Y cuando Agarró el dinero, Si Todo salió bien, terminar programa. + +10:10.509 --> 10:16.149 +Pero no dibujó el cofre. Hay que ver porque En error que estaba pasando era que no podía caber Garth + +10:16.149 --> 10:19.850 +History.txt porque yo aquí le añadía el nombre el.txt. + +10:19.879 --> 10:24.750 +Entonces, como es un archivo de texto y le puso de nombre Victory.txt. + +10:24.779 --> 10:29.850 +Lo que está pasado es que este archivo es Victory.txt.txt, así que prueben enter + +10:29.850 --> 10:37.860 +le esto Ya debería funcionar. Si ustedes tienen los este los formatos del archivo que + +10:37.860 --> 10:42.120 +se vean No se preocupen, pero si no lo pueden ver quiere decir que ustedes versiones. + +10:42.120 --> 10:47.399 +Además, nos puede Napley Ahora con los cambios que hicimos. + +10:47.399 --> 10:51.279 +Vamos a correr nuestro código. Lo que queremos es que cuando queremos la monedita ya + +10:51.279 --> 10:54.360 +algunos dibuje de nuevo el mapa. Entonces vamos a empezar. + +10:54.389 --> 10:56.950 +Vamos a llegar a nuestro jugador hasta su tesoro. + +10:59.340 --> 11:09.450 +Vamos jugador, Tú, tú. Y cuando estamos a punto de agarrar el tesoro listo, funciona nuestros + +11:09.450 --> 11:14.259 +programas. Determina el fuego se termina y todo funciona muy bien en la próxima clase Vamos + +11:14.259 --> 11:16.049 +a hablar de hasta donde puede llegar tu + diff --git "a/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/09-Resumen.html" "b/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/09-Resumen.html" new file mode 100644 index 0000000000000000000000000000000000000000..a00b3b464ef03afa013126b1230d0aa8a4c593c6 --- /dev/null +++ "b/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/09-Resumen.html" @@ -0,0 +1,124 @@ + + + + + + + Creación de Juegos de Aventuras en C++: Laberintos y Cofres del Tesoro + + + +
+
+

Resumen

¿Cómo funciona la implementación de un sistema de victoria en el juego?

+

Para alcanzar un feeling completo en el desarrollo de nuestro videojuego, es esencial crear una lógica de victoria que ponga broche de oro a la experiencia del jugador. En esta clase, se realizaron ajustes para garantizar que el juego, al detectar que el jugador ha alcanzado el tesoro, concluya mostrando un mensaje de victoria y cierre adecuadamente.

+

¿Cómo se configura el mapa del juego?

+

La estructura del mapa define el recorrido del jugador y su interacción con los elementos del juego. Se incluye un camino específico marcado por paredes (representadas por un símbolo específico) que guían al jugador hacia su objetivo. El tesoro se representa por un símbolo, en este caso, un símbolo de dinero que señala el objetivo final del recorrido, incrementando la motivación del jugador para alcanzar su meta.

+

¿Cómo implementar la detección de victoria?

+

El sistema de detección de victoria en el juego es uno de los elementos cruciales. Para esto, se utiliza una función que verifica si el jugador ha 'colisionado' con el tesoro:

+
if (cells[x][y] == TREASURE_SYMBOL) {
+    // Código para ejecutar cuando se detecta un tesoro
+    drawVictoryWindow();
+}
+
+

Este fragmento de código evalúa si las coordenadas actuales del jugador coinciden con las del tesoro. Si la condición se cumple, se dibuja la ventana de victoria y se detiene el ciclo de juego.

+

¿Cómo detener el juego tras el éxito?

+

Para finalizar el juego una vez que el jugador alcanza el tesoro, se introduce la lógica de terminar el ciclo de ejecución del juego. Esto se logra configurando una bandera gameOver que chequea si la partida debe continuar ejecutándose:

+
if (isVictoryConditionMet) {
+    gameOver = true;
+}
+
+

Este paso es crucial para asegurarse de que el juego termine adecuadamente al alcanzar la meta, brindando una experiencia de usuario fluida.

+

Solución de problemas comunes en el desarrollo del juego

+

Durante el proceso de desarrollo, pueden surgir errores como el problema de las extensiones de archivos o conflictos de declaración de variables. Es fundamental definir correctamente las rutas de los archivos y revisar las declaraciones de funciones para asegurar su correcta ejecución.

+

Por ejemplo, la extensión doble de un archivo de texto Victory.txt podría causar un error de lectura. Es crucial verificar y corregir este tipo de detalles en el código fuente para evitar fallos en tiempo de ejecución.

+

Conclusiones del proyecto y recomendaciones finales

+

¡Has llegado al final del proyecto! Has construido un sistema esencial de juego que simula una pequeña aventura gráfica. Recuerda siempre:

+
    +
  • Verificar minuciosamente el código fuente en busca de errores menores.
  • +
  • Asegurarte de que todas las funcionalidades estén correctamente documentadas.
  • +
  • Organizar tu código para mantener un flujo lógico, lo que facilitará futuras modificaciones.
  • +
+

Este es apenas el comienzo de lo que podrías lograr con la programación de videojuegos. Sigue aprendiendo y explorando nuevas funcionalidades para expandir tus habilidades. ¡Mucha suerte en tu camino como desarrollador!

+
+
+ + \ No newline at end of file diff --git "a/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/10-Programaci\303\263n Orientada a Objetos en Videojuegos B\303\241sicos.mp4" "b/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/10-Programaci\303\263n Orientada a Objetos en Videojuegos B\303\241sicos.mp4" new file mode 100644 index 0000000000000000000000000000000000000000..65e686b7d42ad8088e38cff3fca5acab38232fe9 --- /dev/null +++ "b/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/10-Programaci\303\263n Orientada a Objetos en Videojuegos B\303\241sicos.mp4" @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cef9f65a24340cc1499bf2e3a8cc616000c324cab692a8023cd920f259ef579e +size 8927501 diff --git "a/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/10-Programaci\303\263n Orientada a Objetos en Videojuegos B\303\241sicos.vtt" "b/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/10-Programaci\303\263n Orientada a Objetos en Videojuegos B\303\241sicos.vtt" new file mode 100644 index 0000000000000000000000000000000000000000..1d9d5322b5d735aaf1d8f89cd89735fdefe7d9eb --- /dev/null +++ "b/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/10-Programaci\303\263n Orientada a Objetos en Videojuegos B\303\241sicos.vtt" @@ -0,0 +1,35 @@ +WEBVTT + +00:04.139 --> 00:10.189 +muy bien terminados el curso. Ahora lo que logramos implementar fueron las bases. + +00:10.189 --> 00:15.300 +Se más, más programación en todo objetos en nuestro pequeño jueguito, ya sea clases + + --> +, + +00:15.330 --> 00:20.589 +gran instancias, objetos usado, diferentes tipos de datos cargando archivos leyendo + +00:20.589 --> 00:23.030 +la entrada de información que usuario mete se fijan. + +00:23.030 --> 00:28.609 +Fue un gran tema y ustedes pueden seguir, ya sea Ha sido enemigos heredado de los enemigos. + +00:28.640 --> 00:31.070 +Ya semanas. Comportamientos de izquiera a derecha Si quieres? + +00:31.070 --> 00:33.630 +Más información Les recomiendo el libro hecho por el creador. + +00:33.630 --> 00:38.250 +Ese más, más de ciclos. Los programas de agua es que pueden conseguir en librerías y tal vez en Amazon + +00:38.939 --> 00:43.659 +Por último, te invito a que hagas el reto final y lo compartas en la sección de comentarios. + +00:43.689 --> 00:47.649 +Nunca parece aprender y hasta la próxima Yum! + diff --git "a/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/10-Resumen.html" "b/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/10-Resumen.html" new file mode 100644 index 0000000000000000000000000000000000000000..2f5115f64b86584cdec392fe8b6e1d706e8e96d7 --- /dev/null +++ "b/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/10-Resumen.html" @@ -0,0 +1,97 @@ + + + + + + + Programación Orientada a Objetos en Videojuegos Básicos + + + +
+
+

Resumen

¡Felicitaciones por terminar el Curso de C++ en Platzi!

+

Aprendimos a programar con C++ y programación orientada a objetos para crear un videojuego en consola usando diferentes tipos de datos, ciclos, condicionales, clases, objetos, instancias, algunos conceptos de POO, lectura y escritura de archivos en el disco duro y muchas cosas más.

+

Recuerda resolver los ejercicios, completar el examen, darle 5 estrellas al profesor y compartir tu proyecto o dejar todas tus dudas y comentarios en la sección de discusiones.

+
+
+ + \ No newline at end of file diff --git "a/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/11-Creaci\303\263n de Enemigos y Laberintos en C Avanzado.mhtml" "b/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/11-Creaci\303\263n de Enemigos y Laberintos en C Avanzado.mhtml" new file mode 100644 index 0000000000000000000000000000000000000000..3f105ceef1cee8d41a989dec3b9ffecd0d54f8a3 --- /dev/null +++ "b/subir/Curso Pr\303\241ctico de C/09-Finalizando nuestro proyecto/11-Creaci\303\263n de Enemigos y Laberintos en C Avanzado.mhtml" @@ -0,0 +1,26383 @@ +From: +Snapshot-Content-Location: https://platzi.com/cursos/c-plus-plus-practico/proyecto-final/ +Subject: =?utf-8?Q?Creaci=C3=B3n=20de=20Enemigos=20y=20Laberintos=20en=20C++=20Ava?= + =?utf-8?Q?nzado?= +Date: Sun, 9 Nov 2025 19:38:19 -0500 +MIME-Version: 1.0 +Content-Type: multipart/related; + type="text/html"; + boundary="----MultipartBoundary--iEHcyLbCbzFNjLeXk16GK9QhgZieDysGKQuq967MSE----" + + +------MultipartBoundary--iEHcyLbCbzFNjLeXk16GK9QhgZieDysGKQuq967MSE---- +Content-Type: text/html +Content-ID: +Content-Transfer-Encoding: quoted-printable +Content-Location: https://platzi.com/cursos/c-plus-plus-practico/proyecto-final/ + + Creaci=C3=B3n de Enemigos y La= +berintos en C++ Avanzado= +

Confirmar tu correo

Enviamos u= +n enlace de confirmaci=C3=B3n a tu correo electr=C3=B3nico tomalabecker68@g= +mail.com

= +
3D"Curso

Creaci=C3= +=B3n de Enemigos y Laberintos en C++ Avanzado

Clase 47 de 47 =E2=80=A2 Curso Pr=C3=A1ctico de C++

Clase anterior

=C2=A1F= +elicidades! Lograste terminar el primer curso de c++, para termina= +r te invito a que hagas el siguiente ejercicio:

+

En nuestra clase anterior pusimos una condici=C3=B3n de ganar, pero para= + que el nuestro sea m=C3=A1s emocionante tienes que crear enemigos y m=C3= +=BAltiples pisos de laberinto, =C2=BFComo vas a hacer esto? (Si no quieres = +spoilers e intentarlo por ti mismo puedes ir ya a hacerlo):

+
    +
  1. +

    Para empezar tenemos que crear una clase base, puede ser llamada Enemy, = +esta clase tiene que tener su posici=C3=B3n en x, y como el jugador.

    +
  2. +
  3. +

    Despu=C3=A9s de dibujar el jugador tenemos que llamar la funci=C3=B3n de= + dibujado de una (O varias) instancias de Enemy, podemos aprovechar el dibu= +jado para llamar una funci=C3=B3n que tenga un comportamiento llamada Move(= +).

    +
  4. +
  5. +

    Para tener diferentes tipos de movimientos podemos crear nuevas clases d= +erivadas de Enemy ya sean movi=C3=A9ndose en un patr=C3=B3n( izquierda dere= +cha arriba abajo) u otros patrones al azar, para esto se puede usar la func= +i=C3=B3n rand.

    +
  6. +
  7. +

    Si en alg=C3=BAn momento las coordenadas de un enemigo son las mismas qu= +e el jugador tienen que dibujar una pantalla de Game Over y terminar el pro= +grama.

    +
  8. +
  9. +

    Ya que tenemos nuestros enemigos tenemos que cambiar un poco el comporta= +miento de nuestro tesoro, cuando lo tomamos por primera vez en lugar de dib= +ujar la pantalla de laberinto vamos a cambiar nuestro piso actual (almacena= +ndo esta informaci=C3=B3n en una variable en gamemap.h) y dibujar el juego = +con el nuevo mapa.

    +
  10. +
  11. +

    Pueden nombrar sus archivos =E2=80=9CLaberintoPiso1.txt=E2=80=9D, =E2=80= +=9CLaberintoPiso2.txt=E2=80=9D y checar con una condici=C3=B3n cual es el p= +iso y cargar el archivo adecuado, (recuerden reiniciar la posici=C3=B3n del= + jugador).

    +
  12. +
  13. +

    Al pasar X n=C3=BAmero de pisos (Generalmente 3 esta bien) pueden dibuja= +r la pantalla de victoria.

    +
  14. +
3D"Eri"
Haz una pregunta a Eri
= +

Listo. Creo que se ve bastante bien, pero hay cosas que = +quisiera mejorar.

+

Enlace: aqu=C3=AD

+
3D"Captur=
+
3D"Captur=
31
+=3D"Karina

Reto aqu=C3=AD, saludos

5
= +
    3D"Javier

    Javier Rodr=C3=ADg= +uez Navarrete

    student=E2=80=A2

    =C2=BFcomo lo corro?

3D"Arnoldo

Arnoldo Alvarez

stude= +nt=E2=80=A2= +
hace 5 a=C3=B1os

Magnifico c= +urso. Aqui esta mi Proyecto final:

+

Explosive mines Game in C++ Features del Juego ETC Explosive:

+
    +
  1. El juego mas que un laberinto es un juego de Minas Explosivas
  2. +
  3. Se han creado 3 niveles de complejidad: En el nivel 1 solo existe la mi= +na E, en el nivel 2 se crea una mina adicional +denominada T y en el nivel 3 se tendr=C3=A1 que pelear con una 3era mina ll= +amada C
  4. +
  5. Las minas se mueven en el board de forma aleatoria con una ecuaci=C3=B3= +n random creada para tal fin.
  6. +
  7. Ni las minas ni el jugador pueden pasar a trav=C3=A9s de las paredes de= +l Board. 5 Se ha agregado la complejidad de que si el +jugador cae o utiliza un lugar en donde estuvo una mina anteriormente este = +por momentos se vuelva invisible hasta que +salga de ese spot ciego.
  8. +
  9. A partir del nivel 2 las minas asesinas pueden comerse el dinero que el= + jugador intenta ganar y eso lo eliminaria de forma +automatica.
  10. +
  11. Espero lo disfruten.
  12. +
+

https://github.com/aalvarez75GiH/mineGame

<= +div class=3D"CommentInput-module_CommentInput__Container__oSHEv CommentInpu= +t-module_CommentInput--parentMode__ch7uj">
3D"Carlos

Carl= +os Nassif Trejo Garcia

student=E2=80=A2
hace 5 a=C3=B1os= +
    3D=
    = +

    Eduardo Sebasti=C3=A1n Sandoval Ji= +m=C3=A9nez

    student=E2=80=A2
    <= +p>Se ve bien!!!

3D"GERARDO

GERARDO EMMANUEL ALONSO CELIS

student=E2= +=80=A2
hace 5 a=C3=B1os
= +

Ya que tengo mi progr= +ama completo en codeblocks, =C2=BFc=C3=B3mo obtengo el archivo ejecutable (= +.exe) para poder usarlo en cualquier m=C3=A1quina?

= +
= +
    3D"David

    David Lara

    student=E2=80=A2
    hace 5 a=C3=B1os

    cuando le pones "play" compila el c=C3=B3d= +igo y genera el ejecutable, ese ejecutable queda en la ra=C3=ADz del proyec= +to

3D"CRISTIAN

CRISTIAN BARBERO P=C3=89REZ

stud= +ent=E2=80=A2
hace 5 a=C3=B1os
<= +/div>

Ah=C3=AD v= +a mi c=C3=B3digo, incluyendo 3 mapas, aumentando el n=C3=BAmero de enemigos= + en cada uno. Aunque =C3=A9stos no se mueven.

+

https://github.com/ceporro/Console-Game

2
= +
+=3D"Adan
<= +div class=3D"CommentHeader-module_CommentHeader__TdgfD">

Adan Natanael Segura Galicia

student=E2=80=A2
hace 5 a=C3=B1os

Logre todo lo pedido pero no quedo= + como quer=C3=ADa. Aun se puede mejorar :) +https://github.com/AdanG75/juego_consol= +a/tree/master

3D"Jos=C3=A9

Jos=C3=A9 Luis Mendez

student= +=E2=80=A2
hace un a=C3=B1o

Muy bueno!!!!!!!

= +
+=3D"Camila

Camila Lozada

student=E2=80=A2
hace un a= +=C3=B1o

Hola Fredy!!, equipo Platzi

+

Sugiero la creaci=C3=B3n de un nuevo curso despu=C3=A9s del curso de pro= +gramaci=C3=B3n en C++, que considero ser=C3=ADan de gran valor para la comu= +nidad. Propongo desarrollar un curso sobre MetaTrader que abarque los lengu= +ajes de programaci=C3=B3n MQL4 y MQL5. Este curso permitir=C3=ADa a los usu= +arios de plataformas de trading crear y vender robots de trading, as=C3=AD = +como aprender sobre el funcionamiento de estas plataformas incluyendo gu=C3= +=ADas detalladas sobre MQL4, MQL5 y el uso pr=C3=A1ctico de la plataforma M= +etaTrader. Finalmente, el curso podr=C3=ADa integrarse con el contenido exi= +stente sobre trading en Platzi.

+

Adem=C3=A1s, propongo la creaci=C3=B3n de un curso dedicado al desarroll= +o de estrategias en plataformas como NinjaTrader o TradingView, lo cual ser= +=C3=ADa de gran beneficio para quienes desean profundizar en la creaci=C3= +=B3n y aplicaci=C3=B3n de estrategias de trading automatizado

<= +/div>
3D"Gabriel=

Gabriel Nicol=C3=A1s Perero

student=E2=80=A2
ha= +ce 3 a=C3=B1os

Bueno... Terminado mi proyecto. +Quer=C3=ADa hacerlo por mi cuenta y result=C3=B3 un poco diferente a las in= +dicaciones que se dan. Solo tiene 2 niveles y a=C3=B1ad=C3=AD eventos en lu= +gar de enemigos, PERO estos eventos se generan aleatoriamente para que cada= + partida que se juegue sea diferente a la anterior y cada evento tiene dife= +rentes resultados seg=C3=BAn las decisiones que tome el jugador (y alguna q= +ue otra cosa). +Tambi=C3=A9n cuenta con varios resultados finales dependiendo de como se ha= +ya jugado (y la suerte). +Tambi=C3=A9n a=C3=B1ad=C3=AD colores para darle un aspecto un poco diferent= +e y un men=C3=BA que se controla con las flechas de direcci=C3=B3n en lugar= + de apretar n=C3=BAmeros.

+

Dejo el repositorio: +https://github.com/GabrielGNP/Dunge= +ons-Lizard-C-Console-

+

Tambi=C3=A9n les dejo una captura del segundo mapa +

3D"Sin

+

Solo agregu=C3=A9 dos mapas porque con los eventos y el texto de los eve= +ntos se hac=C3=ADa muy largo el juego y ya que es un juego rejugable decid= +=C3=AD hacerlo corto.

+

PD: hay un final que sale solo si se consigue un Score de +3000. Te=C3= +=B3ricamente es posible pero yo no lo he conseguido...

3D"Fabian

Fabian Chagua Martin

student=E2=80= +=A2
hace 5 a=C3=B1os

Hay curso de c++ en POO<= +/p>

= +
= +

Wilson Erik Ram=C3=ADrez Franco

student=E2=80=A2= +
hace 6 a=C3=B1os

Excelente curso, seguir=C3=A9= + tu consejo y voy a leer un poco sobre el libro que sitas y seguiremos adel= +ante, espero compartirlo pronto!

= +
3D"Steve

Steve Aragon

= +
student=E2=80=A2
hace 6 a=C3=B1os

Trabajando en ello!= +!

3D"Juan

Juan Camilo Alvarez Jurado

student=E2=80= +=A2
hace 6 a=C3=B1os

=C2=A1Realizado! Estuvo re= +tador, pero fue divertido hacerlo. =C2=A1Gracias por el curso! Me ha motiva= +do a seguir las carreras de videojuegos :D

+

Aqu=C3=AD mi resultado final: https://github.com/jcalvarezj/practice/tree/master/C%2B%2B/basicG= +ame

+

Estuvo complicado porque si tuve que investigar un poco para lograr algu= +nas cosillas (porque a veces tiene su truco... y le manej=C3=A9 una l=C3=B3= +gica muy m=C3=ADa), pero al final se logr=C3=B3 y se aprendi=C3=B3 mucho m= +=C3=A1s.

+

Me encanta que en los cursos se establezcan estos retos tipo proyecto. +

Ok, =C2=A1hora del examen y de seguir aprendiendo!

= +
= +3D"Guillermo
<= +p class=3D"CommentHeader-module_CommentHeader__Name__lpA03">Guillermo Grana= +do Garcia

student=E2=80=A2
hace 6 a=C3=B1os
= +
Buenas, +Dejo aqu=C3=AD el link al repositorio de mi proyecto final +https://github.com/ggguille/themazegame

1
= +
<= +div class=3D"CommentActions-module_CommentActions__SingleRow__fNphD">
+=3D"Jesus

Jesus Daniel Martinez Bautista= +

st= +udent=E2=80=A2
hace 5 a=C3=B1os
3D""
<= +/div>
3D"Alejandro
= +

Alejandro Jes=C3=BAs Morales Marco= +s

s= +tudent=E2=80=A2
hace 6 a=C3=B1os

Necesit= +o consejo sobre c=C3=B3mo inicializar el usuario a la posici=C3=B3n 1,1 cu= +=C3=A1ndo el programa carga el nuevo nivel, s=C3=B3lo consigo que aparezca = +en el nuevo nivel en la misma posici=C3=B3n en la que abandon=C3=B3 el ante= +rior.

    Carlos Nassif Trejo Garcia

    student=E2=80=A2
    hace = +5 a=C3=B1os

    Crea una funcion en player que se llama setXY dond= +e reciba 2 enteros, a esos se los asignas al x y y del jugador.

    +

    En el mapa, en el constructor o al pasar de nivel, mandalo a llamar y as= +ignale las coordenadas que desees

    = +
    3D"Alejandro

    Alejandro Jes=C3= +=BAs Morales Marcos

    student=E2=80=A2
    hace 5 a=C3=B1os

    Lo he intentado, pero no consigo desligar la funci=C3=B3n userIn= +put de Player del bucle del juego. He conseguido ponerle moment=C3=A1neamen= +te las coordenadas (1,1), pero se vuelve a ejecutar userInput y le vuelve a= + pasar la coordenada que ten=C3=ADa previamente guardada cu=C3=A1ndo abando= +n=C3=B3 al nivel, as=C3=AD que a efectos pr=C3=A1cticos s=C3=B3lo consigo e= +mpezar un nuevo nivel en la posici=C3=B3n en que abandon=C3=A9 el anterior.= +

3D"jesus

jesus caldarello

student=E2=80=A2
hace 21 horas
= +
Excelente curso

3D"Alvaro

Alvaro Espinosa

student=E2=80=A2
hace 5 a=C3=B1os
<= +div class=3D"Markdown_Markdown__m6wuK">

Excelente curso, felicitaciones a= + todos los participantes.

= +Responder
Reportar
<= +div style=3D"height: 200px;">
<= +/div>