Dodavanje/uklanjanje objekata iz streama | Paljenje i gasenje snega igracu

Započeo Levu
30. Nov. 2019.
2,105
pregleda
9
postova
Levuâ„¢
5
Kingpin
30. Nov. 2019.
Danas cu vam pokazati jedan 'sistemcic' koji sam odradio proslu zimu za Zaru. Rec je o paljenju/gasenju snega igracu, odnosno izbacivanje odredjenih objekata iz streama igraca...
Tutorial nije namenjen za pocetnike jer neke osnovne stvari necu detaljno opisivati.

Prvo pravimo array za objekte(ovo ispod je samo primer, 20ak objekata)
new snegUlice;


Zatim kreiramo objekte

        snegUlice = snow_CreateDynamicObject(5145, 2716.79687, -2447.87500, 2.15625, 0.00000, 0.00000, 0.00000, -1, -1, -1, 300.00, 300.00); 
snegUlice = snow_CreateDynamicObject(5146, 2498.19531, -2408.00781, 1.80468, 0.00000, 0.00000, 0.00000, -1, -1, -1, 300.00, 300.00); 
snegUlice = snow_CreateDynamicObject(5147, 2533.76562, -2330.82812, 22.19531, 0.00000, 0.00000, 315.00000, -1, -1, -1, 300.00, 300.00); 
snegUlice = snow_CreateDynamicObject(3753, 2702.39843, -2324.25781, 3.03906, 0.00000, 0.00000, 0.00000, -1, -1, -1, 300.00, 300.00); 
snegUlice = snow_CreateDynamicObject(5333, 2374.38281, -2171.46875, 21.17968, 0.00000, 0.00000, 135.00000, -1, -1, -1, 300.00, 300.00); 
snegUlice = snow_CreateDynamicObject(5191, 2381.44531, -2397.43750, 6.67187, 0.00000, 0.00000, 45.00000, -1, -1, -1, 300.00, 300.00); 
snegUlice = snow_CreateDynamicObject(5176, 2521.53906, -2606.95312, 17.64843, 0.00000, 0.00000, 0.00000, -1, -1, -1, 300.00, 300.00); 
snegUlice = snow_CreateDynamicObject(3753, 2615.10937, -2464.61718, 3.03906, 0.00000, 0.00000, 180.00000, -1, -1, -1, 300.00, 300.00); 
snegUlice = snow_CreateDynamicObject(3753, 2748.01562, -2571.59375, 3.03906, 0.00000, 0.00000, 180.00000, -1, -1, -1, 300.00, 300.00); 
snegUlice = snow_CreateDynamicObject(5115, 2523.40625, -2217.46093, 12.07031, 0.00000, 0.00000, 0.00000, -1, -1, -1, 300.00, 300.00); 
snegUlice = snow_CreateDynamicObject(3753, 2511.47656, -2256.03125, 3.03906, 0.00000, 0.00000, 180.00000, -1, -1, -1, 300.00, 300.00); 
snegUlice = snow_CreateDynamicObject(5108, 2333.55468, -2308.71093, 3.27343, 0.00000, 0.00000, 45.00000, -1, -1, -1, 300.00, 300.00); 
snegUlice = snow_CreateDynamicObject(5353, 2543.75000, -2163.78906, 14.20312, 0.00000, 0.00000, 0.00000, -1, -1, -1, 300.00, 300.00); 
snegUlice = snow_CreateDynamicObject(5250, 2743.43750, -2120.64062, 15.42187, 0.00000, 0.00000, 0.00000, -1, -1, -1, 300.00, 300.00); 
snegUlice = snow_CreateDynamicObject(5184, 2699.03125, -2227.74218, 31.42968, 0.00000, 0.00000, 0.00000, -1, -1, -1, 300.00, 300.00); 
snegUlice = snow_CreateDynamicObject(5114, 2831.68750, -2161.52343, 5.33593, 0.00000, 0.00000, 0.00000, -1, -1, -1, 300.00, 300.00); 
snegUlice = snow_CreateDynamicObject(5125, 2397.82031, -2183.05468, 15.33593, 0.00000, 0.00000, 0.00000, -1, -1, -1, 300.00, 300.00); 
snegUlice = snow_CreateDynamicObject(5124, 2278.89843, -2286.31250, 15.33593, 0.00000, 0.00000, 45.00000, -1, -1, -1, 300.00, 300.00); 
snegUlice = snow_CreateDynamicObject(3753, 2299.18750, -2405.39843, 3.03906, 0.00000, 0.00000, 225.00000, -1, -1, -1, 300.00, 300.00); 
snegUlice = snow_CreateDynamicObject(3753, 2368.16406, -2523.86718, 3.03906, 0.00000, 0.00000, 90.00000, -1, -1, -1, 300.00, 300.00); 

