2025-11-08 16:46:31 +01:00

68 lines
1.7 KiB
C
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#include <stdlib.h>
#include <stdio.h>
#include "input.h"
#include "game.h"
#include "graphicalGame.h"
#define MAX_NUMBER_OF_WORDS 100
#define SALAD_SIZE 20
#define WINDOW_WIDTH 800 // Beispiel: Fensterbreite für das GUI
int main(int argc, char *argv[])
{
int exitCode = EXIT_SUCCESS;
char *filename;
// Prüfen, ob Datei angegeben wurde, sonst Standarddatei verwenden
if(argc != 2)
{
printf("Keine Datei angegeben versuche Standarddatei 'words.txt'...\n");
filename = "words.txt";
}
else
{
filename = argv[1];
}
char words[MAX_NUMBER_OF_WORDS][MAX_WORD_LEN];
unsigned int wordCount = 0;
FILE *file = fopen(filename, "r");
if(file == NULL)
{
fprintf(stderr, "Konnte Datei %s nicht öffnen.\n", filename);
return EXIT_FAILURE;
}
// Wörter einlesen
wordCount = readWords(file, words, MAX_NUMBER_OF_WORDS);
fclose(file);
if(wordCount == 0)
{
fprintf(stderr, "Keine Wörter in der Datei gefunden.\n");
return EXIT_FAILURE;
}
char wordSalad[MAX_SEARCH_FIELD_LEN][MAX_SEARCH_FIELD_LEN];
// Wortsalat erstellen
unsigned int placedWords = createWordSalad(wordSalad, SALAD_SIZE, words, wordCount);
if(placedWords < wordCount)
{
fprintf(stderr, "Nicht alle Wörter konnten platziert werden: %u von %u.\n", placedWords, wordCount);
}
if(placedWords == 0) {
fprintf(stderr, "Fehler: Keine Wörter konnten platziert werden.");
return EXIT_FAILURE;
}
// Wortsalat in der Konsole anzeigen
showWordSalad(wordSalad, SALAD_SIZE);
// GUI-Spiel starten
startGame(wordSalad, SALAD_SIZE, words, wordCount, WINDOW_WIDTH);
return exitCode;
}