Balkan SA:MP

PAWN skriptanje, gamemodovi, filterskripte, include fajlovi, mape, pluginovi => Razgovor u vezi PAWN - skriptanja => Temu započeo: Ole poslato Jun 17, 2016, 12:44:30 POSLE PODNE

Naslov: [REÅ ENO]oko eventa
Poruka od: Ole poslato Jun 17, 2016, 12:44:30 POSLE PODNE
Skripta koju koristim:moja
Detaljan opis problema:eh kako da napravim da kad igrac kuca /joinrace na eventu da ga prebaci u drugi svijet i kad kuca /exitrace kako da igraca vrati na mjesto gdje je on kucao /joinrace?
Dio skripte:[pawn]CMD:joinrace(playerid, params[])
{
   if(RaceStarted == 1) return SendClientMessage(playerid, RED, "[ERROR] "COL_GREY"Utrka vec pokrenuta, pricekajte do druge utrke!");
   if(RaceBusy == 0x00) return SendClientMessage(playerid, RED, "[ERROR] "COL_GREY"Nema trenutno aktivne utrke za pridruziti se");
   if(Joined[playerid] == true) return SendClientMessage(playerid, RED, "[ERROR] "COL_GREY"Vec ste se pridruzili utrci!");
   if(IsPlayerInAnyVehicle(playerid)) return SetTimerEx("SetupRaceForPlayer", 2500, 0, "e", playerid), RemovePlayerFromVehicle(playerid), Joined[playerid] = true;
   SetupRaceForPlayer(playerid);
   Joined[playerid] = true;
   return 1;
}[/pawn]
[pawn]CMD:exitrace(playerid, params[])
{
    if(Joined[playerid] == true)
    {
      JoinCount--;
      Joined[playerid] = false;
      DestroyVehicle(CreatedRaceVeh[playerid]);
       DisablePlayerRaceCheckpoint(playerid);
      TextDrawHideForPlayer(playerid, RaceInfo[playerid]);
      CPProgess[playerid] = 0;
      KillTimer(InfoTimer[playerid]);
      TogglePlayerControllable(playerid, true);
      SetCameraBehindPlayer(playerid);
      #if defined RACE_IN_OTHER_WORLD
      SetPlayerVirtualWorld(playerid, 0);
      #endif
   } else return SendClientMessage(playerid, RED, "[ERROR] "COL_GREY"Niste u utrci!");
   return 1;
}[/pawn]
Neke slike/video za lakse dobivanje pomoci(neobavezno):///
Naslov: Odg: [POMOC]oko eventa
Poruka od: TheToretto poslato Jun 17, 2016, 12:55:49 POSLE PODNE
Pa na exitrace vec imas da mu stavi VW na 0, samo jos na join race trebas staviti 1, probaj tako, a vec imas tu nesto #if defined Race_in_other_world pa procackaj tu nesto vec je pravljeno tako nesto. A da ga vrati na istu poziciju moras napraviti varijablu u kojoj cuvas njegove koordinate i kada se zavrsi utrka zoves te koordinate i vracas ga tu i to je to. Na telefonu sam nadam se da ce neko sa racunara moci konkretno da ti objasni ako nisi shvatio :)

edit: i btw. "YouTuber and Goalkeeper" stavi link youtube kanala u potpis ili pod my website da mozemo baciti oko  8)
Naslov: Odg: [POMOC]oko eventa
Poruka od: Ole poslato Jun 17, 2016, 13:18:15 POSLE PODNE
Citat: TheToretto poslato Jun 17, 2016, 12:55:49 POSLE PODNE
Pa na exitrace vec imas da mu stavi VW na 0, samo jos na join race trebas staviti 1, probaj tako, a vec imas tu nesto #if defined Race_in_other_world pa procackaj tu nesto vec je pravljeno tako nesto. A da ga vrati na istu poziciju moras napraviti varijablu u kojoj cuvas njegove koordinate i kada se zavrsi utrka zoves te koordinate i vracas ga tu i to je to. Na telefonu sam nadam se da ce neko sa racunara moci konkretno da ti objasni ako nisi shvatio :)

