Balkan SA:MP

PAWN skriptanje, gamemodovi, filterskripte, include fajlovi, mape, pluginovi => Razgovor u vezi PAWN - skriptanja => Temu započeo: Zerin poslato Oktobar 26, 2014, 12:59:40 POSLE PODNE

Naslov: [POMOC] Zona
Poruka od: Zerin poslato Oktobar 26, 2014, 12:59:40 POSLE PODNE
Skripta koju koristim:Tronic HardPly (MOJA)
Detaljan opis problema:Ovako, napravio sam gangzonu i sve je uredu, ali kako da namjestim kada neko udje u tu zonu da mu oruzije iz ruke nestane. Da oruzije moze koristiti samo izvan te zone!! MOLIM VAS TO MI JE POTREBNO!!
Dio skripte://
Neke slike/video za lakse dobivanje pomoci(neobavezno):ZNATE NA STA MISLIM
Naslov: Odg: [POMOC] Zona
Poruka od: RilleX poslato Oktobar 26, 2014, 13:38:30 POSLE PODNE
Mozes uraditi sa proverom IsPlayerInRangeOfPoint
Naslov: Odg: [POMOC] Zona
Poruka od: Zerin poslato Oktobar 26, 2014, 22:55:54 POSLE PODNE
Citat: Leoon poslato Oktobar 26, 2014, 13:38:30 POSLE PODNE
Mozes uraditi sa proverom IsPlayerInRangeOfPoint

Brt mozel neki primjer kako to da uradim.. :D
Naslov: Odg: [POMOC] Zona
Poruka od: RilleX poslato Oktobar 26, 2014, 23:50:45 POSLE PODNE
Pa mozes u timer a mozes i pod OnPlayerUpdate da stavis
if(IsPlayerInRangeOfPoint(playerid,50.0,x,y,z)) // x,y i ze svoje kordinate stavi
{
   // sta da radi
Naslov: Odg: [POMOC] Zona
Poruka od: [CH]Lenon poslato Oktobar 27, 2014, 08:18:44 PRE PODNE
Bolje ti je pomocu ovoga:


IsPlayerInArea(playerid, Float:MinX, Float:MinY, Float:MaxX, Float:MaxY)
{
    new Float:X, Float:Y, Float:Z;

    GetPlayerPos(playerid, X, Y, Z);
    if(X >= MinX && X <= MaxX && Y >= MinY && Y <= MaxY) {
        return 1;
    }
    return 0;
}

Sa tim tacno provjeravas u kojem se podruciju nalazi, ides IsPlayerInArea(playerid, i sad ovdje koordinate tvoje gang zone);
Naslov: Odg: [POMOC] Zona
Poruka od: Markoni Official poslato Novembar 03, 2014, 22:21:36 POSLE PODNE

#define ZONABR1 2337.9004,-1808.8383,2590.2043,-1610.3673
//#define ZONADVA 1337.9004,-808.8383,1590.2043,-610.3673 // Primjer druge zone


forward IsPlayerInZone(playerid, Float:MinX, Float:MinY, Float:MaxX, Float:MaxY);
forward IsPlayerInZoneProvjera();

public OnGameModeInit()
{
GangZoneCreate(ZONABR1);
// GangZoneCreate(ZONADVA); // Primjer druge zone
SetTimer("IsPlayerInZoneProvjera",100,1) // Tajmer koji provjerava da li netko usao u zonu svakih 1 milisekundu.
return 1;
}

public IsPlayerZone(playerid, Float:MinX, Float:MinY, Float:MaxX, Float:MaxY) // Matematicka provjera :) da li je u zoni
{
    new Float:X, Float:Y, Float:Z;

    GetPlayerPos(playerid, X, Y, Z);
    if(X >= MinX && X <= MaxX && Y >= MinY && Y <= MaxY)
{
        return 1;
    }
    return 0;
}

public IsPlayerInZoneProvjera() // Vremenska provjera da li je u zoni
{
for(new mxpl=0; mxpl < MAX_PLAYERS; mxpl++)
{
if(IsPlayerInZone(mxpl,ZONABR1) /* || IsPlayerInZone(mxpl, ZONADVA) // primjer druge zone*/)
{
ResetPlayerWeapons(playerid); // Ovo znaci da je u zoni i da mu je oduzeto oruzje
}
}
}


Nadam se da sam ti pomogao eto ubacio sam ti i jos jednu zonu kao primjer samo nije aktivna tako da znas kako ces modifikovati dalje. :) Nadam se da ces rijesiti problem jer ti je tako hitno. Pozz
Naslov: Odg: [POMOC] Zona
Poruka od: [CH]Lenon poslato Novembar 03, 2014, 23:37:53 POSLE PODNE
Ne refresaj starije teme.