[pomoc] pozivizabolnicu

Započeo Dimi, Mart 09, 2013, 01:38:06 PRE PODNE

prethodna tema - sledeća tema

0 članova i 3 gostiju pregledaju ovu temu.

Skripta koju koristim: od 0
Detaljan opis problema: Kako da napravim da kad igrac ukuca /pozovi94 da stigneporuka bolnicarima onduty da je zatrazio pomoc i da prihvati i ako prihvati da postavi checkpooint
Dio skripte:
Neke slike/video za lakse dobivanje pomoci(neobavezno):
Poslednja Izmena: Mart 09, 2013, 02:38:39 PRE PODNE od Dimi

Moras napraviti neku petlju s kojom ides kroz sve online igrace (preporucujem najnoviji foreach) i gledas da li su bolnicari, ako jesu onda im posaljes tu poruku. I tko odgovori na tu poruku, postavis mu neku varijablu da je odgovorio na taj poziv i u tom istom dijelu koda (tj. prije tog dijela gdje postavljas neku varijablu) provjeris da li netko mozda vec nije odgovorio na poziv, ako je onda mu samo posaljes poruku da je netko prije njega odgovorio na poziv.

I nakon postavljanja varijable, samo mu pokazes i checkpoint. Nadam se da si shvatio o cemu pricam.

Last nick: Paradox

Citat: Joey_ poslato Mart 09, 2013, 14:15:10 POSLE PODNE
Moras napraviti neku petlju s kojom ides kroz sve online igrace (preporucujem najnoviji foreach) i gledas da li su bolnicari, ako jesu onda im posaljes tu poruku. I tko odgovori na tu poruku, postavis mu neku varijablu da je odgovorio na taj poziv i u tom istom dijelu koda (tj. prije tog dijela gdje postavljas neku varijablu) provjeris da li netko mozda vec nije odgovorio na poziv, ako je onda mu samo posaljes poruku da je netko prije njega odgovorio na poziv.

I nakon postavljanja varijable, samo mu pokazes i checkpoint. Nadam se da si shvatio o cemu pricam.

Shvatio sma nesto malo nego mozes ti meni da oprilike stavis kodove ovde ako nije prob

new zadnjipoziv = 999; // na vrh skripte
YCMD:call94(playerid, params[], help)
{
        #pragma unused help
        #pragma unused params
        SendClientMessage(playerid, 1, "Pozvao si hitnu,cekaj odgovor");
        zadnjipoziv = playerid;
        new string[128];
        format(string, sizeof(string), "%s je pozvao hitnu!", PlayerName(playerid));
        for(new i = 0; i < MAX_PLAYERS; i++)
        {
                  if(PlayerInfo[i][pMember] == 4 || PlayerInfo[i][pLeader] == 4)
                  {
                           SendClientMessage(i, -1, string);
                  }
       }
        return 1;
}

YCMD:prihvatipoziv(playerid, params[], help)
{
       #pragma unused help
       #pragma unused params
       if(PlayerInfo[playerid][pMember] != 4 && PlayerInfo[playerid][pLeader] != 4)
                  return SendClientMessage(playerid, -1, "Nisi bolnicar");
       if(zadnjipoziv == 999)
                  return SendClientMessage(playerid, -1, "Niko nije zvao hitnu");
       new igrac, Float:x, Float:y, Float:z;
       igrac = zadnjipoziv;
       GetPlayerPos(igrac, x, y, z);
       SetPlayerCheckpoint(playerid, x, y, z, 4.0);
       SendClientMessage(playerid, -1, "idi do markera za osobu");
       zadnjipoziv == 999;
       return 1;
}


EDIT: nisam vidio da si reko OnDuty, ustvari to je lako samo ubacis, to znas i sam :D

probaj, ako sam negdje fulo " ; " ili nesto slicno jbg pogledaj dobro
Poslednja Izmena: Mart 09, 2013, 16:32:44 POSLE PODNE od #define Botina Ermin_Smith

Pa mozes

if(PlayerInfo[playerid][pMember] == 5) //ovo stavi svoje
{
I ispod ovog stavis za duty
GetPlayerName(playerid, sendername, sizeof(sendername));
if(OnDuty[playerid]==1) //ovo bubam stavi za svoje
{
format(string, sizeof(string), "* %s trazi vasu pomoc pisi /prihvatipoziv da ga locirate",giveplayer);
SendClientMessage(playerid, COLOR_WHITE, string);
}
}


I sada /prihvatipoziv


GetPlayerName(playerid, sendername, sizeof(sendername));
                GetPlayerName(MedicCall, giveplayer, sizeof(giveplayer));
                format(string, sizeof(string), "* Prihvatili ste poziv od %s-a, imate 30 Sekundi da stignete tamo.",giveplayer);
SendClientMessage(playerid, COLOR_WHITE, string);
SendClientMessage(playerid, COLOR_WHITE, "* Poslije 30 Sekundi crveni marker ce nestati.");
                        format(string, sizeof(string), "* Bolnicar %s je prihvatio vas poziv, cekajte ga na trenutnoj poziciji.",sendername);
SendClientMessage(MedicCall, COLOR_WHITE, string);
new Float:X,Float:Y,Float:Z;
GetPlayerPos(MedicCall, X, Y, Z);
SetPlayerCheckpoint(playerid, X, Y, Z, 5);
GameTextForPlayer(playerid, "~w~Hitan Poziv~n~~r~Idite na crveni marker", 5000, 1);


Eto to ti ja samo poblize objasnio ..
Ti prilagodi sebi ..
Moji Radiovi!
TuT||Iz code u MTA


/
Poslednja Izmena: Mart 09, 2013, 19:09:11 POSLE PODNE od eXtreme-Teške