Poyy drugari, ovoi ke prvi tut, dje vam objasnjavam kak da koristite CPove
.Znaci negde pri vr' skripte dodajte neku random variablu, kad kazem random, mislim na random ime. Eo ja cu ovak.
new CPzaTutorijal[ MAX_PLAYERS ];
E sad treba vam pojasniti sledece. Vi mozete u jednom trenutku imati aktiviran samo JEDAN checkpoint. Ne vise.
SetPlayerCheckpoint(playerid, x, y, z, float:size);
Verujem da svi znate sta znaci ovo odavde, uz to da napomenem da je normalna velicina jednog CPa 2.0-3.0
Primer
SetPlayerCheckpoint(playerid, 2345.214, -153.563, 23.567, 2.0);
Prvi zarez oznacava koordinatu X, drugi koordu Y i treci koordu Z. Cevtri je VELICINA, zapamtite!!
Sada cemo napraviti jednu komandu koja ce nam aktivirati Checkpoint
Na pocetak dodate
new Cpzatutorijal;
Kao komandu dodate
YCMD:tutorijal( playerid, params[], help )
{
#pragma unused help
SetPlayerCheckpoint( playerid, 234.432, -2345.781, 390.1223, 3.0);
SendClientMessage( playerid, -1, "Idite do crvenlg markera oznacenog na mapi!");
Cpzatutorijal = 1;
return 1;
}
U skripti sada potrazite
OnPlayerEnterCheckpoint
Pojavice vam se nesto ovako
public OnPlayerEnterCheckpoint(playerid)
{
return 1;
}
Sada kada nam je vrednost Cpzatutorijalvarijable postavljena na 1 radimo sledece
public OnPlayerEnterCheckpoint(playerid)
{
if(Cpzatutorijal == 1)
{
SetPlayerHealth(playerid, 99); // daje igraci health
SendClientMessage(playerid, " Stigli sye na odrediste");
DisablePlayerCheckpoint(playerid); // disable trenutni CP
Cpzatutorijal = 0;
}
return 1;
}
Naravno, ako zelite da kada udjete na ovaj CP da se stvori jos jedan, produzite varijablu na +1 (dodate +1) i stavite novi SetPlayerCheckpoint i sve u krug..
Race checkpointi su CPovi koji se koriste u trkama
SetPlayerRaceCheckpoint(playerid, type, x, y, z, nextx, nexty, nextz, float:size);
Type: tipovi Race Cpova (0 - obicanRace cp sa strelicom, 1 - bez strelice, CP, 2 - finish race cp , 3 - cp u vazduhu, 4 - cp u vazdubu kao finish)
X, Y, Z su koorde, a
NexX, NextY, NexgZ, su lorde sledeceg CPa gde ce strelica usmerivati.
U skripti se odazivaju na
public OnPlayerEnterRaceCheckpoint(playerid)
{
return 1;
}
Znaci idemo istu komandu
new RaceCPzaTuT[ MAX_PLAYERS ];
Komanda
YCMD:trka(playerid, params[], help)
{
#pragma unused help
SetPlayerRaceCheckpoint( playerid, 0, 234.532, 531.7522,-123.890, 122.567, 888.991, -123.555, 2.0);
SendClientMessage(playerid, -1, "Ucitavanje Trke");
RaceCPzaTuT = 1;
return 1;
}Odziv
public OnPlayerEnterRaceCheckpoint(playerid)
{
if(RaceCPzaTuT == 1) // proverava da li je vrednost 1
{
SetPlayerRaceCheckpoint(playerid, 2, 234.563, -2346.7532, 2381.282, 211.3424, 422.567, 890.111, 3.0);
RaceCPzaTuT = 2;
SendClientMessage(playerid, -1, " Nastavak trke");
}
if(RaceCPzaTuT == 2)
{
SetPlayerHealth( playerid, 100);
GivePlayerWeapon( playerid, 24, 200);
SendClientMessage( playerid, -1, "Uspesnl ste zavrsili trku!");
}
return 1;
}
Hvala, ako ima jos jedan tut, nmvz. Bilo mi dosadno, uzivajte.
Ako sam ofulao nesto ponoc je, spava mi se. Napisi u reply