[Pomoc] Oko komande


Započeo Max_Armadilo, Decembar 24, 2014, 20:49:05 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

Skripta koju koristim: Radim svoju neku
Detaljan opis problema: Oko jedne komande
Dio skripte:
CMD:tmlp(playerid, params[])
	{
		if(IsPlayerConnected(playerid))
		{
        	if (PlayerInfo[playerid][pAdmin] >= 1337)
        	{
				foreach (Player, i)
				{
					if(PlayerInfo[i][pMuted] == 0)
					{
						PlayerInfo[i][pMuted] = 1;
					}
				}
				GetPlayerName(playerid, sendername, sizeof(sendername));
				printf("[Admin]: %s je oduzeo mogucnost govora svim igracima",sendername);
				else
  			{
				SendClientMessage(playerid, COLOR_WHITE, "   Niste ovlasceni da koristite ovu komandu !");
			}
		}
		}
		return 1;
	}


Dakle uzeo sam ovu CMD iz jednog moda i malo je editovo,ali sad zelim da napravim da samo igrace u blizini sebe mutiram na neko odreÄ'eno vrijeme..



Neke slike/video za lakse dobivanje pomoci(neobavezno):
Poslednja Izmena: Decembar 24, 2014, 20:49:41 POSLE PODNE od Max_Armadilo

u buduce koristi ovo da napravis
http://wiki.sa-mp.com/wiki/IsPlayerInRangeOfPoint

new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);

 if(IsPlayerInRangeOfPoint(playerid, 30.0, x, y, z))


ubaci u komandu
Poslednja Izmena: Decembar 24, 2014, 21:00:26 POSLE PODNE od [BuL]Cile



Htjeo sam da bude da kada kucam /tmlp 20 da mutira sve igrace o blizini mene na 20minuta,a isto tako kada kucam /tmlp 0 da ih unmutura..

Probaj ovako
CMD:tmlp(playerid, params[])
{
	new idx, radius;
	if(IsPlayerConnected(playerid))
	{
	    if (sscanf(params, "dd", idx, radius)) return SCM (playerid, -1, "Koriscenje: /tmlp");
		if (PlayerInfo[playerid][pAdmin] >= 1337)
		{
		    new Float:x, Float:y, Float:z;
			GetPlayerPos(playerid, x, y, z);
			foreach (new i : Player)
			{
			    if(IsPlayerInRangeOfPoint(i, radius, x, y, z))
			    {
			        if (idx == 0)
			        {
			            if(PlayerInfo[i][pMuted] == 1)
						{
							PlayerInfo[i][pMuted] = 0;
						}
			        }
			        else
			        {
						if(PlayerInfo[i][pMuted] == 0)
						{
							PlayerInfo[i][pMuted] = 1;
						}
					}
				}
			}
			GetPlayerName(playerid, sendername, sizeof(sendername));
			printf("[Admin]: %s je oduzeo mogucnost govora svim igracima",sendername);
			else
			{
				SendClientMessage(playerid, COLOR_WHITE, "Niste ovlasceni da koristite ovu komandu !");
			}
		}
	}
	return 1;
}
Poslednja Izmena: Decembar 24, 2014, 22:17:38 POSLE PODNE od â–… â–† â–ˆ Rudimental â–ˆ â–† â–…

Citat: Max_Armadilo poslato Decembar 24, 2014, 22:07:52 POSLE PODNE
Htjeo sam da bude da kada kucam /tmlp 20 da mutira sve igrace o blizini mene na 20minuta,a isto tako kada kucam /tmlp 0 da ih unmutura..

eh druze treba ti jos jedna varijabla
pMutedtime

ovo ti je primjer

i onda stavis
new vrijeme;
if (sscanf(params, "d", vrijeme)) return SCM (playerid, -1, "Koriscenje: /tmlp [vrijeme]");


i onda dodas jos

if(PlayerInfo[i][pMutedtime] == 0)
{
PlayerInfo[i][pMutedtime] = vrijeme;
}


neda mi se sklapat cjelu komandu, ovaj rudimental je mod nek sklopi :D
Poslednja Izmena: Decembar 24, 2014, 22:23:39 POSLE PODNE od [BuL]Cile