Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void UnterSpielStart(void)
- {
- int laufschleife;
- int laufschleife2;
- char alteAktiveKarte=0;
- char neueAktiveKarte=0;
- int Auswahl;
- char partnersuche=0;
- char PartnerKarte;
- FILE *spielestanddatei; //
- system("cls");
- KartenInitialisieren();
- KartenMischen();
- aktiverSpieler=1;
- // Feld darstellen
- for (laufschleife=0;laufschleife<=35;laufschleife++)
- KarteDarstellen(0,laufschleife);
- // cheat Mode
- for (laufschleife=0;laufschleife<=35;laufschleife++)
- KarteDarstellen(6,laufschleife);
- KarteDarstellen(2,neueAktiveKarte);
- PunkteDarstellen();
- consoleMoveTo(20,2);printf("s fuer speichern");
- consoleMoveTo(40,2);printf("l fuer laden");
- do
- {
- Auswahl=getch();
- if(Auswahl==224) // irgendeine Pfeiltaste
- {
- Auswahl=getch(); // Richtung bestimmen
- switch (Auswahl)
- {
- case 77:if(alteAktiveKarte != 35)neueAktiveKarte+=1;break;
- case 75:neueAktiveKarte-=1;break;
- case 72:if(alteAktiveKarte>5)neueAktiveKarte-=6;break;
- case 80:neueAktiveKarte+=6;break;
- }
- if (neueAktiveKarte<0)
- neueAktiveKarte=0;
- if (neueAktiveKarte>35)
- neueAktiveKarte-=6;
- }
- if (Auswahl == 's') //
- {
- spielestanddatei=fopen("spielstand.bin","w");
- if(spielestanddatei==NULL){
- consoleMoveTo(20,2);printf("speichern hat nicht geklappt");
- }else
- {
- fwrite (MemoryArray , sizeof(char), sizeof(MemoryArray), spielestanddatei);
- fclose(spielestanddatei);
- }
- }
- if (Auswahl == 'l')
- {
- spielestanddatei=fopen("spielstand.bin","r");
- if(spielestanddatei==NULL){
- consoleMoveTo(20,2);printf("laden hat nicht geklappt");
- }else
- {
- fread(MemoryArray , sizeof(char), sizeof(MemoryArray), spielestanddatei);
- fclose(spielestanddatei);
- // Feld darstellen
- for (laufschleife=0;laufschleife<=35;laufschleife++)
- if (MemoryArray[laufschleife][1]==2) // ist karte schon aufgedeckt?
- KarteDarstellen(5,laufschleife); // ja, weg
- else
- KarteDarstellen(0,laufschleife); // nein, darstellen
- // cheat Mode
- for (laufschleife=0;laufschleife<=35;laufschleife++)
- KarteDarstellen(6,laufschleife);
- KarteDarstellen(2,neueAktiveKarte);
- PunkteDarstellen();
- }
- }
- if (Auswahl==13) //Enter
- {
- if(MemoryArray[neueAktiveKarte][1]!=2) // macht keinen Sinn anzuzeigen, wenn karte schon weg ist
- {
- KarteDarstellen(1,neueAktiveKarte);
- if (partnersuche == 0)
- {
- consoleMoveTo(0,0);printf(" ");
- partnersuche = 1;
- PartnerKarte = neueAktiveKarte;
- MemoryArray[neueAktiveKarte][1]=1; // karte aktiv an Partnersuche
- }
- else
- {
- partnersuche = 0;
- if(MemoryArray[PartnerKarte][0]==MemoryArray[neueAktiveKarte][0]) // sind sie gelich??
- {
- consoleMoveTo(0,0);printf("TREFFER");
- Sleep(1000);
- MemoryArray[PartnerKarte][1]=2; // karte weg
- MemoryArray[neueAktiveKarte][1]=2; // karte weg
- KarteDarstellen(5,PartnerKarte);
- KarteDarstellen(5,neueAktiveKarte);
- if(aktiverSpieler==1) Sp1_Punkte=Sp1_Punkte+1;
- if(aktiverSpieler==2) Sp2_Punkte=Sp2_Punkte+1;
- PunkteDarstellen();
- }else
- {
- consoleMoveTo(0,0);printf("NIX ");
- Sleep(1000);
- MemoryArray[PartnerKarte][1]=0x0; // karte verstecken
- MemoryArray[neueAktiveKarte][1]=0x0; // karte verstecken
- KarteDarstellen(0,PartnerKarte);
- KarteDarstellen(0,neueAktiveKarte);
- if(aktiverSpieler==1) aktiverSpieler=2;
- else aktiverSpieler=1;
- PunkteDarstellen();
- }
- }
- }
- }
- switch(MemoryArray[alteAktiveKarte][1])
- {
- case 0: KarteDarstellen(0,alteAktiveKarte);break; //0 -> verdeckt
- case 1: KarteDarstellen(1,alteAktiveKarte);break; // 1 -> Aufgedeckt, an Partnersuche
- case 2: KarteDarstellen(5,alteAktiveKarte);break; //2 -> Karte weg
- }
- switch(MemoryArray[neueAktiveKarte][1])
- {
- case 0: KarteDarstellen(2,neueAktiveKarte);break;
- case 1: KarteDarstellen(3,neueAktiveKarte);break;
- case 2: KarteDarstellen(4,neueAktiveKarte);break;
- }
- alteAktiveKarte = neueAktiveKarte; // aus alt mach neu
- if(Sp1_Punkte+Sp2_Punkte>=18)
- {
- system("cls");
- if(Sp1_Punkte>Sp2_Punkte)
- {
- consoleMoveTo(20,10); printf(" Spieler 1 hat gewonnen");
- }
- if(Sp2_Punkte>Sp1_Punkte)
- {
- consoleMoveTo(20,10); printf(" Spieler 2 hat gewonnen");
- }
- if(Sp1_Punkte==Sp2_Punkte)
- {
- consoleMoveTo(20,10); printf("Unentschieden");
- }
- getch(); Auswahl=27;
- }
- }while (Auswahl != 27);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement