Przejdź do treści

Dostęp do plików konfiguracyjnych

Ta część Ikarusa umożliwia dostęp do Gothic.ini i pliku konfiguracyjnego załadowanej modyfikacji.

Inicjalizacja

Najlepszym sposobem na zainicjowanie Ikarusa jest wywołanie MEM_InitAll() w funkcji Init_Global().

Warning

Jeżeli chcesz używać Ikarusa z Gothiciem 1, najlepiej będzie, jeśli zdefiniujesz własną funkcję Init_Global() i wywołasz ją w każdej funkcji inicjującej świat.

MEM_InitAll();

Implementacja

Ikarus.d na GitHubie

Funkcje odczytu

MEM_GetCommandLine

Zwraca zawartość linii poleceń przekazaną do Gothica.

func string MEM_GetCommandLine()
Zwracana wartość

Funkcja zwraca zawartość linii poleceń przekazaną do Gothica. Może to wyglądać na przykład tak:

"-TIME:7:35 -GAME:TEST_IKARUS.INI -ZREPARSE -ZWINDOW -ZLOG:5,S -DEVMODE -ZMAXFRAMERATE:30"

MEM_GetGothOpt

Przeszukuje Gothic.ini w poszukiwaniu opcji

func string MEM_GetGothOpt(var string sectionname, var string optionname)
Parametry
  • var string sectionname
    Nazwa sekcji np. [GAME]
  • var string optionname
    Szukana opcja np. playLogoVideos

Zwracana wartość

Funkcja zwraca wartość opcji w postaci ciągu znaków, albo pustą zmienną, gdy opcja nie istnieje w danej sekcji.

MEM_GetModOpt

Przeszukuje ini załadowanej modyfikacji w poszukiwaniu opcji.

func void MEM_GetModOpt(var string sectionname, var string optionname)
Parametry
  • var string sectionname
    Nazwa sekcji np. [INFO]
  • var string optionname
    Szukana opcja np. Title

Zwracana wartość

Funkcja zwraca wartość opcji w postaci ciągu znaków, albo pustą zmienną, gdy opcja nie istnieje w danej sekcji.

MEM_GothOptSectionExists

Sprawdza, czy dana sekcja istnieje w Gothic.ini

func int MEM_GothOptSectionExists(var string sectionname)
Parametry
  • var string sectionname
    Nazwa sekcji np. [GAME]

Zwracana wartość

Funkcja zwraca wartość TRUE jeśli sekcja istnieje, inaczej FALSE.

MEM_ModOptSectionExists

Sprawdza, czy dana sekcja istnieje w ini załadowanej modyfikacji.

func int MEM_ModOptSectionExists(var string sectionname)
Parametry
  • var string sectionname
    Nazwa sekcji np. [INFO]

Zwracana wartość

Funkcja zwraca wartość TRUE jeśli sekcja istnieje, inaczej FALSE.

MEM_GothOptExists

Sprawdza, czy dana opcja istnieje w Gothic.ini

func int MEM_GothOptExists(var string sectionname, var string optionname)
Parametry
  • var string sectionname
    Nazwa sekcji np. [GAME]
  • var string optionname
    Szukana opcja np. playLogoVideos

Zwracana wartość

Funkcja zwraca wartość TRUE jeśli opcja w danej sekcji istnieje, inaczej FALSE.

MEM_ModOptExists

Sprawdza, czy dana opcja istnieje w ini załadowanej modyfikacji.

func int MEM_ModOptExists(var string sectionname, var string optionname)
Parametry
  • var string sectionname
    Nazwa sekcji np. [INFO]
  • var string optionname
    Szukana opcja np. Title

Zwracana wartość

Funkcja zwraca wartość TRUE jeśli opcja w danej sekcji istnieje, inaczej FALSE.

Funkcje zapisu

Warning

Plik konfiguracyjny modyfikacji nigdy nie jest zapisywany na dysku, dlatego nie ma oddzielnej funkcji do jego zapisu.

MEM_SetGothOpt

Opcja option w sekcji section jest ustawiana na value. Jeśli sekcja i/lub opcja nie istnieje, zostanie utworzona.

func void MEM_SetGothOpt(var string section, var string option, var string value)
Parametry
  • var string section
    Sekcja, w której znajduje się opcja
  • var string option
    Opcja do zapisania/nadpisania
  • var string value
    Wartość, na jaką ustawiana jest opcja

MEM_ApplyGothOpt

Stosuje zmiany i zapisuje plik ini na dysku.

func void MEM_ApplyGothOpt()

Tip

Jeśli wprowadzasz nowe opcje, najlepiej kierować się paroma zasadami. Dobrą praktyką jest nazywanie swoich opcji tak, aby inni mogli je zrozumieć i umieszczanie ich w sekcji o takiej samej nazwie jak twój mod. Nie umieszczaj opcji swojej modyfikacji w sekcji [GAME] lub [PERFORMANCE].

Funkcje klawiszy

Gothic.ini zawiera przypisanie klawiszy fizycznych (np. "W") do klawiszy logicznych (np. "keyUp").

MEM_GetKey

Zwraca podstawowy klawisz przypisany do klawisza logicznego.

func int MEM_GetKey(var string name)
Parametry
  • var string name
    Nazwa klawisza logicznego

Zwracana wartość

Funkcja zwraca klawisz przypisany do klawisza logicznego.

MEM_GetSecondaryKey

Zwraca zapasowy klawisz przypisany do klawisza logicznego.

func int MEM_GetSecondaryKey(var string name)
Parametry
  • var string name
    Nazwa klawisza logicznego

Zwracana wartość

Funkcja zwraca klawisz przypisany do klawisza logicznego.

MEM_SetKeys

Ustawia klawisze klawiatury dla podanego klawisza logicznego.

func void MEM_SetKeys(var string name, var int primary, var int secondary)
Parametry

MEM_SetKey

Ustawia podstawowy klawisz klawiatury dla klawisza logicznego.

func void MEM_SetKey(var string name, var int key)
Parametry
  • var string name
    Nazwa klawisza logicznego
  • var int key
    Podstawowy klawisz do przypisania, można go pobrać z pliku Ikarus_Const_G1 / Ikarus_Const_G2.

MEM_SetSecondaryKey

Ustawia zapasowy klawisz klawiatury dla klawisza logicznego.

func void MEM_SetSecondaryKey(var string name, var int key)
Parametry