Files
Rex-EMoolator-docs/docs/pl/reference/SCENE.md
Patryk Gensch df6cf2f3d3
Some checks failed
docs / deploy (push) Has been cancelled
docs / build (push) Has been cancelled
Added part of docs
2026-05-19 20:51:59 +02:00

6.0 KiB

SCENE

Pojedyncza scena — jedna plansza, ekran lub minigra. Należy do EPISODE. Definiuje tło, muzykę, zakres priorytetów hotspotów oraz udostępnia metody sterowania zawartością sceny.

Pola

BACKGROUND

STRING BACKGROUND

Ścieżka do pliku .IMG z obrazem tła sceny.

DLLS

STRING DLLS

Lista bibliotek DLL podpinanych do sceny (rozszerzeń biblioteki BlooMoo, np. INERTIA).

MUSIC

STRING MUSIC

Ścieżka do pliku z muzyką tła sceny.

MUSICVOLUME

INTEGER MUSICVOLUME

Głośność muzyki sceny. Wartość 1000 odpowiada 100%. Modyfikowane metodą SETMUSICVOLUME.

MINHSPRIORITY

INTEGER MINHSPRIORITY

Minimalny priorytet (Z) hotspotów aktywnych na scenie. Modyfikowane metodą SETMINHSPRIORITY.

MAXHSPRIORITY

INTEGER MAXHSPRIORITY

Maksymalny priorytet (Z) hotspotów aktywnych na scenie. Modyfikowane metodą SETMAXHSPRIORITY.

PATH

STRING PATH

Ścieżka relatywna do katalogu dane zawierająca pliki sceny.

Metadane

Następujące pola są zapisywane jako metadane i nie wpływają bezpośrednio na działanie silnika:

  • AUTHOR — autor pliku.
  • CREATIONTIME — data utworzenia pliku.
  • LASTMODIFYTIME — data ostatniej modyfikacji pliku.
  • VERSION — wersja sceny.

Metody

GETMAXHSPRIORITY

INTEGER GETMAXHSPRIORITY()

Zwraca maksymalny priorytet hotspotów aktywnych na scenie.

Zwraca: bieżąca wartość pola MAXHSPRIORITY.

GETMINHSPRIORITY

INTEGER GETMINHSPRIORITY()

Zwraca minimalny priorytet hotspotów aktywnych na scenie.

Zwraca: bieżąca wartość pola MINHSPRIORITY.

GETPLAYINGANIMO

void GETPLAYINGANIMO(STRING groupName)

Wypełnia zmienną typu GROUP o podanej nazwie listą nazw wszystkich obiektów ANIMO aktualnie odtwarzanych na scenie. Istniejąca zawartość grupy jest nadpisywana.

Parametry

  • groupName — nazwa zmiennej GROUP, która ma zostać wypełniona.

PAUSE

void PAUSE()

Pauzuje muzykę sceny oraz wszystkie odtwarzane animacje ANIMO.

Przykłady

BARANDALF^PAUSE();

REMOVECLONES

void REMOVECLONES(STRING varName, INTEGER firstId, INTEGER lastId)

Usuwa klony zmiennej varName o numerach z zakresu [firstId, lastId]. Wartość -1 w lastId oznacza „do ostatniego klonu". Klony są nazwane wg wzorca varName_N, gdzie N rośnie od 1.

Parametry

  • varName — nazwa bazowa klonowanej zmiennej.
  • firstId — numer pierwszego klonu do usunięcia (najmniej 1).
  • lastId — numer ostatniego klonu do usunięcia, lub -1 dla wszystkich klonów do końca.

Przykłady

ARCADE^REMOVECLONES(VARSCURRENTITEMOBJECT, -1, -1);
CUTSCENKI^REMOVECLONES(SANN, -1, -1);

RESUME

void RESUME()

Wznawia muzykę sceny (z głośnością z pola MUSICVOLUME) oraz wszystkie wstrzymane animacje ANIMO.

