Započeo Cannabis
•22. Nov. 2012.• Zaključano[TUT] Nasumicni spawn
2,557
pregleda
5
postova
Shot Caller
Balkan SA:MP
SA-MP Doprinos
Balkan SA:MP
SA-MP DoprinosNovi Član
40 / 100 XP
Početnik(0)
108
Postovi:
9
Teme:
Pridružio se:Nov. 2012
22. Nov. 2012.
Zdravo ljudi, evo mene opet s novim tutorialom. Ovaj put cu vam pokazati kako da napravite nasumicni spawn. Za izradu ovog tuta me nagnula jedna jednostavna cinjenica a to je da kada sam upisao u trazilicu "random spawn" nasao sam puno tema u kojima se trazi pomoc i objasnjenje a nijedan tutorial u vezi ovoga.
Stvari koje trebate znati:
-Izvuc koordinate (X,Y,Z)
(ako ste uopce poceli sa izradom moda ovo vec trebate znati, a ako neznate onda vam preporucujem da citate tutoriale za pocetnike)
Da zapocnemo:
Recimo da ste izvukli nekoliko mjesta za spawn i njihovi koordinati glase:
Eh, sada ove koordinate bi trebalo postrojiti u funkciju:
Napomena: ova funkcija ide izvan skripte, odnosno ne smjesta se u nitijedan callback(vise o callbackovima mozes pronaci u tutovima za pocetnike)
Kada postrojimo koordinate, trebalo bi izgledati ovako:
Primjetite kako svaka koordinata spawna dolazi u svoje viticaste zagrade( { } ), a izad svake zagrade dolazi zarez( , ) osim iza zadnje koordinate.
Å to sada kad smo postrojili nase koordinate?
Eh, sada bi trebalo "narediti" serveru da kada igrac se treba spawnati da ga spawna jendu od nasumicnih lokacija koje smo unijeli. Da bi to napravili trebamo u callback
unijeti ovo:
i to bi trebalo izgledati ovako
I upravo ste napravili vas nasumicni spawn!
Eh sada, posto sam puno nasrao a malo objasnio slijedu objasnjenja:
random(sizeof(NasumicniSpawn)) - > upravo zbog ovoga mi nasumicno izvlacimo lokaciju spawna
NasumicniSpawn[0,1,2] - > stoji za X,Y,Z
NasumicniSpawn - > stoji za rotaciju igraca
SetPlayerPos(playerid, NasumicniSpawn, NasumicniSpawn, NasumicniSpawn); - > s ovom naredbom izvlacimo nasumicni X,Y,Z te postavljamo igraca na tu poziciju
SetPlayerFacingAngle(playerid, RandomSpawns); - > s ovom naredbom izvlacimo nasumicnu rotaciju te je primjenjujemo na igraca
Zavrsne rijeci:
Evo ovo je u grubo objasnjeno kako napraviti nasumicni spawn. Mnogo toga je tu za vas novoga i tu bi trebalo jos objasnjivati ali iskreno meni se neda vise jer su me zabolila leda sjedeci za kompom i pisajuci ovaj tut. Nadam se da ste shvatili i da sam vam pomogao.
Stvari koje trebate znati:
-Izvuc koordinate (X,Y,Z)
(ako ste uopce poceli sa izradom moda ovo vec trebate znati, a ako neznate onda vam preporucujem da citate tutoriale za pocetnike)
Da zapocnemo:
Recimo da ste izvukli nekoliko mjesta za spawn i njihovi koordinati glase:
//(x,y,z)
1783.8303,-1885.3682,13.3921
1364.8800,-1279.0601,13.5469
1210.1868,-904.5264,42.9302
1479.2089,2618.9717,58.7813
1481.1246,-1771.1868,18.7958
Eh, sada ove koordinate bi trebalo postrojiti u funkciju:
new Float:NasumicniSpawn[][] =
{
};Napomena: ova funkcija ide izvan skripte, odnosno ne smjesta se u nitijedan callback(vise o callbackovima mozes pronaci u tutovima za pocetnike)
Kada postrojimo koordinate, trebalo bi izgledati ovako:
new Float:NasumicniSpawn[][] =
{
{1783.8303,-1885.3682,13.3921},
{1364.8800,-1279.0601,13.5469},
{1210.1868,-904.5264,42.9302},
{1479.2089,2618.9717,58.7813},
{1481.1246,-1771.1868,18.7958}
};Primjetite kako svaka koordinata spawna dolazi u svoje viticaste zagrade( { } ), a izad svake zagrade dolazi zarez( , ) osim iza zadnje koordinate.
Å to sada kad smo postrojili nase koordinate?
Eh, sada bi trebalo "narediti" serveru da kada igrac se treba spawnati da ga spawna jendu od nasumicnih lokacija koje smo unijeli. Da bi to napravili trebamo u callback
public OnPlayerSpawn(playerid)
{
return 1;
}unijeti ovo:
new Nasumicno = random(sizeof(NasumicniSpawn));
SetPlayerPos(playerid, NasumicniSpawn, NasumicniSpawn, NasumicniSpawn);
SetPlayerFacingAngle(playerid, NasumicniSpawn);
return 1;i to bi trebalo izgledati ovako
public OnPlayerSpawn(playerid)
{
new Nasumicno = random(sizeof(NasumicniSpawn));
SetPlayerPos(playerid, NasumicniSpawn, NasumicniSpawn, NasumicniSpawn);
SetPlayerFacingAngle(playerid, NasumicniSpawn);
return 1;
}
I upravo ste napravili vas nasumicni spawn!
Eh sada, posto sam puno nasrao a malo objasnio slijedu objasnjenja:
// Ova funkcija nam dopusta da postrojimo nase koordinate te da iz nje mozemo izvuci jednu nasumicnu
new Float:Nasumicni spawn[][] =
{
};
// ovo je callback, sve naredbe koje unesemo unutar tog callbacka ce se izvrsiti kada se igrac spawna
public OnPlayerSpawn(playerid)
{
return 1;
}random(sizeof(NasumicniSpawn)) - > upravo zbog ovoga mi nasumicno izvlacimo lokaciju spawna
NasumicniSpawn[0,1,2] - > stoji za X,Y,Z
NasumicniSpawn - > stoji za rotaciju igraca
SetPlayerPos(playerid, NasumicniSpawn, NasumicniSpawn, NasumicniSpawn); - > s ovom naredbom izvlacimo nasumicni X,Y,Z te postavljamo igraca na tu poziciju
SetPlayerFacingAngle(playerid, RandomSpawns); - > s ovom naredbom izvlacimo nasumicnu rotaciju te je primjenjujemo na igraca
Zavrsne rijeci:
Evo ovo je u grubo objasnjeno kako napraviti nasumicni spawn. Mnogo toga je tu za vas novoga i tu bi trebalo jos objasnjivati ali iskreno meni se neda vise jer su me zabolila leda sjedeci za kompom i pisajuci ovaj tut. Nadam se da ste shvatili i da sam vam pomogao.
Shot Caller
Balkan SA:MP
SA-MP Doprinos
Balkan SA:MP
SA-MP DoprinosNovi Član
40 / 100 XP
Početnik(0)
108
Postovi:
9
Teme:
Pridružio se:Nov. 2012
22. Nov. 2012.
pllopen wrote on November 22, 2012, 8:59 pm:
Svaka cast! Vidim trudis se 🙂 samo tako nastavi pomoci ces pocetnicima.
ma nije problem, samo mi je tlaka nekad kad se to oduzi pa me zaboli guza sjedeci haha
Godfather
Balkan SA:MP
SA-MP Doprinos
Balkan SA:MP
SA-MP DoprinosNovi Član
241 / 250 XP
Početnik(0)
2,248
Postovi:
66
Teme:
Pridružio se:Mar. 2010
9. Dec. 2012.
Super tutorial, koristit ću ovo kad budem radio jail system. 😉
Lock zbog refresha:
Lock zbog refresha:
Quote from December 8, 2012, 2:08 pm:
pomocice pocetnicima.. ,brw
Zoran123 wrote on December 7, 2012, 12:33 pm:
bravo dobar tut pomoći će nekome
Morate biti prijavljeni da biste odgovorili na ovu temu.
Prijava