Advertisement
Guest User

Untitled

a guest
May 24th, 2016
49
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 4.51 KB | None | 0 0
  1. void UnterSpielStart(void)
  2. {
  3.   int laufschleife;
  4.   int laufschleife2;
  5.   char alteAktiveKarte=0;
  6.   char neueAktiveKarte=0;
  7.   int Auswahl;
  8.   char partnersuche=0;
  9.   char PartnerKarte;
  10.   FILE *spielestanddatei;               //
  11.  
  12.   system("cls");
  13.   KartenInitialisieren();
  14.   KartenMischen();
  15.  
  16.   aktiverSpieler=1;
  17.   // Feld darstellen
  18.   for (laufschleife=0;laufschleife<=35;laufschleife++)
  19.     KarteDarstellen(0,laufschleife);
  20.  
  21.   // cheat Mode
  22.   for (laufschleife=0;laufschleife<=35;laufschleife++)
  23.     KarteDarstellen(6,laufschleife);
  24.  
  25.   KarteDarstellen(2,neueAktiveKarte);
  26.   PunkteDarstellen();
  27.  
  28.   consoleMoveTo(20,2);printf("s fuer speichern");
  29.   consoleMoveTo(40,2);printf("l fuer laden");
  30.  
  31.   do
  32.   {
  33.     Auswahl=getch();
  34.     if(Auswahl==224) // irgendeine Pfeiltaste
  35.     {      
  36.         Auswahl=getch();    // Richtung bestimmen
  37.         switch (Auswahl)
  38.         {
  39.           case 77:if(alteAktiveKarte != 35)neueAktiveKarte+=1;break;
  40.           case 75:neueAktiveKarte-=1;break;
  41.           case 72:if(alteAktiveKarte>5)neueAktiveKarte-=6;break;
  42.           case 80:neueAktiveKarte+=6;break;
  43.         }
  44.         if (neueAktiveKarte<0)
  45.             neueAktiveKarte=0;
  46.         if (neueAktiveKarte>35)
  47.             neueAktiveKarte-=6;
  48.     }
  49.     if (Auswahl == 's')                                     //
  50.     {
  51.         spielestanddatei=fopen("spielstand.bin","w");
  52.         if(spielestanddatei==NULL){
  53.             consoleMoveTo(20,2);printf("speichern hat nicht geklappt");
  54.         }else
  55.         {
  56.             fwrite (MemoryArray , sizeof(char), sizeof(MemoryArray), spielestanddatei);
  57.             fclose(spielestanddatei);
  58.         }  
  59.     }
  60.     if (Auswahl == 'l')
  61.     {
  62.         spielestanddatei=fopen("spielstand.bin","r");
  63.         if(spielestanddatei==NULL){
  64.             consoleMoveTo(20,2);printf("laden hat nicht geklappt");
  65.         }else
  66.         {
  67.             fread(MemoryArray , sizeof(char), sizeof(MemoryArray), spielestanddatei);
  68.             fclose(spielestanddatei);
  69.             // Feld darstellen
  70.             for (laufschleife=0;laufschleife<=35;laufschleife++)
  71.                 if (MemoryArray[laufschleife][1]==2)    // ist karte schon aufgedeckt?
  72.                     KarteDarstellen(5,laufschleife);    // ja, weg
  73.                 else
  74.                     KarteDarstellen(0,laufschleife);    // nein, darstellen
  75.            
  76.             // cheat Mode
  77.             for (laufschleife=0;laufschleife<=35;laufschleife++)
  78.                 KarteDarstellen(6,laufschleife);
  79.            
  80.             KarteDarstellen(2,neueAktiveKarte);
  81.             PunkteDarstellen();
  82.         }  
  83.     }
  84.     if (Auswahl==13) //Enter
  85.     {
  86.         if(MemoryArray[neueAktiveKarte][1]!=2)  // macht keinen Sinn anzuzeigen, wenn karte schon weg ist
  87.         {
  88.             KarteDarstellen(1,neueAktiveKarte);
  89.             if (partnersuche == 0)
  90.             {
  91.                 consoleMoveTo(0,0);printf("       ");
  92.                 partnersuche = 1;
  93.                 PartnerKarte = neueAktiveKarte;
  94.                 MemoryArray[neueAktiveKarte][1]=1;  // karte aktiv an Partnersuche
  95.             }
  96.             else
  97.             {
  98.                 partnersuche = 0;
  99.                 if(MemoryArray[PartnerKarte][0]==MemoryArray[neueAktiveKarte][0])   // sind sie gelich??
  100.                 {
  101.                     consoleMoveTo(0,0);printf("TREFFER");
  102.                     Sleep(1000);               
  103.                     MemoryArray[PartnerKarte][1]=2;     // karte weg
  104.                     MemoryArray[neueAktiveKarte][1]=2;  // karte weg
  105.                     KarteDarstellen(5,PartnerKarte);
  106.                     KarteDarstellen(5,neueAktiveKarte);
  107.                     if(aktiverSpieler==1) Sp1_Punkte=Sp1_Punkte+1;
  108.                     if(aktiverSpieler==2) Sp2_Punkte=Sp2_Punkte+1;
  109.                     PunkteDarstellen();
  110.                 }else
  111.                 {
  112.                     consoleMoveTo(0,0);printf("NIX    ");
  113.                     Sleep(1000);               
  114.                     MemoryArray[PartnerKarte][1]=0x0;       // karte verstecken
  115.                     MemoryArray[neueAktiveKarte][1]=0x0;    // karte verstecken
  116.                     KarteDarstellen(0,PartnerKarte);
  117.                     KarteDarstellen(0,neueAktiveKarte);
  118.                     if(aktiverSpieler==1) aktiverSpieler=2;
  119.                     else aktiverSpieler=1;
  120.                     PunkteDarstellen();
  121.                 }
  122.             }
  123.         }
  124.     }
  125.    
  126.     switch(MemoryArray[alteAktiveKarte][1])
  127.     {
  128.         case 0: KarteDarstellen(0,alteAktiveKarte);break; //0 -> verdeckt
  129.         case 1: KarteDarstellen(1,alteAktiveKarte);break; // 1 -> Aufgedeckt, an Partnersuche
  130.         case 2: KarteDarstellen(5,alteAktiveKarte);break; //2 -> Karte weg
  131.     }
  132.     switch(MemoryArray[neueAktiveKarte][1])
  133.     {
  134.         case 0: KarteDarstellen(2,neueAktiveKarte);break;
  135.         case 1: KarteDarstellen(3,neueAktiveKarte);break;
  136.         case 2: KarteDarstellen(4,neueAktiveKarte);break;
  137.     }
  138.     alteAktiveKarte = neueAktiveKarte;   // aus alt mach neu
  139.    
  140.     if(Sp1_Punkte+Sp2_Punkte>=18)
  141.     {
  142.         system("cls");
  143.         if(Sp1_Punkte>Sp2_Punkte)
  144.         {
  145.             consoleMoveTo(20,10); printf(" Spieler 1 hat gewonnen");
  146.         }
  147.         if(Sp2_Punkte>Sp1_Punkte)
  148.         {
  149.             consoleMoveTo(20,10); printf(" Spieler 2 hat gewonnen");
  150.         }
  151.         if(Sp1_Punkte==Sp2_Punkte)
  152.         {
  153.             consoleMoveTo(20,10); printf("Unentschieden");
  154.         }
  155.         getch(); Auswahl=27;
  156.     }
  157.        
  158.  }while (Auswahl != 27);
  159.        
  160. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement