3.2 KiB
VIRTUALGRAPHICSOBJECT
Wirtualny obiekt graficzny — pełni rolę proxy lub kompozytu dla rzeczywistego obiektu wskazanego polem SOURCE. Pozwala traktować inny element graficzny jak osobną encję z własną pozycją, priorytetem, maską i flagami kolizji.
W skryptach gier ten typ pojawia się punktowo — głównie w Reksio i Czarodzieje (common\classes\SinglePuzzle.class).
Pola
ASBUTTON
BOOL ASBUTTON
Określa, czy obiekt ma być traktowany jako klikalny przycisk.
MASK
STRING MASK
Nazwa zmiennej graficznej używanej jako maska wycinająca przy renderowaniu obiektu.
MONITORCOLLISION
BOOL MONITORCOLLISION
Włącza monitorowanie kolizji z innymi obiektami graficznymi.
MONITORCOLLISIONALPHA
BOOL MONITORCOLLISIONALPHA
Włącza monitorowanie kolizji z uwzględnieniem kanału przezroczystości — kolizja jest wykrywana tylko, gdy nakładające się piksele są nieprzezroczyste.
PRIORITY
INTEGER PRIORITY
Priorytet rysowania (pozycja w osi Z).
SOURCE
STRING SOURCE
Nazwa zmiennej graficznej, której zawartość jest renderowana przez obiekt wirtualny.
TOCANVAS
BOOL TOCANVAS
Określa, czy obiekt jest rysowany na kanwie.
VISIBLE
BOOL VISIBLE
Określa, czy obiekt jest widoczny.
Metody
GETHEIGHT
INTEGER GETHEIGHT()
Zwraca wysokość obiektu w pikselach.
Zwraca: INTEGER — wysokość.
GETPOSITIONX
INTEGER GETPOSITIONX()
Zwraca pozycję X obiektu.
Zwraca: INTEGER — koordynata X.
GETPOSITIONY
INTEGER GETPOSITIONY()
Zwraca pozycję Y obiektu.
Zwraca: INTEGER — koordynata Y.
GETWIDTH
INTEGER GETWIDTH()
Zwraca szerokość obiektu w pikselach.
Zwraca: INTEGER — szerokość.
MOVE
void MOVE(INTEGER offsetX, INTEGER offsetY)
Przesuwa obiekt o zadane wartości względem aktualnej pozycji.
Parametry
offsetX,offsetY— wektor przesunięcia.
Przykłady
VGO^MOVE($1,$2);
SETMASK
void SETMASK(STRING maskName)
Ustawia maskę wycinającą — odpowiednik pola MASK.
Parametry
maskName— nazwa zmiennej graficznej pełniącej rolę maski.
Przykłady
VGO^SETMASK(MSK);
SETPOSITION
void SETPOSITION(INTEGER posX, INTEGER posY)
Ustawia bezwzględną pozycję obiektu.
Parametry
posX,posY— nowa pozycja.
Przykłady
VGO^SETPOSITION($1,$2);
SETPRIORITY
void SETPRIORITY(INTEGER priority)
Ustawia priorytet rysowania (pozycję w osi Z) — odpowiednik pola PRIORITY.
Parametry
priority— nowa wartość priorytetu.
Przykłady
VGO^SETPRIORITY(1000);
SETSOURCE
void SETSOURCE(STRING sourceName)
Ustawia zmienną graficzną wskazywaną przez pole SOURCE.
Parametry
sourceName— nazwa zmiennej graficznej.
Przykłady
VGO^SETSOURCE($2);
Sygnały
ONINIT
Wywoływany w momencie inicjalizacji obiektu.
ONSIGNAL
Wywoływany po otrzymaniu sygnału (zobacz Zdarzenia i sygnały).