Balkan SA:MP

PAWN skriptanje, gamemodovi, filterskripte, include fajlovi, mape, pluginovi => Razgovor u vezi PAWN - skriptanja => Temu započeo: Markoni990 poslato Januar 26, 2015, 02:01:19 PRE PODNE

Naslov: [Pomoc] Oko zabranjene zone
Poruka od: Markoni990 poslato Januar 26, 2015, 02:01:19 PRE PODNE
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:/
Naslov: Odg: [Pomoc] Oko zabranjene zone
Poruka od: ▂ ▃ ▅ Rudimental ▅ ▃ ▂ poslato Januar 26, 2015, 03:17:08 PRE PODNE
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 ...
Naslov: Odg: [Pomoc] Oko zabranjene zone
Poruka od: Markoni990 poslato Januar 26, 2015, 03:30:36 PRE PODNE
Brt a kako dotati ovo pTiket da mu da kaznu neznam kako samo, ako moze da pojasnis malo.Hvala
Naslov: Odg: [Pomoc] Oko zabranjene zone
Poruka od: Seiz poslato Januar 26, 2015, 12:41:05 POSLE PODNE
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.
Naslov: Odg: [Pomoc] Oko zabranjene zone
Poruka od: [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
Naslov: Odg: [Pomoc] Oko zabranjene zone
Poruka od: TiXoR_ poslato Januar 26, 2015, 13:16:56 POSLE PODNE
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
Naslov: Odg: [Pomoc] Oko zabranjene zone
Poruka od: mario_cacic poslato Januar 26, 2015, 13:18:47 POSLE PODNE
nece covjek tako covjek hoce da mu da tiket a rekao mu je eto rudi
Naslov: Odg: [Pomoc] Oko zabranjene zone
Poruka od: Markoni990 poslato Januar 26, 2015, 17:22:34 POSLE PODNE
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;
}
Naslov: Odg: [Pomoc] Oko zabranjene zone
Poruka od: ▂ ▃ ▅ Rudimental ▅ ▃ ▂ poslato Januar 26, 2015, 17:52:14 POSLE PODNE

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;
}
Naslov: Odg: [Pomoc] Oko zabranjene zone
Poruka od: Markoni990 poslato Januar 26, 2015, 18:02:33 POSLE PODNE
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;
}
Naslov: Odg: [Pomoc] Oko zabranjene zone
Poruka od: [CH]Lenon poslato Januar 26, 2015, 18:05:22 POSLE PODNE
public proveraopstina()

bez ; na kraju
Naslov: Odg: [Pomoc] Oko zabranjene zone
Poruka od: 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.
Naslov: Odg: [Pomoc] Oko zabranjene zone
Poruka od: [CH]Lenon poslato Januar 26, 2015, 18:21:35 POSLE PODNE
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
Naslov: Odg: [Pomoc] Oko zabranjene zone
Poruka od: Markoni990 poslato Januar 26, 2015, 18:22:59 POSLE PODNE
Stavio sam pod OnGameModeInit, nisam te shvatio za 100ms
Naslov: Odg: [Pomoc] Oko zabranjene zone
Poruka od: [CH]Lenon poslato Januar 26, 2015, 18:24:07 POSLE PODNE
SetTimer("proveraopstina", 100, 1);
Naslov: Odg: [Pomoc] Oko zabranjene zone
Poruka od: Markoni990 poslato Januar 26, 2015, 18:29:06 POSLE PODNE
I dalje brt isto nista se nedesava nece da pise prijavu.:@
Naslov: Odg: [Pomoc] Oko zabranjene zone
Poruka od: ▂ ▃ ▅ Rudimental ▅ ▃ ▂ poslato Januar 26, 2015, 18:52:53 POSLE PODNE
Jel imas ti foreach ?
Naslov: Odg: [Pomoc] Oko zabranjene zone
Poruka od: Markoni990 poslato Januar 26, 2015, 18:58:26 POSLE PODNE
Radi sad e sad kad sam stavio da mu provera samo kad je kolima i da mu napise samo 1 kaznu ono nece da radi nzm sto.:@
forward proveraopstina();
public proveraopstina()
{
foreach (Player, i)
{
if(Kaznioga[i] == 0)
    {
    if(GetPlayerState(i) == PLAYER_STATE_DRIVER)
    {
    if (IsPlayerInRangeOfPoint(i, 20.0, 1469.5833,-1774.6041,13.3620)) // 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 moneys = 1000;
    new kaznenii[512];
format(kaznenii, sizeof(kaznenii), "{FF0000}[TICKET]{FFFFFF}RoboCot je napisao tiket igracu %s Cena: %d Razlog: {FF0000}Vozilom u pesacku zonu ", GetName(i), moneys);
SendClientMessageToAll(COLOR_LIGHTRED, kaznenii);
PI[i][pTiket] += 1;
TicketMoney[i] = moneys;
    Kaznioga[i] = 1;
    //SetTimerEx("GotovaKaznica",600000, false, "i", i);
//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;
}
Naslov: Odg: [Pomoc] Oko zabranjene zone
Poruka od: ▂ ▃ ▅ Rudimental ▅ ▃ ▂ poslato Januar 27, 2015, 00:33:25 PRE PODNE
Sta nece da radi ?
Naslov: Odg: [Pomoc] Oko zabranjene zone
Poruka od: Markoni990 poslato Januar 27, 2015, 00:49:16 PRE PODNE
Nasao sam u cemu je bio problem, namestio sam sad radi.Hvala svima koji su mi pomogli :) Moze Lock