Balkan SA:MP

PAWN skriptanje, gamemodovi, filterskripte, include fajlovi, mape, pluginovi => Razgovor u vezi PAWN - skriptanja => Temu započeo: Kaka poslato Avgust 01, 2017, 19:01:49 POSLE PODNE

Naslov: Oko wanteda
Poruka od: Kaka poslato Avgust 01, 2017, 19:01:49 POSLE PODNE
Skripta koju koristim: Moja
Detaljan opis problema: Da li mogu da npr kada napravim neki event rokanje ili nešto slično uglavnom fora je da se ubijaju na tom eventu, e da li sad ja mogu da namestim da kad je igrac na tom eventu i ubije nekoga da ne dobije wanted ?
Dio skripte: /
Neke slike/video za lakse dobivanje pomoci(neobavezno): /
Naslov: Odg: Oko wanteda
Poruka od: Ping poslato Avgust 01, 2017, 19:38:13 POSLE PODNE
Rekao bih da je to sa wanted levelom u tvojoj skripti, jer mislim da SA:MP nema wanted level u cistoj skripti.
Daj da vidimo dio skripte koji daje wanted level, jedan IF statement bi trebao biti dovoljan.
Naslov: Odg: Oko wanteda
Poruka od: Kaka poslato Avgust 02, 2017, 10:30:25 PRE PODNE
forward DajWl(playerid);
public DajWl(playerid)
{
    KillTimer(fakekillut[playerid]);
if(fakekillu == 0)
{
if(!IgracPolicajac(playerid))
{
if(PlayerInfo[playerid][pZatvorenVreme] == 0)
{
PostaviWanted(playerid, "Prvostepeno ubistvo", "Nepoznat",PlayerInfo[playerid][pTrazeniLevel]+4);
}
}
}
return 1;
}



Ovo možda ?
Naslov: Odg: Oko wanteda
Poruka od: Ch00pY poslato Avgust 02, 2017, 17:31:45 POSLE PODNE
Dodaj da ako je igrac prozvan na taj event njemu ne daje wl
Naslov: Odg: Oko wanteda
Poruka od: Ping poslato Avgust 02, 2017, 19:36:13 POSLE PODNE
Citat: Kaka poslato Avgust 02, 2017, 10:30:25 PRE PODNE
forward DajWl(playerid);
public DajWl(playerid)
{
    KillTimer(fakekillut[playerid]);
if(fakekillu == 0)
{
if(!IgracPolicajac(playerid))
{
if(PlayerInfo[playerid][pZatvorenVreme] == 0)
{
PostaviWanted(playerid, "Prvostepeno ubistvo", "Nepoznat",PlayerInfo[playerid][pTrazeniLevel]+4);
}
}
}
return 1;
}



Ovo možda ?

Napravi u PlayerInfo pPozvanNaEvent i koristi ovaj kod:
[pawn]forward DajWl(playerid);
public DajWl(playerid)
{
    KillTimer(fakekillut[playerid]);
   if(fakekillu == 0)
   {
   if(!IgracPolicajac(playerid) && !PlayerInfo[playerid][pPozvanNaEvent])
   {
      if(PlayerInfo[playerid][pZatvorenVreme] == 0)
      {
      PostaviWanted(playerid, "Prvostepeno ubistvo", "Nepoznat",PlayerInfo[playerid][pTrazeniLevel]+4);
      }
   }
   }
   return 1;
}[/pawn]

Ali pazi, morati ces dodati nesto sto ce regulisati PlayerInfo[playerid][pPozvanNaEvent], jer ako ne vratis na false igrac ce moci pobjeci sa eventa i ici ubijati bet posljedica.
Naslov: Odg: Oko wanteda
Poruka od: Bašovski poslato Avgust 02, 2017, 21:55:04 POSLE PODNE
Uradis samo varijablu da li je igrac na eventu i provjeru.

new bool:NaEventu [ MAX_PLAYERS ];

u callbacku onplayerdeath u segmentu gdje se daje wl:

[pawn]if ( NaEventu [ killerid ] == false ] ) {
//kod
}[/pawn]
moras dodati jos postavljanje varijable na true/false u komandama za event, mozes koristit global var da uradis provjere za ulazak na event.
globalne pravis isto sa new.