[Pomoc] Oko zabranjene zone


Započeo Markoni990, Januar 26, 2015, 02:01:19 PRE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

Skripta koju koristim:GTARP
Dio skripte:/
Opis problema:Ovako interesujeme kako mogu da namestim da kad udjes sa vozilom ispred opstine na onaj parking, da mu da ticket od 1000$ i da ga izbaci iz auta.Hvala Unapred :)
Slika:/

Napravi neki tajmer http://wiki.sa-mp.com/wiki/SetTimer ili ubaci u neki postojevi vec i onda ubacis u njega ovako nesto

foreach (new i : Player)
{
	if (IsPlayerInRangeOfPoint(i, Range, X, Y, Z))
	{
		// Sta da se desi
	}
}


Ako budes ubacivao u neki vec postojeci public od tajmera i imas foreach ili proveru za sve igrace onda ti ona linija u vezi foreacha i ne treba ...

Brt a kako dotati ovo pTiket da mu da kaznu neznam kako samo, ako moze da pojasnis malo.Hvala

Lepo ti je covek napisao
// Sta da se desi

i ti tu stavis sta oces npr da mu da tiket, ispise poruku svim igracima da je dobio tiket i slicno.

foreach (new i : Player)
{
	if (IsPlayerInRangeOfPoint(i, Range, X, Y, Z))
	{
		GivePlayerMoney(i,-1000);
                SendClientMessage(i,COLOR_WHITE,"Drzava ti je naplatila ulazak na parking 1000$");
	}
}


samo stavis tu gore svoje koordinate gdje kad udje u koju zonu ovo x,y,z
Poslednja Izmena: Januar 26, 2015, 13:02:54 POSLE PODNE od [UG]Cile



Citat: [UG]Cile poslato Januar 26, 2015, 13:00:52 POSLE PODNE
foreach (new i : Player)
{
	if (IsPlayerInRangeOfPoint(i, Range, X, Y, Z))
	{
		GivePlayerMoney(i,-1000);
                SendClientMessage(i,COLOR_WHITE,"Drzava ti je naplatila ulazak na parking 1000$");
	}
}


samo stavis tu gore svoje koordinate gdje kad udje u koju zonu ovo x,y,z

isto tako treba napraviti provjeru da li je igrač u vozilu http://wiki.sa-mp.com/wiki/Function:IsPlayerInVehicle
i onda da ga kika iz auta http://wiki.sa-mp.com/wiki/RemovePlayerFromVehicle i onda da mu oduzme keš http://wiki.sa-mp.com/wiki/GetPlayerMoney

nece covjek tako covjek hoce da mu da tiket a rekao mu je eto rudi

Evo errori
C:\Users\HOME\Downloads\gamemodes\New folder\test.pwn(85002) : warning 219: local variable "kazneni" shadows a variable at a preceding level
C:\Users\HOME\Downloads\gamemodes\New folder\test.pwn(96436) : error 055: start of function body without function header
C:\Users\HOME\Downloads\gamemodes\New folder\test.pwn(96437) : error 010: invalid function or declaration
C:\Users\HOME\Downloads\gamemodes\New folder\test.pwn(96439) : error 010: invalid function or declaration
C:\Users\HOME\Downloads\gamemodes\New folder\test.pwn(96443) : error 021: symbol already defined: "GetPlayerName"
C:\Users\HOME\Downloads\gamemodes\New folder\test.pwn(96450) : error 010: invalid function or declaration
C:\Users\HOME\Downloads\gamemodes\New folder\test.pwn(100330) : warning 203: symbol is never used: "kaznapare"
C:\Users\HOME\Downloads\gamemodes\New folder\test.pwn(100330) : warning 203: symbol is never used: "kazneni"
Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase


5 Errors.

