• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

C++ Mini gierka w konsoli problem

VPS Starter Arubacloud
0 głosów
347 wizyt
pytanie zadane 31 marca 2016 w C i C++ przez veryhotshark Obywatel (1,620 p.)
// Main.cpp

#include <iostream>
#include "Kowboj.h"
#include <windows.h>
#include <cstdlib>
#include <conio.h>
#include <cstdio>


using namespace std;

int main()
{
   Poczatek();
   Menu();

    return 0;
}

//////////////////////////////////////////////////////////////////////////////////

//Kowboj.cpp

#include <iostream>
#include "Kowboj.h"
#include <windows.h>
#include <cstdlib>
#include <conio.h>
#include <cstdio>


using namespace std;



void Poczatek()
{
   Sleep(1000);
   cout<<"-------------------------------"<<endl;
   cout<<"|      GRA   W   KOWBOJE      |"<<endl;
   cout<<"-------------------------------"<<endl;
   Sleep(2000);
   cout<<"Zeby zaatakowac nacisnij : 1"<<endl;
   Sleep(1000);
   cout<<"Zeby zablokowac nacisnij : 2"<<endl;
   Sleep(1000);
   cout<<"Zeby przeladowac nacisnij : 3"<<endl;
   Sleep(1000);
   cout<<"Nacisnij ""enter"" zeby zaczac:";

}

void Menu()
{
   int wybor;
   getch(); // pobiera znak z klawiatury zeby zaczac Menu
   cout<<"\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\\b\b\b\b\b\b"; // wykasowuje slowo "nacisnij enter..."
   cout<<"Twoja rozgrywka rozpocznie sie za :";
     for (int i=3; i>=0;i--)
    {
       Sleep(1000);
         cout<<i<<"\b";
    }
    system("cls");
   cout<<"1.ATTACK"<<" || "<<"2.BLOCK"<<" || "<<"3.RELOAD"<<endl;
   cout<<"-----------------------------------------------"<<endl;
   cout<<"Wybierz : ";
   cin>>wybor;

   switch(wybor)
   {
   case 1:
      {
      My attack;
      attack.Atak();
      }
   break;
   default:
      cout<<"Fail";
   }
}

My::My(int hp)
{
   HP=hp;
}

void My::Atak()
{
   HP--;
   if(HP=0)
   {
      cout<<"DEAD";
   }
   getchar();
}

///////////////////////////////////////////////////////////////////////////////

//Kowboj.h

#include <iostream>

using namespace std;

void Poczatek();
void Menu();

class My // czyli nasz bohater w grze
{
   public:
   int HP;
   My(int=1);
   void Atak();
   void Obrona();
   void Przeladowanie();

};

Witam mam problem chce zrobić taką mini gierke w konsoli ale już mam problem, mianowicie chciałbym żeby po wyborze 1 na klawiaturze odjęło klasie My . HP o jeden a wartość pocztkowa HP to 1 a jeśli HP = 0 to wyświetliło DEAD , narazie okodowuje metodę Atak(); do tego probuje tą metodę wywołać switchem w voidzie Menu ale nie wiem gdzie jest błąd. projekt mam podzielony na dwa cpp i jeden nagłowkowy

za wszelką pomoc dziękuje

3 odpowiedzi

0 głosów
odpowiedź 31 marca 2016 przez Avernis Nałogowiec (27,400 p.)
E... a co to za błąd?
0 głosów
odpowiedź 31 marca 2016 przez Woj Tek Nowicjusz (180 p.)

co to błędów to na szybko widzę tylko tu 

if(HP=0)

a do całości to powinieneś utworzyć obiekt gracza przy inicjalizacji programu i przez referencję/wskaźnik czy delegatę zarządzać nim

komentarz 31 marca 2016 przez veryhotshark Obywatel (1,620 p.)
dobrze dziękuje muszę jeszcze trochę poczytać za mało wiem
0 głosów
odpowiedź 31 marca 2016 przez Yiome Obywatel (1,000 p.)
W funkcji

void My::Atak()

 if(HP=0) a powinno być  if(HP==0)
komentarz 31 marca 2016 przez veryhotshark Obywatel (1,620 p.)
właśnie zauważyłem dziękuje taki prosty błąd :)

Podobne pytania

0 głosów
2 odpowiedzi 273 wizyt
pytanie zadane 15 listopada 2016 w C i C++ przez mistrzuniu1 Użytkownik (600 p.)
0 głosów
1 odpowiedź 271 wizyt
pytanie zadane 18 listopada 2017 w C i C++ przez Daniel67119 Nowicjusz (210 p.)
0 głosów
1 odpowiedź 176 wizyt
pytanie zadane 18 października 2016 w C i C++ przez Magda Grzenkowicz Nowicjusz (140 p.)

93,020 zapytań

141,982 odpowiedzi

321,283 komentarzy

62,366 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 2

Można już zamawiać tom 2 książki "Wprowadzenie do bezpieczeństwa IT" - będzie to około 650 stron wiedzy o ITsec (17 rozdziałów, 14 autorów, kolorowy druk).

Planowana premiera: 30.09.2024, zaś planowana wysyłka nastąpi w drugim tygodniu października 2024.

Warto preorderować, tym bardziej, iż mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy dodatkowe 15% zniżki! Dziękujemy zaprzyjaźnionej ekipie Sekuraka za kod dla naszej Społeczności!

...