214 lines
3.2 KiB
Markdown
214 lines
3.2 KiB
Markdown
# VIRTUALGRAPHICSOBJECT
|
|
|
|
Wirtualny obiekt graficzny — pełni rolę proxy lub kompozytu dla rzeczywistego obiektu wskazanego polem [`SOURCE`](#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`](INTEGER.md) — wysokość.
|
|
|
|
### GETPOSITIONX
|
|
|
|
```
|
|
INTEGER GETPOSITIONX()
|
|
```
|
|
|
|
Zwraca pozycję X obiektu.
|
|
|
|
**Zwraca**: [`INTEGER`](INTEGER.md) — koordynata X.
|
|
|
|
### GETPOSITIONY
|
|
|
|
```
|
|
INTEGER GETPOSITIONY()
|
|
```
|
|
|
|
Zwraca pozycję Y obiektu.
|
|
|
|
**Zwraca**: [`INTEGER`](INTEGER.md) — koordynata Y.
|
|
|
|
### GETWIDTH
|
|
|
|
```
|
|
INTEGER GETWIDTH()
|
|
```
|
|
|
|
Zwraca szerokość obiektu w pikselach.
|
|
|
|
**Zwraca**: [`INTEGER`](INTEGER.md) — 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`](#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`](#priority).
|
|
|
|
**Parametry**
|
|
|
|
- `priority` — nowa wartość priorytetu.
|
|
|
|
**Przykłady**
|
|
|
|
```
|
|
VGO^SETPRIORITY(1000);
|
|
```
|
|
|
|
### SETSOURCE
|
|
|
|
```
|
|
void SETSOURCE(STRING sourceName)
|
|
```
|
|
|
|
Ustawia zmienną graficzną wskazywaną przez pole [`SOURCE`](#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](../engine/events.md#onsignal)).
|