Siemano, piszę sobie łatwą grę RPG w konsoli.
Problem w tym że gdy ją kompiluje to cały czas mam jeden błąd który mi przeszkadza w dalszym pisaniu gry… Męcze się z tym problemem cały czas.
Błąd to : ‘Postacie’ was not declared in this scope.
A tutaj daję kod.
#include <iostream>
#include <cstdlib>
#include <ctime>
#include <cstdio>
#include <stdlib.h>
#include <string>
#include <fstream>
#include <windows.h>
void dodawanie();
using namespace std;
int losowa = rand()%4;
string klasa[4]={"Wojownik","Mag","Skrytobojca","Lucznik"};
class Postac
{
public:
string imie;
string Klasa;
int sila;
int magia;
int zwinnosc;
int strzelanie;
Postac(string i, string k, int si, int m, int z, int st)
{
{ imie = i; Klasa = k; sila = si; magia = m; zwinnosc = z; strzelanie = st;}
}
void dodawanie();
};
int main()
{
Postac Postacie[7]= {
Postac("Gracz","?",0,0,0,0),
Postac("Gracz2","?",0,0,0,0),
Postac("Gracz3","?",0,0,0,0),
Postac("Gracz4","?",0,0,0,0),
Postac("Gracz5","?",0,0,0,0),
Postac("Gracz6","?",0,0,0,0),
Postac("Gracz7","?",0,0,0,0)
};
srand ( (unsigned int)time(NULL) );
Postacie[0].dodawanie();
}
void dodawanie()
{
cout<<"Podaj swoje imie: ";
cin>>Postacie[0].imie;
Postac*Gracz;
Gracz=&Postacie[0];
Postac*Gracz2;
Gracz2=&Postacie[1];
Postac*Gracz3;
Gracz3=&Postacie[2];
Postac*Gracz4;
Gracz4=&Postacie[3];
Postac*Gracz5;
Gracz5=&Postacie[4];
Postac*Gracz6;
Gracz6=&Postacie[5];
Postac*Gracz7;
Gracz7=&Postacie[6];
Postacie[0].Klasa=klasa[rand()%4];
Postacie[1].Klasa=klasa[rand()%4];
Postacie[2].Klasa=klasa[rand()%4];
Postacie[3].Klasa=klasa[rand()%4];
Postacie[4].Klasa=klasa[rand()%4];
Postacie[5].Klasa=klasa[rand()%4];
Postacie[6].Klasa=klasa[rand()%4];
int i;
for(i = 0; i <= 6; i++)
{
if(Postacie[i].Klasa=="Wojownik")
{
Postacie[i].sila=10;
Postacie[i].magia=0;
Postacie[i].zwinnosc=5;
Postacie[i].strzelanie=0;
}
else if(Postacie[i].Klasa=="Mag")
{
Postacie[i].sila=0;
Postacie[i].magia=10;
Postacie[i].zwinnosc=5;
Postacie[i].strzelanie=0;
}
else if(Postacie[i].Klasa=="Skrytobojca")
{
Postacie[i].sila=0;
Postacie[i].magia=0;
Postacie[i].zwinnosc=10;
Postacie[i].strzelanie=5;
}
else if(Postacie[i].Klasa=="Lucznik")
{
Postacie[i].sila=0;
Postacie[i].magia=0;
Postacie[i].zwinnosc=5;
Postacie[i].strzelanie=10;
}
}
int p;
for(p=0;p<=6;p++)
{
cout<<"Klasa "<<Postacie[p].imie<<" to "<<Postacie[p].Klasa<<endl;
cout<<"Sila "<<Postacie[p].imie<<" to "<<Postacie[p].sila<<endl;
cout<<"Magia "<<Postacie[p].imie<<" to "<<Postacie[p].magia<<endl;
cout<<"Zwinnosc "<<Postacie[p].imie<<" to "<<Postacie[p].zwinnosc<<endl;
cout<<"Strzelanie "<<Postacie[p].imie<<" to "<<Postacie[p].strzelanie<<endl<<endl<<endl;
Sleep(2000);
}
}