fixed version tested and runs in DCS now

This commit is contained in:
dutchie031
2026-07-14 20:33:04 +02:00
parent 377284ac59
commit a48ca7b973
+11 -7
View File
@@ -65,6 +65,16 @@ export class ScriptCompiler {
const luaFile = LuaFile.createFromFile(fullPath, this.options.onError);
const luaReference = fileReferenceToLuaVariable(relativePath);
const key = luaReference.replace(LUA_SCRIPT_GLOBAL_KEYWORD + '.', '').toLowerCase();
if(parsedFiles.has(key)){
this.options.onError?.({
filePath: fullPath,
line: 0,
message: `Duplicate file key detected: ${key}. This can happen if two files have different capitalization. Lua is case sensitive, but the compiler treats file keys as case insensitive.`
});
continue;
}
const parsedFile = new ParsedFile(key, luaFile, fullPath);
parsedFiles.set(parsedFile.fileKey, parsedFile);
@@ -134,13 +144,7 @@ function fileReferenceToLuaVariable(fileReference: string): string {
// Convert to ScriptGlobals.folder.FileName format
let result = LUA_SCRIPT_GLOBAL_KEYWORD;
for (let i = 0; i < parts.length; i++) {
if (i === parts.length - 1) {
// Capitalize first letter of filename
result += '.' + parts[i].charAt(0).toUpperCase() + parts[i].slice(1);
} else {
// Folder names stay lowercase
result += '.' + parts[i];
}
result += '.' + parts[i].toLowerCase();
}
return result;
}