vuoi
o PayPal
tutte le volte che vuoi
#include <conio.h>
#include <iostream>
#include <time.h>
#include <string.h>
#include <fstream>
#include <stdlib.h>
using namespace std;
/*apro il file che contiene i dati per il labirinto*/
fstream apert("lab.txt", ios::in | ios::out);
int pers=900;
/*serve per poi mettere la potenza dei mostri*/
struct mostri
{ int pv;
};
/*apro la struct classica con qualche modifica rispetto al solita sruct utilizzo
�
una con pi variabili booleane.*/
struct nodo
{ nodo *nord,*sud,*est,*ovest;
int info,stanza;
};
nodo *labi[12];
/*void per la creazione delle 12 stanze*/
void crea()
{ for(int i=0;i<12;i++)
{ nodo *stz;
stz=new nodo;
labi[i]=stz;
}
}
/*void che serve per creare il labirinto in grafica come avevamo fatto nei altri
programmi l'anno scorso.*/
void labiri(nodo *indice)
{ string pe,po,ps,pn;
int i=0;
if(indice->est==NULL)
pe="|";
else
pe="=";
if(indice->ovest==NULL)
po="|";
else
po="=";
if(indice->sud==NULL)
ps="-";
else
ps="||";
if(indice->nord==NULL)
pn="-";
else
pn="||";
cout<<" - "<<pn<<" - "<<"\n";
cout<<"| |"<<"\n";
cout<<po<<" "<<pe<<"\n";
cout<<"| |"<<"\n";
cout<<" - "<<ps<<" - "<<"\n";
}
/*serve per cambiare stanza e far si che si incontrino anche altri mostri!!!!*/
void cambi()
{ int n, info,i;
for(i=0;i<12;i++)
{
apert>>labi[i]->stanza;
/*parte ovest */
apert>>info;
if(info==-1)
{n-1;
labi[i]->ovest=NULL;
}else
labi[i]->ovest=labi[info-1];
apert>>info;
/*parte nord*/
if(info==-1)
{n=n-1;
labi[i]->nord=NULL;
}else
labi[i]->nord=labi[info-1];
apert>>info;
/*parte est*/
if(info==-1)
{n=n-1;
labi[i]->est=NULL;
}else
labi[i]->est=labi[info-1];
apert>>info;
/*parte sud*/
if(info==-1)
{n=n-1;
labi[i]->sud=NULL;
}else
labi[i]->sud=labi[info-1];
apert>>labi[i]->info;
}
}
/*scontri tra mostri e personaggio!*/
void bat (int &oa)
{ int scelta,n;
mostri t[4];
t[0].pv=300;
do{ n=0;
cout<<"mostro cosa vuoi fare?:"<<"\n";
cout<<"1:attacca 2:scappa"<<"\n";
cin>>scelta;
if(scelta==1)
{
do{
cout<<"pv pers: "<<pers<<"\tpunti mop: "<<t[n].pv<<"\n";
cout<<"hai attaccato"<<"\n";
t[n].pv=t[n].pv-(rand()%100);
if(t[n].pv<0)
cout<<"hai vinto"<<"\n";
else
pers=pers-(rand()%100);
if(pers<0)
cout<<"Sei morto.!!"<<"\n";
}while(t[n].pv>0 && pers>0 );}
if (scelta==2 )
{cout<<"scappi dal mostro "<<"\n";
} }while(scelta!=1 && scelta!=2 );
}
/* void per iniziare a spostarsi nelle stanze e per raccogliere l'oro.*/
void parte1()
{ int i=0,scelta,ot,oa,t,pa[4];
nodo *sat=labi[i];
ot=0;
oa=0;
do{ pa[0]=0;
pa[1]=0;
pa[2]=0;
pa[3]=0;
cout<<"Sei entrato nella stanza"<<"\n"<<"\n";
if(sat->info==1)
{ot=rand()%100;
oa=oa+ot;
cout<<"hai trovato le seguenti monete:"<<ot<<"\n";
cout<<"ora hai:"<<oa<<" monete d'oro!"<<"\n";
if(oa>=80)
{ cout<<"cosa vuoi fare??:"<<"\n";
cout<<"1:curati"<<"\n";
cout<<"2:stanza dopo"<<"\n";
do{
cin>>scelta;
cout<<"\n";
}while(scelta<1 || scelta>2);
if(scelta==1 )
{ pers=900;
oa=oa-80;
cout<<"ora hai:"<<oa<<" monete d'oro!"<<"\n"; }
else
cout<<"hai mantenuto le:"<<oa<<" monete d'oro!"<<"\n"; }}
if(sat->info==0)
{ cout<<"alt!mostro!"<<"\n";
t=rand()%4;
bat(oa);
}
if (pers>0 && pers!=0)
{ labiri(sat);
/*scelta delle stanza*/
cout<<"scegli la porta"<<"\n";
if(sat->nord!=0)
{cout<<"1:porta nord"<<"\n";
pa[0]=1;}
if(sat->sud!=0)
{cout<<"2:porta sud"<<"\n";
pa[1]=2;}
if(sat->est!=0)
{cout<<"3:porta est"<<"\n";
pa[2]=3;}
if(sat->ovest!=0)
{cout<<"4:porta ovest"<<"\n";
pa[3]=4;}
do{
cin>>scelta;