You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
132 lines
2.3 KiB
132 lines
2.3 KiB
#include <stdio.h>
|
|
#include <string.h>
|
|
#include <stdlib.h>
|
|
#include <ctype.h>
|
|
#include <unistd.h>
|
|
|
|
void protokoll();
|
|
void clear_screen();
|
|
void willkommen();
|
|
int namePruefen();
|
|
void nameWaehlen();
|
|
void startauswahl();
|
|
void nameAusgeben();
|
|
|
|
void protokoll(){
|
|
clear_screen();
|
|
willkommen();
|
|
namePruefen();
|
|
startauswahl();
|
|
}
|
|
|
|
void clear_screen() {
|
|
system("clear");
|
|
// system("cls"); // fuer Windows
|
|
// system("clear"); // fuer UNIX/Linux
|
|
}
|
|
|
|
void willkommen(){
|
|
char ENTERtxt[] = {"-Druecke ENTER zum starten-\n"};
|
|
|
|
|
|
printf("%s", ENTERtxt);
|
|
getchar();
|
|
}
|
|
|
|
int namePruefen() {
|
|
char KonfDatei[100];
|
|
int laengeKonfDatei = 0;
|
|
|
|
FILE *fp = NULL;
|
|
fp = fopen("hangman.txt", "r");
|
|
|
|
if (fp == NULL) {
|
|
printf("Fehler beim Öffnen der Konfigurationsdatei\n");
|
|
return 1;
|
|
} else {
|
|
fscanf(fp, "%s", KonfDatei); //Inhalt der KonfDatei wird ins Array gelesen
|
|
|
|
while(KonfDatei[laengeKonfDatei] != 0){ //Laenge der KonfDatei wird ermittelt
|
|
laengeKonfDatei++;
|
|
}
|
|
|
|
if(laengeKonfDatei > 14){ //mit der Laenge wird geschaut, ob ein Name gespeichert ist oder nicht
|
|
fclose(fp);
|
|
return 0;
|
|
} else {
|
|
printf("Sieht aus, als haettest du noch keinen Namen :(\n");
|
|
nameWaehlen();
|
|
fclose(fp);
|
|
return 0;
|
|
}
|
|
}
|
|
fclose(fp);
|
|
}
|
|
|
|
void nameWaehlen(){
|
|
char name[50];
|
|
|
|
FILE *fp = NULL;
|
|
fp = fopen("hangman.txt", "w");
|
|
|
|
clear_screen(); //
|
|
|
|
printf("Geben Sie den Namen ein: ");
|
|
scanf("%s", name);
|
|
|
|
char KonfDatei[100];
|
|
snprintf(KonfDatei, sizeof(KonfDatei), "name:%s,level:01", name);
|
|
|
|
fprintf(fp, "%s", KonfDatei);
|
|
fclose(fp);
|
|
}
|
|
|
|
void startauswahl() {
|
|
int auswahl;
|
|
int modus;
|
|
|
|
clear_screen(); //
|
|
|
|
printf("Willkommen ");
|
|
printf("[1] Spielen\n[2] Namen aendern\n");
|
|
scanf("%d", &auswahl);
|
|
|
|
if(auswahl == 1){
|
|
//levelauswahl
|
|
} else if (auswahl == 2){
|
|
nameWaehlen();
|
|
} else {
|
|
printf("Eingabe ungueltig");
|
|
}
|
|
}
|
|
|
|
void nameAusgeben(){
|
|
char KonfDatei[100];
|
|
char name[50];
|
|
int i = 5;
|
|
int zaehler = 0;
|
|
int nullt;
|
|
|
|
FILE *fp = NULL;
|
|
fp = fopen("hangman.txt", "r");
|
|
|
|
fscanf(fp, "%s", KonfDatei);
|
|
while(KonfDatei[i] != ','){
|
|
zaehler++;
|
|
i++;
|
|
}
|
|
nullt = zaehler;
|
|
while(zaehler != 0){
|
|
name[--zaehler] = KonfDatei[--i];
|
|
}
|
|
|
|
i = 0;
|
|
while(name[i] != 0){
|
|
i++;
|
|
}
|
|
|
|
name[nullt] = '\0';
|
|
printf("%s\n", name);
|
|
|
|
fclose(fp);
|
|
}
|