Już wiem w czym tkwi problem, jednak w tym temacie bd pisał jak bd miał kolejne problemy.
Najpierw przedstawie ten kod ponownie:
#include <cstdlib>
#include <iostream>
#include <cstdio>
#include <process.h>
using namespace std;
int main()
{
int PB = 5; //* Określa poziom bohater
int Z = 200; //*
int a = 0; //* Uzywa opcji 1
int b = 0; //* Uzywa opcji 2
int c = 0; //* Uzywa opcji 3
int d = 0; //* Konczy program
int Pk = 0; //*Pkt doświadczenia
int Sw = 0; //* Siła wojska.
cout << "Jestes na poziomie: " << PB <<" ["<<Pk<<"/3]"<<" Aktualnie posiadasz: "<<Z <<" Zlota!"<<" Sila wojska: "<<Sw<<endl;
cout <<""<<endl;
cout << "Jest rok 1337 p.n.e. "<< "Uciekles wraz ze swoimi przyjaciolmi do lasu"<<endl;
cout <<" i zalozyles wioske"<<endl;
cout << "Na szczescie udalo Ci sie wykrasc zloto..." <<endl;
cout << ""<<endl;
cout << "Co chcesz teraz zrobic? Wybor nalezy do Ciebie !" <<endl;
cout << "1) Chce zatrudnic najemnikow" <<endl;
cout << "2) Wyruszyc na wyprawe" <<endl;
cout << "3) Zaatakowac najblizzsza wioske" <<endl;
cout << "4) Wyjsc z gry" <<endl;
cin >> a;
system("cls");
if(a==1) cout <<"Oto najemnicy ktorych mozesz rekrutowac na swoim poziomie."<<endl;
if(PB==1)cout << "1) Chlop z proca"<<endl;
if(PB==2)cout << "1) Chlop z proca"<<endl<<"2) Lekko opancerzony chlop z tasakiem" <<endl;
if(PB==3)cout << "1) Chlop z proca"<<endl<<"2) Lekko opancerzony chlop z tasakiem"<<endl<< "3) Ciezko-zbrojny piechor"<<endl;
if(PB==4)cout << "1) Chlop z proca"<<endl<<"2) Lekko opancerzony chlop z tasakiem"<<endl<< "3) Ciezko-zbrojny piechor"<<"4) Lekko-zbrojna jazda konna"<<endl;
if(PB==5)cout << "1) Chlop z proca"<<endl<<"2) Lekko opancerzony chlop z tasakiem"<<endl<< "3) Ciezko-zbrojny piechor"<<endl<<"4) Lekko-zbrojna jazda konna"<<endl<<"5) Ciezka jazda konna"<<endl;
cin >>b;
system("cls");
if(b==1) (Sw=Sw+1);
cout <<"Chlop z proca dolaczyl do Twojej armii"<<endl;
if(b==2) cout <<"Lekko opancerzony chlop z tasakiem dolaczyl do Twojej armii"<<endl;
if(b==3) cout <<"Ciezko-zbrojny piechor dolaczyl do Twojej armii"<<endl;
if(b==4) cout <<"Lekko-zbrojna jazda konna dolaczyla do twojej armii"<<endl;
if(b==5) cout <<"Ciezka jazda konna"<<endl;
cout <<Sw<<endl;
system("pause");
return main();
}
Otóż problem jest w tym jak zrobić ,aby powrócić na poczatek kodu tylko, żeby zmienne były zmienione , a nie tak jak w tym przypadku powracało do stanu domyślnego.Dodaje do Sw 1 gdy kod sie konczy jest Return i wraca do stanu poprzedniego ,a to "1" znika .Jak zrobić ,zeby ono nie znikało bardzo was proszę o pomoc mam to skończyć do wtorku ;(.Jeśli nie wytłumaczyłem problemu to proszę pisać.
Najpierw przedstawie ten kod ponownie:
#include <cstdlib>
#include <iostream>
#include <cstdio>
#include <process.h>
using namespace std;
int main()
{
int PB = 5; //* Określa poziom bohater
int Z = 200; //*
int a = 0; //* Uzywa opcji 1
int b = 0; //* Uzywa opcji 2
int c = 0; //* Uzywa opcji 3
int d = 0; //* Konczy program
int Pk = 0; //*Pkt doświadczenia
int Sw = 0; //* Siła wojska.
cout << "Jestes na poziomie: " << PB <<" ["<<Pk<<"/3]"<<" Aktualnie posiadasz: "<<Z <<" Zlota!"<<" Sila wojska: "<<Sw<<endl;
cout <<""<<endl;
cout << "Jest rok 1337 p.n.e. "<< "Uciekles wraz ze swoimi przyjaciolmi do lasu"<<endl;
cout <<" i zalozyles wioske"<<endl;
cout << "Na szczescie udalo Ci sie wykrasc zloto..." <<endl;
cout << ""<<endl;
cout << "Co chcesz teraz zrobic? Wybor nalezy do Ciebie !" <<endl;
cout << "1) Chce zatrudnic najemnikow" <<endl;
cout << "2) Wyruszyc na wyprawe" <<endl;
cout << "3) Zaatakowac najblizzsza wioske" <<endl;
cout << "4) Wyjsc z gry" <<endl;
cin >> a;
system("cls");
if(a==1) cout <<"Oto najemnicy ktorych mozesz rekrutowac na swoim poziomie."<<endl;
if(PB==1)cout << "1) Chlop z proca"<<endl;
if(PB==2)cout << "1) Chlop z proca"<<endl<<"2) Lekko opancerzony chlop z tasakiem" <<endl;
if(PB==3)cout << "1) Chlop z proca"<<endl<<"2) Lekko opancerzony chlop z tasakiem"<<endl<< "3) Ciezko-zbrojny piechor"<<endl;
if(PB==4)cout << "1) Chlop z proca"<<endl<<"2) Lekko opancerzony chlop z tasakiem"<<endl<< "3) Ciezko-zbrojny piechor"<<"4) Lekko-zbrojna jazda konna"<<endl;
if(PB==5)cout << "1) Chlop z proca"<<endl<<"2) Lekko opancerzony chlop z tasakiem"<<endl<< "3) Ciezko-zbrojny piechor"<<endl<<"4) Lekko-zbrojna jazda konna"<<endl<<"5) Ciezka jazda konna"<<endl;
cin >>b;
system("cls");
if(b==1) (Sw=Sw+1);
cout <<"Chlop z proca dolaczyl do Twojej armii"<<endl;
if(b==2) cout <<"Lekko opancerzony chlop z tasakiem dolaczyl do Twojej armii"<<endl;
if(b==3) cout <<"Ciezko-zbrojny piechor dolaczyl do Twojej armii"<<endl;
if(b==4) cout <<"Lekko-zbrojna jazda konna dolaczyla do twojej armii"<<endl;
if(b==5) cout <<"Ciezka jazda konna"<<endl;
cout <<Sw<<endl;
system("pause");
return main();
}
Otóż problem jest w tym jak zrobić ,aby powrócić na poczatek kodu tylko, żeby zmienne były zmienione , a nie tak jak w tym przypadku powracało do stanu domyślnego.Dodaje do Sw 1 gdy kod sie konczy jest Return i wraca do stanu poprzedniego ,a to "1" znika .Jak zrobić ,zeby ono nie znikało bardzo was proszę o pomoc mam to skończyć do wtorku ;(.Jeśli nie wytłumaczyłem problemu to proszę pisać.