forward proveraopstina();
public proveraopstina();
{
foreach (new i : Player)
{
	if (IsPlayerInRangeOfPoint(i, Range, 1480.6249,-1763.7592,22.1978))
	{
	new kazneni[512];
	new kaznapare = (1000);
	GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
	format(kazneni, sizeof(kazneni), "{FF0000}[TICKET]{FFFFFF}RoboCot je napisao tiket igracu %s Cena: %d Razlog: {FF0000}Vozilom u pesacku zonu ", giveplayer, kaznapare);
	SendClientMessageToAll(COLOR_LIGHTRED, kazneni);
	PI[playerid][pTiket] += 1;
 	PI[playerid][pTiket] = kazna;
 	}
}
return 1;
}

forward proveraopstina();
public proveraopstina();
{
	foreach (new i : Player)
	{
		if (IsPlayerInRangeOfPoint(i, Range, 1480.6249,-1763.7592,22.1978)) // Kad ne znas funkciju i njene parametre kucaj njeno ime na netu idi na samp wiki i proci njene parametre u ovom slucaju Range nisi popunio idi i prouci sta je to za sta je taj parametar
		{
			new kazneni[512];
			format(kazneni, sizeof(kazneni), "{FF0000}[TICKET]{FFFFFF}RoboCot je napisao tiket igracu %s Cena: %d Razlog: {FF0000}Vozilom u pesacku zonu ", GetName(i), 1000);
			SendClientMessageToAll(COLOR_LIGHTRED, kazneni);
			PI[playerid][pTiket] += 1;
		 	//PI[playerid][pTiket] = kazna; // odakle da ti cita ovo kazna ? Usput ista je varijabla kao ova gora te ne znam sta si s njom zamislio
	 	}
	}
	return 1;
}


Ako nemas Stock za GetName ubaci ga negde na kraj scripte
stock GetName(playerid)
{
    new pName[MAX_PLAYER_NAME];
    GetPlayerName(playerid, pName, MAX_PLAYER_NAME);
    return pName;
}

C:\Users\HOME\Downloads\gamemodes\New folder\test.pwn(96460) : error 055: start of function body without function header
C:\Users\HOME\Downloads\gamemodes\New folder\test.pwn(96461) : error 010: invalid function or declaration
C:\Users\HOME\Downloads\gamemodes\New folder\test.pwn(96463) : error 010: invalid function or declaration
C:\Users\HOME\Downloads\gamemodes\New folder\test.pwn(96466) : error 021: symbol already defined: "format"
C:\Users\HOME\Downloads\gamemodes\New folder\test.pwn(96470) : error 054: unmatched closing brace ("}")
C:\Users\HOME\Downloads\gamemodes\New folder\test.pwn(96472) : error 010: invalid function or declaration



forward proveraopstina();
public proveraopstina();
{
	foreach (new i : Player)
	{
		if (IsPlayerInRangeOfPoint(i, Range, 1480.6249,-1763.7592,22.1978)) // Kad ne znas funkciju i njene parametre kucaj njeno ime na netu idi na samp wiki i proci njene parametre u ovom slucaju Range nisi popunio idi i prouci sta je to za sta je taj parametar
		{
			format(kazneni, sizeof(kazneni), "{FF0000}[TICKET]{FFFFFF}RoboCot je napisao tiket igracu %s Cena: %d Razlog: {FF0000}Vozilom u pesacku zonu ", GetName(i), 1000);
			SendClientMessageToAll(COLOR_LIGHTRED, kazneni);
			PI[playerid][pTiket] += 1;
		 	//PI[playerid][pTiket] = kazna; // odakle da ti cita ovo kazna ? Usput ista je varijabla kao ova gora te ne znam sta si s njom zamislio
	 	}
	}
	return 1;
}
Poslednja Izmena: Januar 26, 2015, 18:03:22 POSLE PODNE od Markoni990


Samo nece da pise prijavu stavio sam SetTimer("proveraopstina", 1, 1); da provera i nista se nedesava.

Citat: Markoni990 poslato Januar 26, 2015, 18:19:12 POSLE PODNE
Samo nece da pise prijavu stavio sam SetTimer("proveraopstina", 1, 1); da provera i nista se nedesava.

Gdje si stavio timer? i stavi 100ms

Stavio sam pod OnGameModeInit, nisam te shvatio za 100ms