SA-MP Forums Archive
[Ajuda] Tem como passar parametro ao forзar comando? - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] Tem como passar parametro ao forзar comando? (/showthread.php?tid=623773)



Tem como passar parametro ao forзar comando? - maikons - 05.12.2016

Tem como passar parametro ao forзar comando?
Tipo quando eu forзo comando, sу consigo pra playerid

Exemplo:
Код:
cmd_kill(playerid);
Код:
CMD:kill(playerid) {
	SetPlayerHealth(playerid, 0);
	return 1;
}
Eu queria fazer isso aqui:
Код:
new targetplayer = GetPlayerTargetPlayer(playerid);
cmd_cuff(playerid, targetplayer);
Код:
CMD:cuff(playerid, params[]) {
	if(org[playerid] == 5) return SendClientMessage(playerid, COLOR_RED, "MEDICs can not use this command.");
	if(morto[playerid] == true) return SendClientMessage(playerid, COLOR_RED, "You can not use this command killed.");
	if(!IsACop(playerid)) return SendClientMessage(playerid, -1, "You aren't a COP");
	new id;
	if(sscanf(params,"u", id)) return SendClientMessage(playerid, -1, "Use: /cuff [id]");
	if(id != INVALID_PLAYER_ID) {
		if(GetPlayerSpecialAction(id) != SPECIAL_ACTION_HANDSUP && morto[id] != true) return SendClientMessage(playerid, COLOR_GRAD2, "The player need be handsup,imo or dead!");
		if(PlayerCuffed[id] > 0) return	SendClientMessage(playerid, COLOR_GREY, "This player is already cuffed!");
		if (ProxDetectorS(8.0, playerid, id)) { Cuffing(playerid, id); }
	}
	return 1;
}
Mas ta dando
Код:
error 035: argument type mismatch (argument 2)



Re: Tem como passar parametro ao forзar comando? - ipsLuan - 05.12.2016

cmd_kill(playerid,params);


Re: Tem como passar parametro ao forзar comando? - maikons - 05.12.2016

Quote:
Originally Posted by ipsLuan
Посмотреть сообщение
cmd_kill(playerid,params);
Entгo o /kill eu botei de exemplo, pq sу funciona comando sem parametro
Quando eu tento fazer um com parametro como quero fazer com o /cuff da erro, como eu botei lб em cima

Код:
error 035: argument type mismatch (argument 2)
Код:
new targetplayer = GetPlayerTargetPlayer(playerid);
cmd_cuff(playerid, targetplayer);
Код:
CMD:cuff(playerid, params[]) {
	if(org[playerid] == 5) return SendClientMessage(playerid, COLOR_RED, "MEDICs can not use this command.");
	if(morto[playerid] == true) return SendClientMessage(playerid, COLOR_RED, "You can not use this command killed.");
	if(!IsACop(playerid)) return SendClientMessage(playerid, -1, "You aren't a COP");
	new id;
	if(sscanf(params,"u", id)) return SendClientMessage(playerid, -1, "Use: /cuff [id]");
	if(id != INVALID_PLAYER_ID) {
		if(GetPlayerSpecialAction(id) != SPECIAL_ACTION_HANDSUP && morto[id] != true) return SendClientMessage(playerid, COLOR_GRAD2, "The player need be handsup,imo or dead!");
		if(PlayerCuffed[id] > 0) return	SendClientMessage(playerid, COLOR_GREY, "This player is already cuffed!");
		if (ProxDetectorS(8.0, playerid, id)) { Cuffing(playerid, id); }
	}
	return 1;
}



Re: Tem como passar parametro ao forзar comando? - PT - 05.12.2016

Tenta strval(targetplayer)


Re: Tem como passar parametro ao forзar comando? - pedrotvr - 06.12.2016

Quote:
Originally Posted by PT
Посмотреть сообщение
Tenta strval(targetplayer)
Me desculpe, mas como assim?


Re: Tem como passar parametro ao forзar comando? - PT - 10.12.2016

Bem porque tu mandou msg eu respondo aqui:

tenta das seguintes formas:


PHP код:
cmd_cuff(playeridstrval(targetplayer)); 
ou

PHP код:
new cuffstring[10];
format(cuffstringsizeof(cuffstring), "/cuff %i"GetPlayerTargetPlayer(playerid));
CallLocalFunction("OnPlayerCommandText","is"playeridcuffstring); 
Se nao der me explique melhor para que tu precisa chamar o cmd assim...


Re: Tem como passar parametro ao forзar comando? - didimk157 - 10.12.2016

PHP код:
 dcmd_kill(playeridparams[])  //
{
    
#pragma unused params

    
if(Player[playerid][InDM] == true)
        return 
SendClientMessage(playeridCOR_ERRO"ERRO: Vocк nгo pode fazer isto agora!");

    if(!
VerificarRival(playerid))
        return 
SendClientMessage(playeridCOR_ERRO"ERRO: Vocк nгo pode usar este comando com alguйm que nгo й de sua facзгo prуximo.");

    if(
Player[playerid][pLogged] == false)
        return 
SendClientMessage(playeridCOR_ERRO"ERRO: Vocк nгo estб logado para utilizar este comando!");

    if(
Player[playerid][InHospital] == true)
        return 
SendClientMessage(playeridCOR_ERRO"ERRO: Vocк nгo pode usar este comando agora!");

    
GetPlayerPos(playeridPlayer[playerid][LastPos][0], Player[playerid][LastPos][1], Player[playerid][LastPos][2]);
    
SetTimerEx("AutoKill"5000false"i"playerid);
    
SendClientMessage(playeridCOR_YELLOW,"Aguarde sem se mover.");
    return 
1;




Re: Tem como passar parametro ao forзar comando? - zSuYaNw - 10.12.2016

Quote:
Originally Posted by PT
Посмотреть сообщение
Bem porque tu mandou msg eu respondo aqui:

tenta das seguintes formas:


PHP код:
cmd_cuff(playeridstrval(targetplayer)); 
ou

PHP код:
,
new 
cuffstring[10];
format(cuffstringsizeof(cuffstring), "/cuff %i"GetPlayerTargetPlayer(playerid));
CallLocalFunction("OnPlayerCommandText","is"playeridcuffstring); 
Se nao der me explique melhor para que tu precisa chamar o cmd assim...
Quase isto..


PHP код:
new cuffstring[10];
format(cuffstringsizeof(cuffstring), "%i"GetPlayerTargetPlayer(playerid));
cmd_cuff(playeridcuffstring); 



Re: Tem como passar parametro ao forзar comando? - JeffSantos2 - 15.12.2016

Use isto...

new string[6];
valstr(string, GetPlayerTargetPlayer(playerid));
return cmd_cuff(playerid, string);


Re: Tem como passar parametro ao forзar comando? - PT - 15.12.2016

Quote:
Originally Posted by JeffSantos2
Посмотреть сообщение
Use isto...

new string[6];
valstr(string, GetPlayerTargetPlayer(playerid));
return cmd_cuff(playerid, string);

Verdade e o mais correto nem lembrei dessa funзгo!

+rep