[POMOC]Prox Detector


Započeo Maxwellâ„¢, Jul 03, 2016, 18:57:57 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

Skripta koju koristim: gta rp edit (balkan exchange)
Detaljan opis problema:Hocu da namestim da kada igrac izadje sa servera sa wanted levelom a u blizini je igraca koji je policajac da ga automatski stavi u zatvor kada se vrati ali nikako mi ne ide.Stavio sam ovo pod onplayerdiscconect i sve mi lepo radi samo ne znam kako da stavim samo ako je u blizini policajca a za to mi je IsACop .Hvala
Dio skripte:
new dstring[128];
	if(WantedPoints[playerid] > 0 || PI[playerid][pWantedLevel] >= 1)
	{
		if(reason == 0) { PI[playerid][pJailed] = 0; PI[playerid][pJailTime] = 0; PI[playerid][pRobBre] = 0; }
	}
		if(WantedPoints[playerid] >= 1 || PI[playerid][pWantedLevel] >= 1)
	{
		if(PI[playerid][pWantedLevel] > 0)
		{
		new wlp = PI[playerid][pWantedLevel]*300;
		PI[playerid][pJailTime] += wlp;
		}
		PI[playerid][pJailed] = 1;
		PI[playerid][pRobBre] = 0;
		PI[playerid][pWantedLevel] = 0;
		WantedPoints[playerid] = 0;
	switch(reason)
    {
        case 0:
		{
		format(dstring, sizeof (dstring),"[Admin] %s je napustio server sa WL, razlog: Crash",GetName(playerid));
		}
        case 1: format(dstring, sizeof (dstring),"[Admin] %s je napustio server sa WL, razlog: Izasao Svojevoljno",GetName(playerid));
        case 2: format(dstring, sizeof (dstring),"[Admin] %s je napustio server sa WL, razlog: Kikovan/Banovan",GetName(playerid));
 	}
 	    ABroadCast(ZUTA,dstring,1);
	}

Neke slike/video za lakse dobivanje pomoci(neobavezno):/

Jednostavno prodjes kroz sve igrace pomocu foreach-a zatim proveris sopstvenu kordinatu preko IsPlayerInRangeOfPoint zatim ispod toga definises to za policiju i tek onda zatvaras igraca...

Au brate jel mozes malo bolje da mi objasnis nisam bas toliko pametan :D

Pa sto bi morao da bude u blizini policajca? Ako izadje sa wl i vrati se nek bude u zatvoru. Samo stavi da ti cuva vrednost wanteda. I kad ocitava ako imas u jail i zdravo hahah. A vidim znas to uraditi. Msm isto ti je

Mislim da ce ovako biti ok nisam testirao.
public OnPlayerDisconnect(playerid, reason)
{
	if (WantedLevel[playerid] > 0)
	{
	    new Float:x, Float:y, Float:z;
		GetPlayerPos(playerid, x, y, z);
	    if (IsPlayerInRangeOfPoint(playerid, 2.5, x, y, z))
	    {
		    foreach (Player, i)
		    {
		        if (IsACop(i))
		        {
		            PI[playerid][pJailed] = 1;
		        }
		    }
	    }
	}
	return 1;
}