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

Tesoro y victoria

45/47
Recursos

Aportes 16

Preguntas 1

Ordenar por:

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

Funciona!!!

Comparto esta pagina que convierte cualquier imagen en Ascii Art: https://manytools.org/hacker-tools/convert-images-to-ascii-art/

Hola, quiero dejarles una función que me ayudó a que el juego quedara más limpio: getch() junto con system(“cls”) pueden hacer que el movimiento se vea más natural, getch() que viene en <conio.h> no espera a que presiones enter para leer el caracter 😄

IMPORTANTE Podemos hacer numeracion de los errores para tener una mejor identificacion de elos al momento de verlos, es como ver por tu propia cuenta que error es el que esta sucediendo

Por cuestiones de seguridad, es recomendable que sea visible la extensión de los archivos.
Ejemplo: Supongamos ver un archivo llamado imagen.jpg pero que en realidad es imagen.jpg.exe y al darle clic podría contener código malicioso

Que buen curso

1111111111
1010000001
1010101101
1000101001
1001001001
1010010101
1001000101
1010101001
1100001001
1001110101
1010000011
10110101&1
1000010101
1010100001
1111111111
intente hacerlo un poco complicado, nose…
¿Que le parece?

Puffs esto es excelente 😄 POO con video juegos hechos por ti mismo

hecho 😮



void Gamemapa::drawvictory()
{

string line; /*esta linea va a estar cargando cada linea de mi archivo,
las strings son uniones o arreglos de caracteres.*/
ifstream  Myfile("victoria.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 victoria no pudo cargarse"<<endl;
}
}




#include <iostream>
#include "Player.h"
#include "MapCell.h"
#include "GameMap.h"

using namespace std;

int main()
{
    GameMap Map;
    Player hero;

    Map.drawIntro();

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

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

    return 0;
}

Genial!!

Ohh, qué bonito v quedando.

#include <iostream>
#include "personaje.h"
#include "celdasDeMapa.h"
#include "elMapa.h"

int main()
{
    //se crean el mapa y el jugador
    elMapa mapaDelJuego;
    personaje personajePrincipal;
    bool gameOver = false; //se crea la condicion para que el juego no acabe

    //por estetica
    std::cout << " ESTE ES EL MEJOR JUEGO QUE VAS A JUGAR EN TODA TU VIDA " << std::endl;
    std::cout << "________________________________________________________" << std::endl;

    //se imprime el intro
    mapaDelJuego.leerIntro();
    std::cout << std::endl;

    //retorna verdadero o falso pero como es la primera vez retorna verdadero y da el id 'H' a la posicion del jugador
    mapaDelJuego.actualizarPosicion(personajePrincipal.posicionV, personajePrincipal.posicionH, gameOver);

    //el primer mapa del juego
    mapaDelJuego.dibujarMapa();

    //se imprime la ubicacion del personajePrincipal
    personajePrincipal.imprimirCoordenadas(personajePrincipal.posicionV, personajePrincipal.posicionH);

    //se inicializa el loop del juego
    while(!gameOver)
        {

            //el jugador cambia la posicion
            personajePrincipal.entrada(gameOver);

            //si la celda esta bloqueada
            if(!mapaDelJuego.actualizarPosicion(personajePrincipal.posicionV, personajePrincipal.posicionH, gameOver))
            {
                //se le asigana al personaje la posicion anterior
                personajePrincipal.posicionAnterior();
            }//si NO esta bloqueada por la funcion del condicional se actualiza la posicion del jugador

            //y luego se dibuja el mapa con los caracteres o "id" actualizados
            mapaDelJuego.dibujarMapa();

            //se imprime la ubicacion del personajePrincipal
            personajePrincipal.imprimirCoordenadas(personajePrincipal.posicionV, personajePrincipal.posicionH);

            //por estetica lineas de separacion
            std::cout << "________________________________________________________" << std::endl;
            std::cout << "________________________________________________________" << std::endl;
            std::cout << std::endl;

        }

    //se imprime el cierre
    mapaDelJuego.leerCierre();

    //por estetica

    std::cout << "________________________________________________________" << std::endl;
    std::cout << std::endl;
    std::cout << " MUCHAS GRACIAS POR JUGAR,  AHORA MEJORA CONSTANTEMENTE " << std::endl;
    return 0;
}

Que emoción completar un juego que ya sabia como iba a ganar, jaja, a un paso del tesoro se siente la adrenalina!!!

Gracias!