2020-02-02 21:49:54 +08:00
|
|
|
#ifndef MAIN_H
|
|
|
|
|
#define MAIN_H
|
2019-05-05 10:11:36 +08:00
|
|
|
|
|
|
|
|
#include "..\scripting\headers\sfall.h"
|
|
|
|
|
#include "..\scripting\headers\define_lite.h"
|
|
|
|
|
#include "..\scripting\headers\define_extra.h"
|
2019-11-03 10:10:11 +08:00
|
|
|
#include "..\scripting\headers\dik.h"
|
|
|
|
|
/*
|
2019-05-05 10:11:36 +08:00
|
|
|
#include "..\scripting\headers\lib.arrays.h"
|
|
|
|
|
#include "..\scripting\headers\lib.strings.h"
|
2019-11-03 10:10:11 +08:00
|
|
|
#include "..\scripting\headers\lib.inven.h"
|
|
|
|
|
*/
|
2019-05-05 10:11:36 +08:00
|
|
|
|
|
|
|
|
variable ini := "sfall-mods.ini";
|
|
|
|
|
variable translationIni;
|
|
|
|
|
|
2019-09-01 11:38:34 +08:00
|
|
|
// Gets the integer value from the specified ini
|
|
|
|
|
procedure GetIniConfig(variable section, variable key, variable def, variable inifile) begin
|
|
|
|
|
variable val := get_ini_setting(inifile + "|" + section + "|" + key);
|
|
|
|
|
if val == -1 then val := def;
|
|
|
|
|
return val;
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
// Gets the string value from the specified ini
|
|
|
|
|
procedure GetIniConfigStr(variable section, variable key, variable def, variable inifile) begin
|
|
|
|
|
variable val := get_ini_string(inifile + "|" + section + "|" + key);
|
|
|
|
|
if val == -1 or val == "" then val := def;
|
|
|
|
|
return val;
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
// Gets the integer value from sfall-mods.ini
|
2019-05-05 10:11:36 +08:00
|
|
|
procedure GetConfig(variable section, variable key, variable def) begin
|
|
|
|
|
variable val := get_ini_setting(ini + "|" + section + "|" + key);
|
|
|
|
|
if val == -1 then val := def;
|
|
|
|
|
return val;
|
|
|
|
|
end
|
|
|
|
|
|
2019-09-01 11:38:34 +08:00
|
|
|
// Gets the string value from sfall-mods.ini
|
2019-05-05 10:11:36 +08:00
|
|
|
procedure GetConfigStr(variable section, variable key, variable def) begin
|
|
|
|
|
variable val := get_ini_string(ini + "|" + section + "|" + key);
|
|
|
|
|
if val == -1 or val == "" then val := def;
|
|
|
|
|
return val;
|
|
|
|
|
end
|
|
|
|
|
|
2019-09-01 11:38:34 +08:00
|
|
|
// Gets the value from sfall-mods.ini as a temp array of strings
|
2019-05-05 10:11:36 +08:00
|
|
|
procedure GetConfigList(variable section, variable key) begin
|
|
|
|
|
variable val := get_ini_string(ini + "|" + section + "|" + key);
|
|
|
|
|
if val == -1 or val == "" then return [];
|
|
|
|
|
|
|
|
|
|
return string_split(val, ",");
|
|
|
|
|
end
|
|
|
|
|
|
2019-09-01 11:38:34 +08:00
|
|
|
// Gets the value from sfall-mods.ini as a temp array of ints
|
2019-05-05 10:11:36 +08:00
|
|
|
procedure GetConfigListInt(variable section, variable key) begin
|
|
|
|
|
variable arr, i, item;
|
|
|
|
|
|
|
|
|
|
arr := GetConfigList(section, key);
|
|
|
|
|
for (i := 0; i < len_array(arr); i++) begin
|
|
|
|
|
arr[i] := atoi(arr[i]);
|
|
|
|
|
end
|
|
|
|
|
return arr;
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
// Translates given string using Translations.ini
|
|
|
|
|
procedure Translate(variable id, variable def) begin
|
|
|
|
|
variable str := get_ini_string(translationIni + "|Sfall|" + id);
|
|
|
|
|
if not str or (strlen(str) == 0) then begin
|
|
|
|
|
str := def;
|
|
|
|
|
end
|
|
|
|
|
return str;
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
procedure InitConfigs begin
|
2019-09-01 11:38:34 +08:00
|
|
|
translationIni := GetIniConfigStr("Main", "TranslationsINI", "Translations.ini", "ddraw.ini");
|
2019-05-05 10:11:36 +08:00
|
|
|
end
|
2020-02-02 21:49:54 +08:00
|
|
|
|
|
|
|
|
#endif
|