Balkan SA:MP

PAWN skriptanje, gamemodovi, filterskripte, include fajlovi, mape, pluginovi => Razgovor u vezi PAWN - skriptanja => Temu započeo: Jugoslavija.amx poslato Januar 05, 2015, 18:29:49 POSLE PODNE

Naslov: [Pomoć] Provjera da li je igrač u kući
Poruka od: Jugoslavija.amx poslato Januar 05, 2015, 18:29:49 POSLE PODNE
Skripta koju koristim:  NGRP
Detaljan opis problema: Treba napraviti da ovu komandu igrač moze koristiti samo kada je u kući, vidite na vrhu komande sam to pokušao ali ne radi, tj. kada upišem opet gledam tv
Dio provjere:

new i = PlayerInfo[playerid][pPosedovanjeKuce];
    if( (!IsPlayerInRangeOfPoint(playerid, 15.0, KucaInfo[i][kIzlazX], KucaInfo[i][kIzlazY], KucaInfo[i]

Dio skripte:


CMD:watchtv(playerid, params[])
{
new i = PlayerInfo[playerid][pPosedovanjeKuce];
    if( (!IsPlayerInRangeOfPoint(playerid, 15.0, KucaInfo[i][kIzlazX], KucaInfo[i][kIzlazY], KucaInfo[i][kIzlazZ])) || WatchingTV[playerid] != 0)

if(broadcasting == 0)
{
SendClientMessageEx(playerid, COLOR_LIGHTBLUE, "* Nema nista na TV-u, izadji malo napolje igraj se sa ostalom djecom!");
return 1;
}

new string[128];
if(WatchingTV[playerid] == 0)
{
format(string, sizeof(string), "* %s uzima daljinski i pali tv", GetPlayerNameEx(playerid));
ProxDetector(30.0, playerid, string, COLOR_YELLOW,COLOR_YELLOW,COLOR_YELLOW,COLOR_YELLOW,COLOR_YELLOW);
SendClientMessageEx(playerid, COLOR_LIGHTBLUE, "Kucaj opet /watchtv da prestanes gledati");
BroadcastLastVW[playerid] = GetPlayerVirtualWorld(playerid);
BroadcastLastInt[playerid] = GetPlayerInterior(playerid);
GetPlayerPos(playerid, BroadcastFloats[playerid][1], BroadcastFloats[playerid][2], BroadcastFloats[playerid][3]);
GetPlayerFacingAngle(playerid, BroadcastFloats[playerid][0]);

WatchingTV[playerid] = 1;
viewers++;
UpdateSANewsBroadcast();

TogglePlayerControllable(playerid, false);
SetPlayerInterior(playerid, 1);
SetPlayerVirtualWorld(playerid, 4225);
SetPlayerPos(playerid, 639.2813,-11.8090,1111.4656);

if(cameraangle == 0)
{
SetPlayerCameraPos(playerid, 635.6883,-11.1890,1108.6041);
SetPlayerCameraLookAt(playerid, 641.3040,-12.2565,1108.1642);
}
else if(cameraangle == 1)
{
SetPlayerCameraPos(playerid, 637.9041,-8.3097,1108.9656);
SetPlayerCameraLookAt(playerid, 640.9764,-14.7714,1107.9656);
}
else if(cameraangle == 2)
{
SetPlayerCameraPos(playerid, 638.6522,-15.6267,1108.9656);
SetPlayerCameraLookAt(playerid, 640.7208,-9.5926,1107.2006);
}
else
{
SetPlayerCameraPos(playerid, 635.6883,-11.1890,1108.6041);
SetPlayerCameraLookAt(playerid, 641.3040,-12.2565,1108.1642);
}
}
else
{
TogglePlayerControllable(playerid, 0);
GameTextForPlayer(playerid, "Ucitavanje objekata...", 4000, 5);
SetPVarInt(playerid, "Loading..Interior", 1);
SetTimerEx("SafeLoadObjects", 4000, 0, "d", playerid);
SetPlayerPos(playerid,BroadcastFloats[playerid][1],BroadcastFloats[playerid][2],BroadcastFloats[playerid][3]);
SetPlayerVirtualWorld(playerid, BroadcastLastVW[playerid]);
PlayerInfo[playerid][pVW] = BroadcastLastVW[playerid];
SetPlayerInterior(playerid, BroadcastLastInt[playerid]);
PlayerInfo[playerid][pInt] = BroadcastLastInt[playerid];
SetPlayerFacingAngle(playerid, BroadcastFloats[playerid][0]);
SetCameraBehindPlayer(playerid);

WatchingTV[playerid] = 0;
viewers--;
UpdateSANewsBroadcast();

format(string, sizeof(string), "* %s uzima daljinski i gasi TV!", GetPlayerNameEx(playerid));
ProxDetector(30.0, playerid, string, COLOR_YELLOW,COLOR_YELLOW,COLOR_YELLOW,COLOR_YELLOW,COLOR_YELLOW);
}


return 1;
}




Neke slike: Nije potrebno
Naslov: Odg: [Pomoć] Provjera da li je igrač u kući
Poruka od: ▂ ▃ ▅ Rudimental ▅ ▃ ▂ poslato Januar 05, 2015, 18:35:46 POSLE PODNE

CMD:watchtv(playerid, params[])
{
new i = PlayerInfo[playerid][pPosedovanjeKuce];
    //if( (!IsPlayerInRangeOfPoint(playerid, 15.0, KucaInfo[i][kIzlazX], KucaInfo[i][kIzlazY], KucaInfo[i][kIzlazZ])) || WatchingTV[playerid] != 0)
        if(!IsPlayerInRangeOfPoint(playerid, 15.0, KucaInfo[i][kIzlazX], KucaInfo[i][kIzlazY], KucaInfo[i][kIzlazZ])) return SCM (playerid, -1, "Niste u kuci !");

if(broadcasting == 0)
{
SendClientMessageEx(playerid, COLOR_LIGHTBLUE, "* Nema nista na TV-u, izadji malo napolje igraj se sa ostalom djecom!");
return 1;
}

new string[128];
if(WatchingTV[playerid] == 0)
{
format(string, sizeof(string), "* %s uzima daljinski i pali tv", GetPlayerNameEx(playerid));
ProxDetector(30.0, playerid, string, COLOR_YELLOW,COLOR_YELLOW,COLOR_YELLOW,COLOR_YELLOW,COLOR_YELLOW);
SendClientMessageEx(playerid, COLOR_LIGHTBLUE, "Kucaj opet /watchtv da prestanes gledati");
BroadcastLastVW[playerid] = GetPlayerVirtualWorld(playerid);
BroadcastLastInt[playerid] = GetPlayerInterior(playerid);
GetPlayerPos(playerid, BroadcastFloats[playerid][1], BroadcastFloats[playerid][2], BroadcastFloats[playerid][3]);
GetPlayerFacingAngle(playerid, BroadcastFloats[playerid][0]);

WatchingTV[playerid] = 1;
viewers++;
UpdateSANewsBroadcast();

TogglePlayerControllable(playerid, false);
SetPlayerInterior(playerid, 1);
SetPlayerVirtualWorld(playerid, 4225);
SetPlayerPos(playerid, 639.2813,-11.8090,1111.4656);

if(cameraangle == 0)
{
SetPlayerCameraPos(playerid, 635.6883,-11.1890,1108.6041);
SetPlayerCameraLookAt(playerid, 641.3040,-12.2565,1108.1642);
}
else if(cameraangle == 1)
{
SetPlayerCameraPos(playerid, 637.9041,-8.3097,1108.9656);
SetPlayerCameraLookAt(playerid, 640.9764,-14.7714,1107.9656);
}
else if(cameraangle == 2)
{
SetPlayerCameraPos(playerid, 638.6522,-15.6267,1108.9656);
SetPlayerCameraLookAt(playerid, 640.7208,-9.5926,1107.2006);
}
else
{
SetPlayerCameraPos(playerid, 635.6883,-11.1890,1108.6041);
SetPlayerCameraLookAt(playerid, 641.3040,-12.2565,1108.1642);
}
}
else
{
TogglePlayerControllable(playerid, 0);
GameTextForPlayer(playerid, "Ucitavanje objekata...", 4000, 5);
SetPVarInt(playerid, "Loading..Interior", 1);
SetTimerEx("SafeLoadObjects", 4000, 0, "d", playerid);
SetPlayerPos(playerid,BroadcastFloats[playerid][1],BroadcastFloats[playerid][2],BroadcastFloats[playerid][3]);
SetPlayerVirtualWorld(playerid, BroadcastLastVW[playerid]);
PlayerInfo[playerid][pVW] = BroadcastLastVW[playerid];
SetPlayerInterior(playerid, BroadcastLastInt[playerid]);
PlayerInfo[playerid][pInt] = BroadcastLastInt[playerid];
SetPlayerFacingAngle(playerid, BroadcastFloats[playerid][0]);
SetCameraBehindPlayer(playerid);

WatchingTV[playerid] = 0;
viewers--;
UpdateSANewsBroadcast();

format(string, sizeof(string), "* %s uzima daljinski i gasi TV!", GetPlayerNameEx(playerid));
ProxDetector(30.0, playerid, string, COLOR_YELLOW,COLOR_YELLOW,COLOR_YELLOW,COLOR_YELLOW,COLOR_YELLOW);
}


return 1;
}
Naslov: Odg: [Pomoć] Provjera da li je igrač u kući
Poruka od: Jugoslavija.amx poslato Januar 05, 2015, 19:18:41 POSLE PODNE
Hvala, mozes mi ovo usput vio sam komandu za davanje promoera, ali  ne  ispisuje ime u dijelu "AdministraTOR (nick) vam je dao promotera"
Isto ne ispisuje "Dali ste igracu (NICK) PROmotera"
Mozes li mi top popraviti u komandama, problem je samo sto nick ne ispisuje


    //KOMANDA ZA STAVLJANJE PROMOTERA
CMD:ppromotera(playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] < 1338) return SCM(playerid, WHITE, "{FFFFFF}BG:RP Info | {00c0ff}Nemate ovlastenje za upotrebu ove komande!");
new string[128];
new pName[MAX_PLAYER_NAME];
new giveplayer[MAX_PLAYER_NAME];
new id;
new skin;
GetPlayerName(playerid, pName, 24);
if(sscanf(params, "ud", id,skin)) return SendClientMessage(playerid, 0xFFFFFFAA, "Koristi: /ppromotera [ID/Dio imena] [1]");
if(!IsPlayerConnected(id)) return SCM(playerid,-1,"Taj igrac nije na serveru");
PlayerInfo[id][pPromoter] = 1;

format(string, sizeof(string), "Admin %s ti je dao promotera, sve komande mozete pogledati na /phelp", pName);
SCM(id,COLOR_ERVINCRVENA, string);

SCMF(playerid,WHITE,"{FF0000}NB Adm | {00C0FF}Dali ste igracu %s promotera.", giveplayer);
return 1;
}








//KOMANDA ZA SKIDANJE
CMD:spromotera(playerid, params[])
{
if(PlayerInfo[playerid][pAdmin] < 1338) return SCM(playerid, WHITE, "{FFFFFF}BG:RP Info | {00c0ff}Nemate ovlastenje za upotrebu ove komande!");
new string[128];
new pName[MAX_PLAYER_NAME];
new giveplayer[MAX_PLAYER_NAME];
new id;
new skin;
GetPlayerName(playerid, pName, 24);
if(sscanf(params, "ud", id,skin)) return SendClientMessage(playerid, 0xFFFFFFAA, "Koristi: /spromotera [ID/Dio imena] [1]");
if(!IsPlayerConnected(id)) return SCM(playerid,-1,"Taj igrac nije na serveru");
PlayerInfo[id][pPromoter] = 0;

format(string, sizeof(string), "Admin %s vam je skinuo promotera!", pName);
SCM(id,COLOR_ERVINCRVENA, string);
SCMF(playerid,WHITE,"{FF0000}NB Adm | {00C0FF}Skinuli ste igracu %s promotera.", giveplayer);
return 1;
}
Naslov: Odg: [Pomoć] Provjera da li je igrač u kući
Poruka od: ▂ ▃ ▅ Rudimental ▅ ▃ ▂ poslato Januar 05, 2015, 20:00:51 POSLE PODNE
Obrisi te 2 komande sto radis s 2 komande kad sve to mozes sa jednom komandom :D

CMD:makepromoter(playerid, params[])
{
new
    string[128],
    id,
    level;
    if (PlayerInfo[playerid][pAdmin] < 1338) return SCM(playerid, WHITE, "{FFFFFF}BG:RP Info | {00c0ff}Nemate ovlastenje za upotrebu ove komande!");
    if (sscanf(params, "ud", id, level)) return SendClientMessage(playerid, 0xFFFFFFAA, "Koristi: /spromotera [ID/Dio imena] [Level]");
if (id == INVALID_PLAYER_ID) return SCM(playerid,-1,"Taj igrac nije na serveru");
if (level == 0)
{
    format(string, sizeof(string), "Admin %s vam je skinuo promotera!", GetName(playerid));
SCM(id,COLOR_ERVINCRVENA, string);
SCM(playerid,WHITE,"{FF0000}NB Adm | {00C0FF}Skinuli ste igracu %s promotera.", GetName(id));
}
else
{
    format(string, sizeof(string), "Admin %s ti je dao promotera, sve komande mozete pogledati na /phelp", GetName(playerid));
SCM(id,COLOR_ERVINCRVENA, string);
SCM(playerid,WHITE,"{FF0000}NB Adm | {00C0FF}Dali ste igracu %s promotera.", GetName(id));
}
PlayerInfo[id][pPromoter] = level;
return 1;
}


Takodje GetName ako ga nemas

stock GetName(playerid)
{
    new pName[MAX_PLAYER_NAME];
    GetPlayerName(playerid, pName, MAX_PLAYER_NAME);
    return pName;
}

Naslov: Odg: [Pomoć] Provjera da li je igrač u kući
Poruka od: Jugoslavija.amx poslato Januar 05, 2015, 20:11:38 POSLE PODNE
Hvala brate puuno, i izvini Å¡to  smaram testirao sam komandu /watchtv i radi prvi puta tj. kada hocu da gledam tv, problem je  kada hocu da prestanem gledati kucam /watchtv i pise da nisam u kuci, mislim da treba malo drugačije provjeru napravit :D
Naslov: Odg: [Pomoć] Provjera da li je igrač u kući
Poruka od: ▂ ▃ ▅ Rudimental ▅ ▃ ▂ poslato Januar 05, 2015, 20:15:19 POSLE PODNE
Sredi u komandi da u koliko gleda TV da mu ne proverava jel u kuci ili ne...
Naslov: Odg: [Pomoć] Provjera da li je igrač u kući
Poruka od: Jugoslavija.amx poslato Januar 05, 2015, 20:44:15 POSLE PODNE
ne znam kako, mozes neki primjer molim te ?
Naslov: Odg: [Pomoć] Provjera da li je igrač u kući
Poruka od: ▂ ▃ ▅ Rudimental ▅ ▃ ▂ poslato Januar 05, 2015, 22:15:14 POSLE PODNE
Aj probaj ovako ako ne bude radilo vici

CMD:watchtv(playerid, params[])
{
new i = PlayerInfo[playerid][pPosedovanjeKuce];
    if( (!IsPlayerInRangeOfPoint(playerid, 15.0, KucaInfo[i][kIzlazX], KucaInfo[i][kIzlazY], KucaInfo[i][kIzlazZ])) || WatchingTV[playerid] != 0)  return SCM (playerid, -1, "Niste u kuci !");
       
if(broadcasting == 0)
{
SendClientMessageEx(playerid, COLOR_LIGHTBLUE, "* Nema nista na TV-u, izadji malo napolje igraj se sa ostalom djecom!");
return 1;
}

new string[128];
if(WatchingTV[playerid] == 0)
{
format(string, sizeof(string), "* %s uzima daljinski i pali tv", GetPlayerNameEx(playerid));
ProxDetector(30.0, playerid, string, COLOR_YELLOW,COLOR_YELLOW,COLOR_YELLOW,COLOR_YELLOW,COLOR_YELLOW);
SendClientMessageEx(playerid, COLOR_LIGHTBLUE, "Kucaj opet /watchtv da prestanes gledati");
BroadcastLastVW[playerid] = GetPlayerVirtualWorld(playerid);
BroadcastLastInt[playerid] = GetPlayerInterior(playerid);
GetPlayerPos(playerid, BroadcastFloats[playerid][1], BroadcastFloats[playerid][2], BroadcastFloats[playerid][3]);
GetPlayerFacingAngle(playerid, BroadcastFloats[playerid][0]);

WatchingTV[playerid] = 1;
viewers++;
UpdateSANewsBroadcast();

TogglePlayerControllable(playerid, false);
SetPlayerInterior(playerid, 1);
SetPlayerVirtualWorld(playerid, 4225);
SetPlayerPos(playerid, 639.2813,-11.8090,1111.4656);

if(cameraangle == 0)
{
SetPlayerCameraPos(playerid, 635.6883,-11.1890,1108.6041);
SetPlayerCameraLookAt(playerid, 641.3040,-12.2565,1108.1642);
}
else if(cameraangle == 1)
{
SetPlayerCameraPos(playerid, 637.9041,-8.3097,1108.9656);
SetPlayerCameraLookAt(playerid, 640.9764,-14.7714,1107.9656);
}
else if(cameraangle == 2)
{
SetPlayerCameraPos(playerid, 638.6522,-15.6267,1108.9656);
SetPlayerCameraLookAt(playerid, 640.7208,-9.5926,1107.2006);
}
else
{
SetPlayerCameraPos(playerid, 635.6883,-11.1890,1108.6041);
SetPlayerCameraLookAt(playerid, 641.3040,-12.2565,1108.1642);
}
}
else
{
TogglePlayerControllable(playerid, 0);
GameTextForPlayer(playerid, "Ucitavanje objekata...", 4000, 5);
SetPVarInt(playerid, "Loading..Interior", 1);
SetTimerEx("SafeLoadObjects", 4000, 0, "d", playerid);
SetPlayerPos(playerid,BroadcastFloats[playerid][1],BroadcastFloats[playerid][2],BroadcastFloats[playerid][3]);
SetPlayerVirtualWorld(playerid, BroadcastLastVW[playerid]);
PlayerInfo[playerid][pVW] = BroadcastLastVW[playerid];
SetPlayerInterior(playerid, BroadcastLastInt[playerid]);
PlayerInfo[playerid][pInt] = BroadcastLastInt[playerid];
SetPlayerFacingAngle(playerid, BroadcastFloats[playerid][0]);
SetCameraBehindPlayer(playerid);

WatchingTV[playerid] = 0;
viewers--;
UpdateSANewsBroadcast();

format(string, sizeof(string), "* %s uzima daljinski i gasi TV!", GetPlayerNameEx(playerid));
ProxDetector(30.0, playerid, string, COLOR_YELLOW,COLOR_YELLOW,COLOR_YELLOW,COLOR_YELLOW,COLOR_YELLOW);
}


return 1;
}

Naslov: Odg: [Pomoć] Provjera da li je igrač u kući
Poruka od: Jugoslavija.amx poslato Januar 05, 2015, 22:59:05 POSLE PODNE
Ne radi brate, ako ti je lakše bi l' mi mogao napravit komandu /ugasitv mozda bi tako radila :D a iz /watchtv izbacit ovu drugu provjeru za gasenje
Naslov: Odg: [Pomoć] Provjera da li je igrač u kući
Poruka od: ▂ ▃ ▅ Rudimental ▅ ▃ ▂ poslato Januar 05, 2015, 23:34:32 POSLE PODNE
Pa ajd moze i tako

CMD:watchtv(playerid, params[])
{
new i = PlayerInfo[playerid][pPosedovanjeKuce];
    if(!IsPlayerInRangeOfPoint(playerid, 15.0, KucaInfo[i][kIzlazX], KucaInfo[i][kIzlazY], KucaInfo[i][kIzlazZ])) return SCM (playerid, -1, "Niste u kuci !");

if(broadcasting == 0)
{
SendClientMessageEx(playerid, COLOR_LIGHTBLUE, "* Nema nista na TV-u, izadji malo napolje igraj se sa ostalom djecom!");
return 1;
}

new string[128];
if(WatchingTV[playerid] == 0)
{
format(string, sizeof(string), "* %s uzima daljinski i pali tv", GetPlayerNameEx(playerid));
ProxDetector(30.0, playerid, string, COLOR_YELLOW,COLOR_YELLOW,COLOR_YELLOW,COLOR_YELLOW,COLOR_YELLOW);
SendClientMessageEx(playerid, COLOR_LIGHTBLUE, "Kucaj opet /watchtv da prestanes gledati");
BroadcastLastVW[playerid] = GetPlayerVirtualWorld(playerid);
BroadcastLastInt[playerid] = GetPlayerInterior(playerid);
GetPlayerPos(playerid, BroadcastFloats[playerid][1], BroadcastFloats[playerid][2], BroadcastFloats[playerid][3]);
GetPlayerFacingAngle(playerid, BroadcastFloats[playerid][0]);

WatchingTV[playerid] = 1;
viewers++;
UpdateSANewsBroadcast();

TogglePlayerControllable(playerid, false);
SetPlayerInterior(playerid, 1);
SetPlayerVirtualWorld(playerid, 4225);
SetPlayerPos(playerid, 639.2813,-11.8090,1111.4656);

if(cameraangle == 0)
{
SetPlayerCameraPos(playerid, 635.6883,-11.1890,1108.6041);
SetPlayerCameraLookAt(playerid, 641.3040,-12.2565,1108.1642);
}
else if(cameraangle == 1)
{
SetPlayerCameraPos(playerid, 637.9041,-8.3097,1108.9656);
SetPlayerCameraLookAt(playerid, 640.9764,-14.7714,1107.9656);
}
else if(cameraangle == 2)
{
SetPlayerCameraPos(playerid, 638.6522,-15.6267,1108.9656);
SetPlayerCameraLookAt(playerid, 640.7208,-9.5926,1107.2006);
}
else
{
SetPlayerCameraPos(playerid, 635.6883,-11.1890,1108.6041);
SetPlayerCameraLookAt(playerid, 641.3040,-12.2565,1108.1642);
}
}
return 1;
}


CMD:ugasitv(playerid, params[])
{
#pragma unused params
        if (WatchingTV[playerid] == 0) return SCM (playerid, -1, "Ne gledate TV !");
TogglePlayerControllable(playerid, 0);
GameTextForPlayer(playerid, "Ucitavanje objekata...", 4000, 5);
SetPVarInt(playerid, "Loading..Interior", 1);
SetTimerEx("SafeLoadObjects", 4000, 0, "d", playerid);
SetPlayerPos(playerid,BroadcastFloats[playerid][1],BroadcastFloats[playerid][2],BroadcastFloats[playerid][3]);
SetPlayerVirtualWorld(playerid, BroadcastLastVW[playerid]);
PlayerInfo[playerid][pVW] = BroadcastLastVW[playerid];
SetPlayerInterior(playerid, BroadcastLastInt[playerid]);
PlayerInfo[playerid][pInt] = BroadcastLastInt[playerid];
SetPlayerFacingAngle(playerid, BroadcastFloats[playerid][0]);
SetCameraBehindPlayer(playerid);

WatchingTV[playerid] = 0;
viewers--;
UpdateSANewsBroadcast();

format(string, sizeof(string), "* %s uzima daljinski i gasi TV!", GetPlayerNameEx(playerid));
ProxDetector(30.0, playerid, string, COLOR_YELLOW,COLOR_YELLOW,COLOR_YELLOW,COLOR_YELLOW,COLOR_YELLOW);
return 1;
}


Naslov: Odg: [Pomoć] Provjera da li je igrač u kući
Poruka od: Jugoslavija.amx poslato Januar 06, 2015, 00:32:34 PRE PODNE
Hvala brate, napravio sam provjeru ja puno hvala
Lock please :D