Introducción a C++

1

Todo lo que aprenderás sobre C++

2

¿Qué es programar y por qué aprender C++?

Conceptos Generales de C++

3

La Historia de C++ y sus diferencias con C

Preparando el entorno de trabajo

4

Instalando Codeblocks

5

Pasos para instalar en mac

6

Ejecutando nuestro primer programa

7

¿Qué son las librerías STD? - Portada del Proyecto

Manejo de memoria

8

¿Qué es la memoria y tipos de datos?

9

Alojando variables en memoria

10

¿Cómo usar operadores?

11

¿Qué son los apuntadores?

12

Reto: Escribir un programa que calcule áreas.

Entrada de datos y funciones

13

¿Cómo introducir datos a nuestro programa?

14

¿Cómo usar condicionales?

15

Usando condicionales

16

¿Cómo encapsular código en funciones ?

17

¿Qué son los parámetros y como usarlos?

18

Reto: Juego narrativo implementando condicionales y entrada de datos.

Loops y arreglos

19

¿Qué son los arreglos?

20

¿Qué son los Loops?

21

Programando Loops

22

Loops , arreglos y arreglos bidimensionales

23

Dibujando el mapa de nuestro juego con arreglos

24

Manipulando mi jugador con inputs en arreglos unidimensionales

25

Arreglos bidimensionales

26

Reto: Moviendo a mi personaje en mi arreglo bidimensional

Lectura de Archivos

27

Creando y leyendo un archivo externo

28

Leyendo archivos externos

29

Reto: En el mapa, crear punto de inicio y salida del jugador

Programación Orientada a Objetos

30

¿Qué es POO?

31

Definiendo una clase y creando sus instancias

32

Encapsulación

33

Abstracción

34

Herencia

35

Propiedades de clase en herencia

36

Polimorfismo

Finalizando nuestro proyecto

37

Creación de personaje y archivo de encabezado

38

Moviendo mi personaje con entrada de datos

39

Mapa

40

Interacción entre el personaje y el mapa

41

Paredes

42

Optimizando trazado de mapa

43

Colisiones

44

Creando nuestra portada de juego

45

Tesoro y victoria

46

Conclusiones

47

Proyecto final

Aún no tienes acceso a esta clase

Crea una cuenta y continúa viendo este curso

Creando nuestra portada de juego

44/47
Recursos

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.

Aportes 14

Preguntas 1

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.

Para que quede mas limpio el juego pueden sustituir

cin>>line
//por
getchar();

Para que con el enter baste para que continue el codigo, tambien pueden agregar

system("CLS");

Para limpiar la pantalla de la consola luego de dibujar el intro, el final y en la primera linea del ciclo while() para que sea vea un solo mapa.

Esta genial!

Ocupe la funcion tolower() en la entrada del movimiento en caso de que tengas el Bloq May activado igual funciona, yo lo deje asi:

    char userInput = ' ';
    //cin>> userInput;
    userInput = tolower(getchar());
    //userInput = tolower(userInput);

De las 2 maneras funciona

Eri es GENIAL!

cout << " / )" << endl;
cout << " ( |
" << endl;
cout << “/| \ " << endl;
cout << " // \ " << endl;
cout << " /// | " << endl;
cout << " /( \ )/ " << endl;
cout << " \ _ //)” << endl;
cout << " \ :__ ///" << endl;
cout << " \ ) // \ " << endl;
cout << " \: / // |/ " << endl;
cout << " \ / \ // \ " << endl;
cout << " /) \ …-’ (| _| " << endl;
cout << " // / .’ \ \ \ " << endl;
cout << " /| \ _
___ \ | /" << endl;
cout << " (| _ _ / ‘-. ) /.’" << endl;
cout << " \ . '-.
_ / / \ " << endl;
cout << " \’. > --. ‘. \ / / /" << endl;
cout << " \ \ \ \ \ .’ /.’" << endl;
cout << " \ \ ‘._ / \ ) / .’ " << endl;
cout << " \ _ _ | .’_/ __/ " << endl;
cout << " \ \ _ | / / _/ _ " << endl;
cout << " \ \ / _.’ / / \ " << endl;
cout << " \ \ / _.’ / / \ " << endl;
cout << " \ \ .’ .’/ \ " << endl;
cout << " \ \ _ | / / _/ _" << endl;
cout << " \ \ / .’ / / \ " << endl;
cout <<" \ | /.’ / .’ '-,
"<<endl;
cout <<" \ \ .’ .’/ \ “<<endl;
cout <<” /\ /\ ) ( /.’ \ “<<endl;
cout <<” | _// \ (.’ / | |"<<endl;
cout <<" /
__ /–’, __/ /"<<endl; cout <<" (_ ) /b) \ '. : \___.-'_/ \__/ "<<endl; cout <<" /:/: , ) : ( /_.'__/-'|_ _ /"<< endl; cout <<" /:/: __/\ > __,_.----.__\ / (/(/("<<endl; cout <<" (_(,_/V .'/--' _/ __/ | /"<<endl; cout <<" VvvV // _.-’ .’ \ \ " <<endl;
cout <<" n_n// (((/->/ | “<<endl;
cout <<” ‘–’ ~=’ \ |"<<endl;
cout <<" \ |"<<endl;
cout <<" \ |"<<endl;
cout <<" | |
,"<<endl;
cout <<" \ \ /"<<endl;
cout <<" '.
)"<<endl;

Muy cool

Magia negra 😂

hecho !!

void Gamemapa::drawintro()
{

string line; /*esta linea va a estar cargando cada linea de mi archivo,
las strings son uniones o arreglos de caracteres.*/
ifstream  Myfile("intro.txt"); //entrada de flujo de datos

if(Myfile.is_open())

{
while(getline(Myfile,line))
{
    cout << line <<endl;
}
cin>> line; //solo para pausar por un momento el programa
}
else
{
    cout << "la intro no pudo cargarse"<<endl;
}
}```
#include <iostream>
#include "Player.h"
#include "MapCell.h"
#include "GameMap.h"

using namespace std;

int main()
{
    bool gameContinue = true;
    GameMap Map;
    Player hero;

    Map.drawIntro();

    while ( gameContinue ) {
        Map.draw();
        hero.CallInput();

        if ( !Map.setPlayerCell(hero.x, hero.y) ) {
            hero.resetToSafePosition();
        }


    }

    return 0;
}

Esto es lo maximo 😄

…
Aqui pueden sacar otros pixel art: https://asciiart.website/index.php?art=creatures/dragons

Queda super!

Alguien sabe el por qué al escribir ese código no me muestra la figiura completa en consola?

Excelente.

gracias!