Przykłady

BARANDALF^RESUME();

RESUMEONLY

void RESUMEONLY(STRING groupName)

Wznawia tylko te wstrzymane animacje, których nazwy znajdują się w zmiennej typu GROUP o podanej nazwie.

Parametry

  • groupName — nazwa zmiennej GROUP z listą animacji do wznowienia.

RUN

mixed RUN(STRING varName, STRING methodName, [mixed param1, ..., mixed paramN])

Dynamicznie wywołuje metodę methodName na zmiennej varName. Zachowanie identyczne jak APPLICATION.RUN; wariant na poziomie sceny istnieje dla skryptów, które mają referencję do sceny zamiast do aplikacji.

Parametry

  • varName — nazwa docelowej zmiennej.
  • methodName — nazwa wywoływanej metody.
  • param1, …, paramN — (opcjonalnie) argumenty.

Zwraca: wartość zwróconą przez wywołaną metodę.

Przykłady

S16_SPACEINVADERS^RUN(VARNAME, "SETPOSITION", 0, 0);
S16_SPACEINVADERS^RUN(VARNAME, "PLAY", VARTEMPSTRING);
S16_SPACEINVADERS^RUN(VARUFOHIT, "PLAY", ["TRAFIONY"+RANDOM^GET(0,2)]);

RUNCLONES

void RUNCLONES(STRING varName, INTEGER firstId, INTEGER lastId, STRING behaviourName)

Wywołuje procedurę behaviourName dla każdego klonu zmiennej varName w zakresie [firstId, lastId]. Wartość -1 w lastId oznacza „do ostatniego klonu". Procedura otrzymuje jako pierwszy argument ($1) nazwę klonu.

Parametry

  • varName — nazwa bazowa klonowanej zmiennej.
  • firstId — numer pierwszego klonu (najmniej 1).
  • lastId — numer ostatniego klonu lub -1.
  • behaviourName — nazwa wywoływanej procedury.

Przykłady

S16_SPACEINVADERS^RUNCLONES("ANIMOUFO", -1, -1, "BEHINITUFO");
S71_DROGA^RUNCLONES("ANNKURA", -1, -1, "BEHINITCLONES");

SETMAXHSPRIORITY

void SETMAXHSPRIORITY(INTEGER maxHSPriority)

Ustawia maksymalny priorytet hotspotów aktywnych na scenie.

Parametry

  • maxHSPriority — nowa wartość maksymalnego priorytetu.

SETMINHSPRIORITY

void SETMINHSPRIORITY(INTEGER minHSPriority)

Ustawia minimalny priorytet hotspotów aktywnych na scenie.

Parametry

  • minHSPriority — nowa wartość minimalnego priorytetu.

Przykłady

MENUGLOWNE^SETMINHSPRIORITY(999);
MENUGLOWNE^SETMINHSPRIORITY(0);

SETMUSICVOLUME

void SETMUSICVOLUME(INTEGER volume)

Ustawia głośność muzyki sceny. Wartość 1000 odpowiada 100%. Zmiana jest stosowana natychmiast, jeżeli muzyka jest aktualnie odtwarzana.

Parametry

  • volume — nowa głośność.

Przykłady

ARCADE^SETMUSICVOLUME(G_ARRSETTINGS^GET(1));
INTRO_2^SETMUSICVOLUME(500);
DIALOGS^SETMUSICVOLUME([0.8*G_ARRSETTINGS^GET(1)]);

STARTMUSIC

void STARTMUSIC(STRING filename)

Zapisuje w polu MUSIC ścieżkę do pliku muzycznego, który będzie odtwarzany jako muzyka tła sceny.

Parametry

  • filename — ścieżka do pliku muzycznego.

Przykłady

ARCADE^STARTMUSIC(VARSMUSIC);
MAGIC^STARTMUSIC("POJEDYNEK.WAV");
DIALOGS^STARTMUSIC("GABINETY.WAV");