42 lines
832 B
C
42 lines
832 B
C
#include "cli.h"
|
|
#include <SDL2/SDL.h>
|
|
#include <stdbool.h>
|
|
#include <stdio.h>
|
|
#include "ui.h"
|
|
|
|
int main(int argc, char **argv) {
|
|
CLIArgs args;
|
|
UIContext *ui;
|
|
int status;
|
|
bool running = false;
|
|
|
|
if (parseCLIArgs(argc, argv, &args)) {
|
|
return 1;
|
|
}
|
|
|
|
SDL_SetHint(SDL_HINT_VIDEO_HIGHDPI_DISABLED, "0");
|
|
SDL_SetHint(SDL_HINT_WINDOWS_DPI_AWARENESS, "system");
|
|
if (SDL_Init(SDL_INIT_EVERYTHING)) {
|
|
fprintf(stderr, "Error initializing SDL: %s\n", SDL_GetError());
|
|
return 1;
|
|
}
|
|
|
|
ui = uiInit();
|
|
if (!ui) {
|
|
SDL_Quit();
|
|
return 1;
|
|
}
|
|
|
|
if (args.filename) {
|
|
if (uiLoadGame(ui, args.filename)) {
|
|
return 1;
|
|
}
|
|
running = true;
|
|
}
|
|
|
|
status = uiRun(ui, running);
|
|
uiDestroy(ui);
|
|
SDL_Quit();
|
|
return status;
|
|
}
|