diff --git a/.gitattributes b/.gitattributes index e0b19036f..470b29ae4 100644 --- a/.gitattributes +++ b/.gitattributes @@ -13,6 +13,7 @@ *.ld text *.inc text *.txt text +*.lua text *.json text *.yaml text @@ -24,4 +25,5 @@ *.ico binary *.mp3 binary *.lvl binary -*.tex binary \ No newline at end of file +*.tex binary +*.luac binary \ No newline at end of file diff --git a/src/pc/lua/smlua.c b/src/pc/lua/smlua.c index 0a219f21e..fd9ca690a 100644 --- a/src/pc/lua/smlua.c +++ b/src/pc/lua/smlua.c @@ -275,7 +275,7 @@ void smlua_init(void) { gPcDebug.lastModRun = gLuaActiveMod; for (int j = 0; j < mod->fileCount; j++) { struct ModFile* file = &mod->files[j]; - if (!str_ends_with(file->relativePath, ".lua")) { + if (!(str_ends_with(file->relativePath, ".lua") || str_ends_with(file->relativePath, ".luac"))) { continue; } smlua_load_script(mod, file, i); @@ -288,7 +288,7 @@ void smlua_init(void) { void smlua_update(void) { lua_State* L = gLuaState; if (L == NULL) { return; } - + smlua_call_event_hooks(HOOK_UPDATE); // Collect our garbage after calling our hooks. // If we don't, Lag can quickly build up from our mods. diff --git a/src/pc/mods/mod.c b/src/pc/mods/mod.c index 5e5d5cecb..86a535902 100644 --- a/src/pc/mods/mod.c +++ b/src/pc/mods/mod.c @@ -13,7 +13,7 @@ size_t mod_get_lua_size(struct Mod* mod) { for (int i = 0; i < mod->fileCount; i++) { struct ModFile* file = &mod->files[i]; - if (!str_ends_with(file->relativePath, ".lua")) { continue; } + if (!(str_ends_with(file->relativePath, ".lua") || str_ends_with(file->relativePath, ".luac"))) { continue; } size += file->size; } @@ -318,7 +318,7 @@ static bool mod_load_files(struct Mod* mod, char* modName, char* fullPath) { // deal with mod directory { - const char* fileTypes[] = { ".lua", NULL }; + const char* fileTypes[] = { ".lua", ".luac", NULL }; if (!mod_load_files_dir(mod, fullPath, "", fileTypes)) { return false; } } diff --git a/src/pc/mods/mod_import.c b/src/pc/mods/mod_import.c index 2833dd5cb..3aa2d754b 100644 --- a/src/pc/mods/mod_import.c +++ b/src/pc/mods/mod_import.c @@ -76,7 +76,7 @@ static bool mod_import_zip(char* path, bool* isLua, bool* isDynos) { return false; } - if (str_ends_with(file_stat.m_filename, ".lua")) { + if (str_ends_with(file_stat.m_filename, ".lua") || str_ends_with(file_stat.m_filename, ".luac")) { path_get_folder(file_stat.m_filename, luaPath); *isLua = true; break; @@ -214,7 +214,7 @@ bool mod_import_file(char* path) { return false; } - if (str_ends_with(path, ".lua")) { + if (str_ends_with(path, ".lua") || str_ends_with(path, ".luac")) { isLua = true; ret = mod_import_lua(path); } else if (str_ends_with(path, ".zip")) {