Strefa OMSI

Pełna wersja: Makra systemowe OMSI
Aktualnie przeglądasz uproszczoną wersję forum. Kliknij tutaj, by zobaczyć wersję z pełnym formatowaniem.
Kolejny krok przybliżający nas do opanowania skryptów OMSI to poznanie wbudowanych makr systemowych. Wersja dla niezarejestrowanych obejmuje wyłącznie makra dotyczące obiektów scenerii. Jeśli zauważyłeś błąd lub nieścisłość - napisz do mnie Prywatną Wiadomość w tej sprawie.

Obiekty scenerii
Dyrektywy zadeklarowane w pliku <folder OMSI>\program\callbacklist_scenobj.txt

GetArrBusLine
Wejściowa wartość stosu: Stack0 - indeks nadchodzącego pojazdu
Wyjściowa wartość stosu: Stringstack0 - aktualny numer linii tego pojazdu
Opis: Aby użyć tej funkcji, dany obiekt należy przypisać do przystanku (za pomocą Parent to). Zapisuje na wierzchołku stosu łańcuchowego numer linii następnego autobusu, według kolejności przyjazdów określonych przez indeks.
Przykład: 0 (M.V.GetArrBusLine) - zwraca numer linii następnego pojazdu, 1 (MVGetArrBusLine) - zwraca numer linii drugiego najbliższego wg. kolejności pojazdu

GetArrBusTerminus
Wejściowa wartość stosu: Stack0 - indeks nadchodzącego pojazdu
Wyjściowa wartość stosu: Stringstack0 - kierunek tego pojazdu
Opis: Działa na tej samej zasadzie jak GetArrBusLine, zwraca kierunek (końcowy przystanek) pojazdów
Przykład: 0 (M.V.GetArrBusTerminus) - zwraca kierunek następnego pojazdu, 1 (M.V.GetArrBusTerminus) - zwraca kierunek drugiego najbliższego wg. kolejności pojazdu

GetArrBusTimeDiff
Wejściowa wartość stosu: Stack0 - indeks nadchodzącego pojazdu
Wyjściowa wartość stosu: Stack0 - czas do przyjazdu tego pojazdu na przystanek
Opis: Działa na tej samej zasadzie jak GetArrBusLine, zwraca czas w sekundach do przyjazdu najbliższego pojazdu aż do osiągnięcia przez niego tego przystanku
Przykład: 0 (MVGetArrBusTimeDiff) - zwraca czas do przyjazdu najbliższego pojazdu na przystanek, 1 (M.V.GetArrBusTerminus) - zwraca tenże czas dla drugiego najbliższego wg. kolejności pojazdu



Pojazdy
Dyrektywy zadeklarowane w pliku <folder OMSI>\program\program\callbacklist_roadvehicle.txt

Zarejestruj się bądź zaloguj by zobaczyć zawartość. Please register or login to show this content.



Tekstury skryptowe (Script-Texturen)
Tylko w OMSI 2, używane w skryptach dotyczących zarówno obiektów scenerii jak i pojazdów. Dyrektywy zadeklarowane w pliku <folder OMSI>\program\callbacklist_scripttex.txt

Zarejestruj się bądź zaloguj by zobaczyć zawartość. Please register or login to show this content.



Wszystkie indeksy są liczone od zera, chyba, że napisane jest inaczej. Nie pytajcie mnie jak to dokładnie działa, bo sam nie do końca wiem. Niestety Autorzy gry nie opisali w sposób dokładny wszystkich mechanizmów. Daję pewną podstawę do tego, by samemu kombinować - wiecie już, które makro za co jest mniej więcej odpowiedzialne. Starałem się jak najlepiej przetłumaczyć informacje, jednakże zdaje sobie sprawę, że dla niektórych nadal będzie to czarna magia. Co do makr - polecam przejrzenie sobie ich od początku do końca, wtedy stanie się jasne, że większość z nich "zazębia" się. Aby działały jedne, muszę zadziałać wcześniej inne. Po takim przestudiowaniu powyższych opisów, zrozumienie stanie się łatwiejsze ;)

Legenda:
StackX - odpowiada X-owej komórce stosu, przykładowo Stack0 odpowiada zerowej komórce stosu;
StringstackX odpowiada X-owej komórce stosu łańcuchowego, przykładowo Stringstack0 odpowiada zerowej komórce tego stosu.

Poradnik został napisany wyłącznie dla Forum http://strefa-omsi.pl i nie może być rozpowszechniany we fragmentach lub w całości na innych stronach bez zezwolenia głównego Autora.
Przekierowanie