- Dokumentacja
- Funkcje wspólne
- createParticleEmitter
Funkcja
createParticleEmitter
Tworzy emiter ruchomych cząsteczek liczonych przez grę: ogień, dym, iskry, śnieg, portale i wszystko, co ułożysz z ustawień. Czwarty argument to nazwa gotowego efektu albo tabela ustawień, piąty nadpisuje wybrane pola gotowca. Zwraca element "particle", który da się przesuwać, przyczepiać i niszczyć jak każdy inny. Wywołany na serwerze tworzy emiter widoczny dla wszystkich graczy.
Składnia
element createParticleEmitter(float x, float y, float z, string|table settings [, table overrides = nil])Argumenty
xfloat- Pozycja X.
yfloat- Pozycja Y.
zfloat- Pozycja Z.
settingsstring|table- Nazwa gotowego efektu (
"fire","smoke","sparks","fireflies","snow","rain","magic","vortex","confetti","hearts","bubbles","leaves","dust","firework") albo tabela ustawień. overridestable, opcjonalny = nil- Pola, które zastępują ustawienia gotowca.
Zwraca
Emiter albo false przy złych argumentach.
Przykład
Ognisko obok gracza i własny portal z tabeli ustawień. Opis wszystkich pól jest w przewodniku Cząsteczki.
local x, y, z = getElementPosition(localPlayer)
local fire = createParticleEmitter(x + 2, y, z - 1, "fire", { rate = 60 })
local portal = createParticleEmitter(x - 4, y, z, {
sprite = "glow", shape = "ring", radius = 2,
rate = 120, max = 300, life = { 1, 1.6 },
orbit = 3, attract = 0.6, size = { 0.25, 0.05 },
colors = { tocolor(120, 200, 255), tocolor(160, 90, 255, 0) },
})
-- ognisko na placu, widoczne dla wszystkich graczy (także wchodzących później)
local fire = createParticleEmitter(2495, -1670, 12.5, "fire", { rate = 60 })
Uwagi
Fizyka po stronie gry. Cząsteczki liczy i rysuje gra w jednym przebiegu dla wszystkich emiterów, więc skrypt nie robi nic w każdej klatce.
Zobacz też
createParticleEffectEfekt na chwilę: emiter wypuszcza cząsteczki przez podany czas i sam znika, gdy zgaśnie ostatnia. Nie trzeba go niszczyć. Na serwerze efekt widzą wszyscy gracze w pobliżu.setParticleEmitterSettingsZmienia wybrane ustawienia działającego emitera (te same pola co wcreateParticleEmitter), reszta zostaje. Żywe cząsteczki od razu dostają nowy kolor i wielkość.getParticlePresetsZwraca gotowe efekty cząsteczek jako tabelę{ nazwa = opis }.burstParticlesWypuszcza od razu podaną liczbę cząsteczek, niezależnie odrate: wybuch, trafienie, salwa konfetti.attachElementsPrzyczepia element do innego. Przyczepiony element porusza się i obraca razem z tym, do którego go przyczepiono. Obiekt przyczepiony do pojazdu prowadzi sama gra w tej samej klatce co fizykę pojazdu, więc jedzie z nim co do milimetra także przy dużej prędkości i na zakrętach.