Ja sam koristio funkciju za teksturisanje objekta i pomeranje od glavnog kopiranog

snow_CreateDynamicObject(modelid, Float:x, Float:y, Float:z, Float:rx, Float:ry, Float:rz, vw, ent, pid, Float:ddist=300.0, Float:vrdist=300.0)
{
new object = CreateDynamicObject(modelid, x + 0.05, y + 0.075, z + 0.1, rx, ry, rz, vw, ent, pid, ddist, vrdist);
for(new a = 0; a < 15; a++) SetDynamicObjectMaterial(object, a, 17944, "lngblok_lae2", "white64bumpy", 0);
return object;
}

I sad dolazimo do glavnog dela koji je mucio mnoge skriptere koji su mi se javili sa pitanjem kako to da urade
CMD:upalisneg(playerid)
{
for(new i = 0; i < sizeof(snegUlice); i++) Streamer_AppendArrayData(STREAMER_TYPE_OBJECT, snegUlice, E_STREAMER_PLAYER_ID, playerid);//prolazimo kroz svaki objekat iz niza i primenjujemo streamer funkciju Streamer_AppendArrayData kojom cemo da ubacimo te objekte u stream igracu
return 1;
}

CMD:ugasisneg(playerid)
{
for(new i = 0; i < sizeof(snegUlice); i++) Streamer_RemoveArrayData(STREAMER_TYPE_OBJECT, snegUlice, E_STREAMER_PLAYER_ID, playerid); //prolazimo kroz svaki objekat iz niza i primenjujemo streamer funkciju Streamer_RemoveArrayData kojom cemo da izbacimo te objekte iz streama igracu
return 1;
}


KUKI
5
Underboss
30. Nov. 2019.
Odlicno brate .
Jaksic
5
Underboss
30. Nov. 2019.
odlicno.
Fogfiend.dev
2
Street Runner
30. Nov. 2019.
pohvale za trud
Ivan_Ino
5
Kingpin
30. Nov. 2019.
Sweet, al i ovo istu stvar radi https://github.com/samp-incognito/samp-streamer-plugin/wiki/Natives-(Miscellaneous)#streamer_toggleitemplayerid-type-id-toggle vjerovatno se svodi na istu stvar u pozadini
#Dare
5
Underboss
30. Nov. 2019.
odlicno
Levuâ„¢
5
Kingpin
30. Nov. 2019.
Hvala svima!
Ino42O wrote on November 30, 2019, 9:52 pm:

Da, definitivno rade istu stvar... Prvo sam naleteo na ove koje sam koristio, pa posle nisam nesto ni istrazivao mnogo, ali ima mnogo korisnih funkcija koje ljudi uopste ne koriste...
Ivan_Ino
5
Kingpin
30. Nov. 2019.
Levu wrote on November 30, 2019, 10:21 pm:
Hvala svima!Da, definitivno rade istu stvar... Prvo sam naleteo na ove koje sam koristio, pa posle nisam nesto ni istrazivao mnogo, ali ima mnogo korisnih funkcija koje ljudi uopste ne koriste...


Istina istina
Nucleon
5
Kingpin
30. Nov. 2019.
Po meni je winter editon sa snegom nagluplja moguca stvar, ali ovo je korisno za streamovane objekte, ukoliko neko recimo odradi retexture opstine i smeta mu retexture moze ostaviti na default, tako nesto mi je recimo korisno. Svakako hvala sto si podelio ovo sa skripterima.  😄

Morate biti prijavljeni da biste odgovorili na ovu temu.

Prijava

© 2026 SmartShark. All rights reserved.

Powered by Momentum|v2026.3.001 Alpha