Koristenje CheckPointa

Započeo Unkovic, Oktobar 14, 2017, 00:36:17 PRE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

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[MAX_PLAYERS];

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 [playerid] = 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[playerid] == 1)
     {
            SetPlayerHealth(playerid, 99); // daje igraci health
            SendClientMessage(playerid, " Stigli sye na odrediste");
            DisablePlayerCheckpoint(playerid); // disable trenutni CP
            Cpzatutorijal[playerid] = 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[playerid] = 1;
     return 1;
}


Odziv

public OnPlayerEnterRaceCheckpoint(playerid)
{
     if(RaceCPzaTuT[playerid] == 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[playerid] = 2;
           SendClientMessage(playerid, -1, " Nastavak trke");
     }
     if(RaceCPzaTuT[playerid] == 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
Unkovic.
- Ex. BlackStorm Founder, Owner & Developer
- Ex. Underground Developer.

Zanimljiv tutorijal
Oduvek sam se pitao:
"Zbog cega se ljudi toliko brinu jedni za druge?",
"Zasto ljudi daju sve od sebe da usrece neku osobu?"

Najjednostavnije receno brinu se jer vole tu osobu celim svojim srcem,
daju sve od sebe da je usrece zbog toga sto ne zele da je ikada vide tuznom ili rasplakanom.
#xsarnaaparatima..