[Ajuda] Tem como passar parametro ao forзar comando?
#1

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)
Reply
#2

cmd_kill(playerid,params);
Reply
#3

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;
}
Reply
#4

Tenta strval(targetplayer)
Reply
#5

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

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...
Reply
#7

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;

Reply
#8

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); 
Reply
#9

Use isto...

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

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
Reply


Forum Jump:


Users browsing this thread: 4 Guest(s)