[duv]/particular errado ? faltando algo nй , eu acho '-'
#1

Ai queria saber se ta errado o bagui aqui, ou se ta faltando alguma coisa

Code:
if(strcmp(cmd, "/particular", true) == 0 || strcmp(cmd, "/par", true) == 0)
	{
     	if(IsPlayerConnected(playerid))
	    {
			if (gPlayerLogged[playerid] == 0)
			{
				SendClientMessage(playerid, COLOR_GRAD1, "   Vocк nгo estб logado!");
				return 1;
			}
	        if(PlayerInfo[playerid][pAdmin] < 1)
			{
	            SendClientMessage(playerid, COLOR_GREY, "	Vocк nгo e admin!");
	            return 1;
	        }
	        if(admtrampando[playerid] < 1)
			{
				SendClientMessage(playerid, COLOR_GRAD1, "	Vocк nгo estб trabalhando! [Trabalhar]");
				return 1;
			}
			tmp = strtok(cmdtext, idx);
			if(!strlen(tmp))
			{
				SendClientMessage(playerid, COLOR_GRAD2, "USE: (/par)ticular [ id ] [texto]");
				return 1;
			}
			giveplayerid = ReturnUser(tmp);
			if (IsPlayerConnected(giveplayerid))
			{
			    if(giveplayerid != INVALID_PLAYER_ID)
			    {
			        if(HidePM[giveplayerid] > 0)
			        {
			            SendClientMessage(playerid, COLOR_GREY, "O jogador bloqueou mensagens privadas!");
			            return 1;
			        }
					GetPlayerName(playerid, sendername, sizeof(sendername));
					GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
					if(giveplayerid == playerid)
					{
						format(string, sizeof(string), "* %s mutters somthing.", sendername);
						ProxDetector(5.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
					}
					new length = strlen(cmdtext);
					while ((idx < length) && (cmdtext[idx] <= ' '))
					{
						idx++;
					}
					new offset = idx;
					new result[64];
					while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
					{
						result[idx - offset] = cmdtext[idx];
						idx++;
					}
					result[idx - offset] = EOS;
					if(!strlen(result))
					{
						SendClientMessage(playerid, COLOR_GRAD2, "USE: (/par)ticular [ id ] [texto da mensagem]");
						return 1;
					}
					format(string, sizeof(string), "Particular de %s (ID: %d) Enviou: %s", sendername, playerid, (result));
					SendClientMessage(giveplayerid, COLOR_YELLOW, string);
					format(string, sizeof(string), "Mensagem Particular enviada para %s (ID: %d).", giveplayer, giveplayerid);
					SendClientMessage(playerid,  COLOR_YELLOW, string);
					SBizzInfo[2][sbTill] += SBizzInfo[2][sbEntranceCost] / 2;
					ExtortionSBiz(2, SBizzInfo[2][sbEntranceCost] / 2);
					return 1;
				}
			}
			else
			{
				format(string, sizeof(string), "   %d nгo й um jogador ativo.", giveplayerid);
				SendClientMessage(playerid, COLOR_GRAD1, string);
			}
		}
	 	return 1;
	}
Tipooww, ele tem como adminstrador mandar /par pra player, mais nao tem como player mandar pra adm, o que ta faltando , alguem corrige pra mim ?
Reply
#2

cara, larga de strtok. Tб ultrapassado jб.
usa zcmd & sscanf
Reply
#3

hm, bls .. mais e ae, alguem sabe ?
Reply
#4

Arrumei seu comando, mas nгo testei, espero ter ajudado

pawn Code:
//---------------------[ Linha que o Ken / Rjjj colocou =) ]-----------------------------------------------
    if(strcmp(cmd, "/particular", true) == 0 || strcmp(cmd, "/par", true) == 0)
    {
     if(IsPlayerConnected(playerid))
        {
            if(PlayerInfo[playerid][pAdmin] < 1 && admtrampando[playerid] < 1)
            {
                SendClientMessage(playerid, COLOR_GREY, "Vocк й administrador mas nгo estб trabalhando !! /profadmin");
                return 1;
            }
            tmp = strtok(cmdtext, idx);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, COLOR_GRAD2, "USE: (/par)ticular [ id ] [texto]");
                return 1;
            }
            giveplayerid = ReturnUser(tmp);
            if (IsPlayerConnected(giveplayerid))
            {
                if(giveplayerid != INVALID_PLAYER_ID)
                {
                    if(PlayerInfo[playerid][pAdmin] < 1 && PlayerInfo[playerid][pLevel] > 0 && PlayerInfo[giveplayerid][pAdmin] < 1)
                    {
                        SendClientMessage(playerid, COLOR_GREY, "Vocк nгo й administrador. Sу pode mandar PM para admins !! /particular");
                        return 1;
                    }
                    if(HidePM[giveplayerid] > 0)
                    {
                        SendClientMessage(playerid, COLOR_GREY, "O jogador bloqueor PMs!");
                        return 1;
                    }
                    GetPlayerName(playerid, sendername, sizeof(sendername));
                    GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
                    if(giveplayerid == playerid)
                    {
                        format(string, sizeof(string), "* %s mutters somthing.", sendername);
                        ProxDetector(5.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
                    }
                    new length = strlen(cmdtext);
                    while ((idx < length) && (cmdtext[idx] <= ' '))
                    {
                        idx++;
                    }
                    new offset = idx;
                    new result[64];
                    while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
                    {
                        result[idx - offset] = cmdtext[idx];
                        idx++;
                    }
                    result[idx - offset] = EOS;
                    if(!strlen(result))
                    {
                        SendClientMessage(playerid, COLOR_GRAD2, "USE: (/par)ticular [ id ] [whisper text]");
                        return 1;
                    }
                    format(string, sizeof(string), "%s(ID: %d) particular: %s", sendername, playerid, (result));
                    SendClientMessage(giveplayerid, COLOR_YELLOW, string);
                    format(string, sizeof(string), "PM enviada para %s(ID: %d).", giveplayer, giveplayerid);
                    SendClientMessage(playerid,  COLOR_YELLOW, string);
                    SBizzInfo[2][sbTill] += txtcost / 2;
                    ExtortionSBiz(2, txtcost / 2);
                    return 1;
                }
            }
            else
            {
                    format(string, sizeof(string), "   %d estб off-line.", giveplayerid);
                    SendClientMessage(playerid, COLOR_GRAD1, string);
            }
        }
     return 1;
    }
Reply
#5

Vlw vo testar e edito aki depois, creditos seu la

Saka essas duas linhas :

SBizzInfo[2][sbTill] += txtcost / 2;
ExtortionSBiz(2, txtcost / 2);

Pra que serve elas ? Nao intendi direito, e deu erro nesse txtcost aee, mais apaguei elas, tiro o erro, mais queria intender elas ..
Reply
#6

Quote:
Originally Posted by Xpectro
View Post
Vlw vo testar e edito aki depois, creditos seu la

Saka essas duas linhas :

SBizzInfo[2][sbTill] += txtcost / 2;
ExtortionSBiz(2, txtcost / 2);

Pra que serve elas ? Nao intendi direito, e deu erro nesse txtcost aee, mais apaguei elas, tiro o erro, mais queria intender elas ..
Nгo servem pra nada nesse comando, elas estгo envolvidas em algo relacionado ao responsбvel pela extorзгo das empresas do gamemode, ou seja, essas linhas estгo descontextualizadas.
Reply
#7

ahh, saquei, eu apaguei elas .. Vlws ai mano, me ajudo em um monte de topico jб . Vlws msm
Reply
#8

Tire mas dъvidas no mesmo tуpico.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)