Balkan SA:MP

PAWN skriptanje, gamemodovi, filterskripte, include fajlovi, mape, pluginovi => Razgovor u vezi PAWN - skriptanja => Temu započeo: [CM] BrunoHP poslato Novembar 12, 2010, 17:55:27 POSLE PODNE

Naslov: [POMOC] Kako odbiti ulazak igraca u vlak
Poruka od: [CM] BrunoHP poslato Novembar 12, 2010, 17:55:27 POSLE PODNE
Postavio sam posao vlakovode, ali nemogu napraviti da odbije igracu ulazak u vlak ako nije vlakovoda. Prvo sam napravio da ako igrac ude u lokomotivu, izbaci ga. Ali mi je pisalo "Niste vlakovodja!" i nije izasao. Te sam napravio sistem ako igrac pokusa uci u vlak, napravi da se nista nije dogodilo. To radi na drugim vozilima, ali na vlaku neradi.

btw., kako napraviti da se CP nece prihvatiti ako igrac neide 5kmh kod tog CP-a?
Naslov: Odg: [POMOC] Kako odbiti ulazak igraca u vlak
Poruka od: Slay poslato Novembar 13, 2010, 00:17:12 PRE PODNE
if(PlayerInfo[playerid][pJob] == xx) {  
      return true; }  
else  {  
new
   Float:X,
   Float:Y,
   Float:Z
;
GetPlayerPos(playerid, X, Y, Z);  
SetPlayerPos(playerid, X+random(2), Y+random(2), Z+0.75);  
SendClientMessage(playerid, 0x000000FF, "Nemas posao masinovodje.");  }  


Ovaj moj kod ti je sigurniji, jer u onom iznad nemas return valute, takoder sam dodao random da ga malo odbaci vise od vrata jer ako puno puta stisces enter svejedno ce uci u vlak ovako ce ga stalno odbaciti malo

Ali moj savjet ti je da koristis ovaj tu kod:

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
new
vehicleid = GetPlayerVehicleID(playerid)
;
if(VlakID(vehicleid)){
    if(PlayerInfo[playerid][pJob] != ID_POSLA) {
    RemovePlayerFromVehicle(playerid);
    SendClientMessage(playerid, BOJA, "Nisi vlakovodja."); } }
return true
}

stock VlakID(id)
{
  if(id == ID_VLAKA || id == ID_VLAKA2) {
  return true; }
  return false;
}


Naslov: Odg: [POMOC] Kako odbiti ulazak igraca u vlak
Poruka od: Slay poslato Novembar 13, 2010, 00:29:07 PRE PODNE
Tj. umjesto ove moje stock funkcije za provjeru ID vlaka ima bolji nacin a to je preko macro funkcije....

#define VlakID(%0) (GetPlayerVehicleID(%0) == ID_1|| GetVehicleModel(%0) == ID_2)

Moj savjet je: Macro funkcija a ti odaberi sta oces ;)

Citat: Lucifer / Louis_Cyphere poslato Novembar 13, 2010, 00:20:32 PRE PODNE
masinovodje hahahah  :D :D :D :D :D :D jebote Ä'e me naÄ'e... btw... ovo drugo ti je bolje xD samo naravno nemoj stavit masinovodje... hehe
Ja sam samo popravio tj. malo doradio kod od ovog Hoxxy ( ili kako vec ) pa je ostalo masinovodja
Naslov: Odg: [POMOC] Kako odbiti ulazak igraca u vlak
Poruka od: [CM] BrunoHP poslato Novembar 13, 2010, 11:16:00 PRE PODNE
Eto rjesio sam to sa ulaskom, ovo vase nije radilo ali sam isao copy paste od /slap komande i sada radi. Kada igrac ude u vlak, pojavi se na krovu vlaka. To sam rijesio, nego kako sada da napravim provjeru brzine?
Naslov: Odg: [POMOC] Kako odbiti ulazak igraca u vlak
Poruka od: Slay poslato Novembar 13, 2010, 15:37:07 POSLE PODNE
Slap komanda samo upravlja Z pozicijom znaci time nisi napravio NISTA! Jer te samo podigne u zrak ali X & Y pozicija je ISTA!

A da koristis ovaj moj kod, ovaj drugi:

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) 

   new 
      vehicleid = GetPlayerVehicleID(playerid) 
   ; 
   if(VlakID(vehicleid)){ 
    if(PlayerInfo[playerid][pJob] != ID_POSLA) { 
    RemovePlayerFromVehicle(playerid); 
    SendClientMessage(playerid, BOJA, "Nisi vlakovodja."); } } 
   return true 

 
stock VlakID(id) 

     if(id == ID_VLAKA || id == ID_VLAKA2) { 
     return true; } 
     return false; 
Nebi imao problema sa time
Naslov: Odg: [POMOC] Kako odbiti ulazak igraca u vlak
Poruka od: [CM] BrunoHP poslato Novembar 13, 2010, 20:52:44 POSLE PODNE
To sam vec pokuso i nije funkcioniralo, ovo me podiglo na krov vlaka. I nek tako ostane jer mi nesmeta! Sada me zanima kako da napravim provjeru brzine?