From 1607652f628740a4b2aaf61b75bf98a5275edd3a Mon Sep 17 00:00:00 2001 From: j4nk Date: Sun, 8 Jan 2023 19:46:10 -0500 Subject: [PATCH] Added in errors, ability to specify lua file --- main.c | 35 +++++++++++++++++++++++++++++------ test | Bin 91600 -> 0 bytes 2 files changed, 29 insertions(+), 6 deletions(-) delete mode 100755 test diff --git a/main.c b/main.c index aa32db4..9a4147e 100644 --- a/main.c +++ b/main.c @@ -7,13 +7,28 @@ #define TB_IMPL #include "termbox.h" +// Errors +#define OCT_NO_LUA_FILE 1 +#define OCT_LUA_FILE_NOT_FOUND 2 +#define OCT_LUA_FILE_MISSING_OCT_INIT 3 + lua_State *L; -int initialize_everything(); +int process_args(int argc, char* argv[]); +int initialize_everything(char* lua_file); int deinitialize_everything(); + int main(int argc, char* argv[]) { - if (!initialize_everything()) { - fprintf(stderr, "Couldn't initialize Open Card Table"); + int process_args_result = process_args(argc, argv); + switch (process_args_result) { + case OCT_NO_LUA_FILE: + fprintf(stderr, "No lua file given\n"); + return EXIT_FAILURE; + break; + case OCT_LUA_FILE_NOT_FOUND: + fprintf(stderr, "Could not open file: %s\n", argv[argc-1]); + return EXIT_FAILURE; + break; } struct tb_event ev; int finish = 0; @@ -37,7 +52,15 @@ int main(int argc, char* argv[]) { return EXIT_SUCCESS; } -int initialize_everything() { +int process_args(int argc, char* argv[]) { + if (argc == 1) { // Didn't specify a file + return OCT_NO_LUA_FILE; + } + // TODO define other cmd line args here + return initialize_everything(argv[argc-1]); // lua file should always be last argument +} + +int initialize_everything(char* lua_file) { if (!oct_tb_sprite_list_initialize()) { return 0; } @@ -48,11 +71,11 @@ int initialize_everything() { } luaL_openlibs(L); oct_tb_initialize_lua(L); - luaL_dofile(L, "pong.lua"); + if (luaL_dofile(L, lua_file)) return OCT_LUA_FILE_NOT_FOUND; lua_getglobal(L, "oct_init"); lua_call(L, 0, 0); tb_init(); - return 1; + return 0; } int deinitialize_everything() { diff --git a/test b/test deleted file mode 100755 index 8839477f35eaa9969152963c04152307b3629295..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 91600 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