[Ajuda] Comando /viraradmin base do /daradmin
#1

Tipo, eu queria criar um comando de /viraradmin, para um player digitar o comando e automaticamente virar admin.

Mais eu queria usar como base o comando /daradmin, e faz tempo que nao mexo com pawno e tou me confundindo aqui, serб que poderia dar uma ajuda?

Код:
	if(strcmp(cmd, "/daradmin", true) == 0)
	{
	    if(IsPlayerConnected(playerid))
	    {
	        if(PlayerInfo[playerid][pAdmin] < 1339)
	    	{
				SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo tem autorizaзгo para usar esse comando.");
				return 1;
	    	}
	        AdmsVaga();
	    	if(VagaSobrando == 0)
	    	{
				SendClientMessage(playerid, COLOR_GRAD1, "Nгo hб mais vagas na lista use /limparadm primeiro.");
				return 1;
	    	}
			tmp = strtok(cmdtext, idx);
			if(!strlen(tmp))
			{
				SendClientMessage(playerid, COLOR_GRAD2, "USE: /daradmin [id] [Nivel]");
				return 1;
			}
			new para1;
			new level;
			para1 = ReturnUser(tmp);
			tmp = strtok(cmdtext, idx);
			if(!strlen(tmp))
			{
				SendClientMessage(playerid, COLOR_GRAD2, "USE: /daradmin [id] [Nivel]");
				return 1;
			}
			level = strval(tmp);
			if(level == 0)
			{
				SendClientMessage(playerid, COLOR_GRAD2, "USE: /limparadmin para limpar uma vaga");
				return 1;
			}
			GetPlayerName(para1, giveplayer, sizeof(giveplayer));
			GetPlayerName(playerid, sendername, sizeof(sendername));
		    if(IsPlayerConnected(para1))
		    {
		        if(para1 != INVALID_PLAYER_ID)
		        {
		        	if(PlayerInfo[para1][pAdmin] >= 1342)
					{
						SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo pode promover um Admin Dono/Scripter!");
						format(string, sizeof(string), "O admin %s tentou te promover a nivel %d",sendername ,level);
						SendClientMessage(para1, COLOR_AZULBB, string);
						return 1;
					}
					format(string, sizeof(string), "   Vocк foi promovido para level  %d de Admin - Por %s", level, sendername);
					SendClientMessage(para1, COLOR_LIGHTBLUE, string);
					format(string, sizeof(string), "   Vocк promoveu o(a) %s Para o level %d de Admin.", giveplayer,level);
					SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
					getdate(year, month, day);
					gettime(hour,minute,second);
					format(string, sizeof(string), "%s deu admin nivel %d para %s [%d/%d/%d] бs [%d:%d:%d].", sendername, level, giveplayer, day,
					month, year, hour, minute, second);
					PAdminsLog(string);
					for(new i = 0; i < sizeof(AdmInfo); i++)
    				{
						if(PlayerInfo[para1][pAdmin] > 0)
						{
						    PlayerInfo[para1][pAdmin] = level;
						    break;
						}
   						else if(AdmInfo[i][AdminVaga] == 0)
						{
							PlayerInfo[para1][pAdmin] = level;
							AdmInfo[i][gMembro] = giveplayer;
							AdmInfo[i][AdminVaga] = 1;
							SaveAdm();
							break;
						}
					}
				}
			}
		}
		return 1;
	}
Reply
#2

pawn Код:
if(strcmp(cmd, "/viraradmin", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            tmp = strtok(cmdtext, idx);
            AdmsVaga();
            if(VagaSobrando == 0)
            {
                SendClientMessage(playerid, COLOR_GRAD1, "Nгo hб mais vagas sobrando!");
                return 1;
            }
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, COLOR_GRAD2, "USE: /viraradmin [Nivel]");
                return 1;
            }
            new level;
            level = strval(tmp);
            if(level == 0)
            {
                SendClientMessage(playerid, COLOR_GRAD2, "O Level deve ser maior do que 0");
                return 1;
            }
            new playername[21];
            GetPlayerName(playerid, playername, sizeof(playername));
            format(string, sizeof(string), "Vocк se promoveu a Admin %d", level);
            SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
            getdate(year, month, day);
            gettime(hour,minute,second);
            format(string, sizeof(string), "%s se promoveu a admin %d usendo /viraradmin [%d/%d/%d] бs [%d:%d:%d].", playername, level, day,
            month, year, hour, minute, second);
            PAdminsLog(string);
            for(new i = 0; i < sizeof(AdmInfo); i++)
            {
                if(PlayerInfo[playerid][pAdmin] > 0)
                {
                    PlayerInfo[playerid][pAdmin] = level;
                    break;
                }
                else if(AdmInfo[i][AdminVaga] == 0)
                {
                    PlayerInfo[playerid][pAdmin] = level;
                    AdmInfo[i][gMembro] = giveplayer;
                    AdmInfo[i][AdminVaga] = 1;
                    SaveAdm();
                    break;
                }
            }
        }
        return 1;
    }
Reply
#3

Da um warning aqui

Код:
C:\Users\Tiago\Documents\Tiago\samp03x_svr_R1-2_win32\gamemodes\brs.pwn(23083) : warning 219: local variable "playername" shadows a variable at a preceding level
Nessa Linha

Код:
new playername[21];
Reply
#4

pawn Код:
if(strcmp(cmd, "/viraradmin", true) == 0)
    {
        if(IsPlayerConnected(playerid))
        {
            tmp = strtok(cmdtext, idx);
            AdmsVaga();
            if(VagaSobrando == 0)
            {
                SendClientMessage(playerid, COLOR_GRAD1, "N ̄o h£ mais vagas sobrando!");
                return 1;
            }
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, COLOR_GRAD2, "USE: /viraradmin [Nivel]");
                return 1;
            }
            new level;
            level = strval(tmp);
            if(level == 0)
            {
                SendClientMessage(playerid, COLOR_GRAD2, "O Level deve ser maior do que 0");
                return 1;
            }
            GetPlayerName(playerid, playername, sizeof(playername));
            format(string, sizeof(string), "Vocк se promoveu a Admin %d", level);
            SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
            getdate(year, month, day);
            gettime(hour,minute,second);
            format(string, sizeof(string), "%s se promoveu a admin %d usendo /viraradmin [%d/%d/%d] £s [%d:%d:%d].", playername, level, day,
            month, year, hour, minute, second);
            PAdminsLog(string);
            for(new i = 0; i < sizeof(AdmInfo); i++)
            {
                if(PlayerInfo[playerid][pAdmin] > 0)
                {
                    PlayerInfo[playerid][pAdmin] = level;
                    break;
                }
                else if(AdmInfo[i][AdminVaga] == 0)
                {
                    PlayerInfo[playerid][pAdmin] = level;
                    AdmInfo[i][gMembro] = giveplayer;
                    AdmInfo[i][AdminVaga] = 1;
                    SaveAdm();
                    break;
                }
            }
        }
        return 1;
    }
Haha falha minha, tenta agora
Reply
#5

Ah й eu tambem sou burro pra ******, Eu ja tinha o playername como variбvel. Ta funfando o comando certin ae vlw ^^ , + REP pa ti
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)