Bullet Object
Bullet Object to rozszerzenie do TGF, które potrafi generować do 1000 sprite-ów jednocześnie, czyli prawie czterokrotnie więcej, niż sam TGF. Jest również wersja dla MMF, nazwana Bullet & Particle Object, która jednak nie różni się znacząco.
Spis treści
Opis działania i zastosowania
Dodatek ten tworzy do 1000 podobiektów graficznych, które sterowane są globalnie, ale można też sterować każdym takim podobiektem z osobna. Mogą mieć wygląd zarówno wybranego obiektu aktywnego (wraz z możliwością zmiany efektu wtapiania), jak i generowanej na bieżąco linii (na podstawie podanych parametrów, podobnie jak w przypadku dodatku DrawLine).
Podobiekty te można poruszać poprzez zmianę odpowiednich parametrów przesunięcia poziomego i pionowego. Można w ten sposób uzyskać efekt grawitacji lub wiatru.
Nie należy do jednej ramki wstawiać więcej, niż 3 obiekty tego typu, bowiem już taka ilość wymaga bardzo silnego komputera do utrzymania płynności (powyżej 40 FPS), a na słabszych konfiguracjach powoduje błędy przy szczytowym obciążeniu.
Warunki
- Colls - wykrywanie kolizji.
Akcje
- DrawBullet - generowanie podobiektów. Gdy ta akcja nie jest generowana, podobiekty nie zmieniają stanu.
- ShotBullet_Deg - wystrzeliwanie obiektów pod podanym kątem.
- SetCollObj - wybieranie obiektów, z którymi mają kolidować podobiekty.
- GlovalSet
- SetMaxBullet - zmiana maksymalnej ilości podobiektów.
- SetSpeed - zmiana prędkości pojedyńczego podobiektu.
- SetDrawType - zmiana typu rysowania.
- SetRamdom - zmiana współczynnika losowości.
- SetCollType - zmiana typu kolizji.
- SetReduceSpeed - zmiana opóźnienia ruchu.
- Image
- SetTransparent - zmiana efektu wtapiania.
- SetTransparency% - zmiana stopnia przeźroczystości.
- SetIMAGE_No - zmiana numeru pobieranej klatki (patrz: Konfiguracja).
- SetTRACEOBJ - zmiana obiektu, z którego pobierana jest klatka animacji.
- LineSet
- SetR - zmiana wartości koloru czerwonego linii.
- SetG - zmiana wartości koloru zielonego linii.
- SetB - zmiana wartości koloru niebieskiego linii.
- SetWidth - zmiana grubości linii.
- LineType - zmiana typu linii.
- SetTail - zmiana długości linii (jest też zależna od prędkości podobiektu).
- SetX_No - zmiana pozycji X wybranego podobiektu.
- SetY_No - zmiana pozycji Y wybranego podobiektu.
- SetVecX_No - zmiana przesunięcia X wybranego podobiektu.
- SetVecY_No - zmiana przesunięcia Y wybranego podobiektu.
- SetFieldEffectX - zmiana globalnego przesunięcia X.
- SetFieldEffectY - zmiana globalnego przesunięcia Y.
- Destroy - niszczenie obiektu.
Wartości
- GlovalParam
- GetMaxBullet - maksymalna ilość podobiektów.
- GetSpeed - prędkość pojedyńczego podobiektu.
- GetDrawType - typ rysowania.
- GetRandom - współczynnik losowości.
- Image
- GetTransparent - stopień przeźroczystości.
- GetIMAGE_No - numer pobieranej klatki.
- lineSet
- GetR - wartość koloru czerwonego z ustawień generowania linii.
- GetG - wartość koloru zielonego z ustawień generowania linii.
- GetB - wartość koloru niebieskiego z ustawień generowania linii.
- GetWidth - grubość linii.
- GetLineType - typ linii.
- GetTail - długość linii.
- GetX_No - pozycja X wybranego podobiektu.
- GetY_No - pozycja Y wybranego podobiektu.
- GetVecX_No - przesunięcie X wybranego podobiektu.
- GetVecY_No - przesunięcie Y wybranego podobiektu.
- GetFieldEffectX - globalne przesunięcie X.
- GetFieldEffectY - globalne przesunięcie Y.
- GetCollType - typ kolizji.
- GetHit_No - identyfikator kolidującego obiektu.
- Dbuga - ?
- Dbugb - ?
Konfiguracja w edytorze etapu
Kolumna Bullet
- Bullet - maksymalna ilość podobiektów.
- Speed - prędkość podobiektów.
- CollType - typ kolizji z wybranymi obiektami aktywnymi.
- Random - współczynnik losowości (wpływa m.in. na prędkość).
- Life - długość "życia" podobiektów.
Kolumna Sprite
- Sprite - wybór oznacza, że podobiekty będą sprite'ami, a nie liniami.
- Ink Effect - efekt wtapiania.
- nieoznaczone pole - poziom przeźroczystości.
- Self - wybór oznacza, że wygląd sprite'a będzie pobierany na podstawie parametrów.
- Sel - wybór klatki.
- Anim(n) - wybór animacji.
- Direction - wybór ilości kierunków animacji sprite'a.
- Trace - wybór oznacza, że wygląd sprite'a będzie pobierany z obiektu aktywnego.
Kolumna Line
- Line - wybór oznacza, że podobiekty będą liniami, a nie sprite'ami.
- RGB - 3 pola po lewej oznaczają bazową wartość kolorów RGB, 3 pola po prawej oznaczają maksymalne odchylenie (losowe) od wartości bazowej.
- Tail - długość linii.
- Width - grubość linii.
- Type - typ linii, np.:
- PS_SOLID - jednolite wypełnienie.
- GraduallyLight - stopniowo pojaśniane (przydatne do np. fajerwerków).
- GraduallyDark - stopniowo pociemniane.
- 6 - nienazwany typ; jest to dziwny, trzęsący się kwadrat.
- 8 - nienazwany typ; przypomina stopniowe pociemnianie w czasie.
Pozostałe
- pole w prawym, dolnym rogu - ilość podobiektów wystrzeliwanych przy jednej akcji ShotBullet_Deg.
Odnośniki zewnętrzne
- Przykład zastosowania Bullet Obejct autorstwa RomanXa