edit: i btw. "YouTuber and Goalkeeper" stavi link youtube kanala u potpis ili pod my website da mozemo baciti oko  8)
nece ni kad stavim VW na 1 opet je u istom svijetu  :-X
Naslov: Odg: [POMOC]oko eventa
Poruka od: ▂ ▃ ▅ Rudimental ▅ ▃ ▂ poslato Jun 17, 2016, 15:10:55 POSLE PODNE
Pomocu ovoga odredjujes taj ajd da kazemo svet :D https://wiki.sa-mp.com/wiki/SetPlayerVirtualWorld u komandi za /join treba da podesis na neki broj dok kada se zavrsi trebas da  ga podesis na 0
Sto se tice ovoga da kada se event zavrsi da ga porta gde je bio pre nego sto je ukucao evo ti primer.
Potrebne su ti 3 float varijable na koje ces zapisati x, y i z kordinate od igraca kako bi ga mogao posle vratiti na stare kordinate tako da na vrh scripte trebamo to definisati.
[pawn]new Float:Pozicija[MAX_PLAYERS][3];[/pawn]

Zatim u komandu /join treba da zapisemo igracevu kordinatu na sledeci nacin.
[pawn]GetPlayerPos(playerid, Pozicija[playerid][0], Pozicija[playerid][1], Pozicija[playerid][2]);[/pawn]

I sada kada se event zavrsava treba da ga vratimo na stare kordinate.
[pawn]SetPlayerPos(playerid, Pozicija[playerid][0], Pozicija[playerid][1], Pozicija[playerid][2]);[/pawn]
Naslov: Odg: [POMOC]oko eventa
Poruka od: Ole poslato Jun 17, 2016, 15:41:13 POSLE PODNE
Citat: â–... â–† â–ˆ Rudimental â–ˆ â–† â–... poslato Jun 17, 2016, 15:10:55 POSLE PODNE
Pomocu ovoga odredjujes taj ajd da kazemo svet :D https://wiki.sa-mp.com/wiki/SetPlayerVirtualWorld u komandi za /join treba da podesis na neki broj dok kada se zavrsi trebas da  ga podesis na 0
Sto se tice ovoga da kada se event zavrsi da ga porta gde je bio pre nego sto je ukucao evo ti primer.
Potrebne su ti 3 float varijable na koje ces zapisati x, y i z kordinate od igraca kako bi ga mogao posle vratiti na stare kordinate tako da na vrh scripte trebamo to definisati.
[pawn]new Float:Pozicija[MAX_PLAYERS][3];[/pawn]

Zatim u komandu /join treba da zapisemo igracevu kordinatu na sledeci nacin.
[pawn]GetPlayerPos(playerid, Pozicija[playerid][0], Pozicija[playerid][1], Pozicija[playerid][2]);[/pawn]

I sada kada se event zavrsava treba da ga vratimo na stare kordinate.
[pawn]SetPlayerPos(playerid, Pozicija[playerid][0], Pozicija[playerid][1], Pozicija[playerid][2]);[/pawn]
mozes li ti da mi to stavis u ove CMDS jer ja kad stavim igrac kad zavrsi event ili izadje samo propadne kroz zemlju (znas vec kako ☺). Unaprijed hvala 😊😊
Naslov: Odg: [POMOC]oko eventa
Poruka od: ▂ ▃ ▅ Rudimental ▅ ▃ ▂ poslato Jun 17, 2016, 16:19:34 POSLE PODNE
Pa sad najbolje da ti sve mi radimo :D stavi ispod TogglePlayerControllable da ga porta. A proveru da zapisuje kordinate moras staviti u komandu kojom igrac ide na event.
Naslov: Odg: [POMOC]oko eventa
Poruka od: Ole poslato Jun 17, 2016, 18:54:32 POSLE PODNE
hvala resio sam bio sam se zbunio pa mi nije bilo jasno haha 8)