[Ajuda] nos comandos com parametros
#1

Ele spawna o meu id inves do id selecionado, mesmo eu dando /respawn 1 ele spawna eu

PHP код:
CMD:respawn(playeridparams[]) {
   new 
id;
   if(
sscanf(params"u"id)) return SendClientMessage(playerid, -1,"Use: /respawn [id]");
   if(!
IsPlayerConnected(id)) return SendClientMessage(playerid, -1"ERRO: Este jogador nгo estб conectado.");
   
SpawnPlayer(id);
   return 
1;

Reply
#2

tente assim

pawn Код:
CMD:respawn(playerid, params[]) {
   new id;
   if(sscanf(params, "d", id)) return SendClientMessage(playerid, -1,"Use: /respawn [id]");
   if(!IsPlayerConnected(id)) return SendClientMessage(playerid, -1, "ERRO: Este jogador nгo estб conectado.");
   SpawnPlayer(id);
   return 1;
}
to no celular nao tive como testar
Reply
#3

Quote:
Originally Posted by ipsLuan
Посмотреть сообщение
tente assim

pawn Код:
CMD:respawn(playerid, params[]) {
   new id;
   if(sscanf(params, "d", id)) return SendClientMessage(playerid, -1,"Use: /respawn [id]");
   if(!IsPlayerConnected(id)) return SendClientMessage(playerid, -1, "ERRO: Este jogador nгo estб conectado.");
   SpawnPlayer(id);
   return 1;
}
to no celular nao tive como testar
Eu testei assim e funcionou obrigado, porйm eu criei um com motivo agora para aparecer para os players porйm eu coloquei no sscanf "ds" e se a pessoa spawnar com nъmero spawna eu mesmo se eu spawnar com letra funciona o id correspondente como proceder
Reply
#4

Para isso, й necessбrio entender os processadores U e D do sscanf.

U serve para ler um usuбrio do jogo, seja pelo seu nome, parte dele ou atй mesmo seu ID.

Enquanto D lerб apenas um nъmero inteiro qualquer.

Recomendo que sempre use U para jogadores.

Sobre o placeholder S para strings, ele precisa estar acompanhado do tamanho. Por exemplo:

PHP код:
new stringostosa[10];
if(
sscanf(params,"s[10]",stringostosa))
    return 
SendClientMessage(playerid,-1,"/comando STRING"); 
O post do ipsLuan й apenas um desvio e nгo uma soluзгo.

Precisamos ir mais a fundo para descobrir qual a causa do problema. Qual й o seu nick dentro do jogo?

Teste a prioridade do sscanf quanto а um ID ou parte do nome, usando um nick de jogador por exemplo 1arcen4 e usando algum comando com paramкtro 1. Veja se ele escolhe este jogador, ou o ID 1.

Deste modo vocк vai poder saber onde e como atuar. Volte aqui com os resultados
Reply
#5

no caso eu fiz assim arakuta

PHP код:
 CMD:respawn(playeridparams[]) {
   new 
string[128], idmotivo;
   if(
sscanf(params"us"idmotivo)) return SendClientMessage(playerid, -1,"Use: /respawn [id][motivo]");
   if(!
IsPlayerConnected(id)) return SendClientMessage(playerid, -1"ERRO: Este jogador nгo estб conectado.");
   
format(stringsizeof(string),"O %s Respawnou: %s Motivo: %s"GetNome(playerid), GetNome(id),motivo);
   
SendClientMessageToAll(-1string);
   
SpawnPlayer(id);
   return 
1;

e se eu spawnar o player pelo motivo com letras ele funciona porйm com nъmeros ele spawna o proprio id
Reply
#6

Faltou definir o tamanho do motivo

PHP код:
"us[40]" 
PHP код:
new motivo[40]; 
https://sampforum.blast.hk/showthread.php?tid=277842
https://sampforum.blast.hk/showthread.php?tid=235924
Reply
#7

Quote:
Originally Posted by ipsLuan
Посмотреть сообщение
tente assim

pawn Код:
CMD:respawn(playerid, params[]) {
   new id;
   if(sscanf(params, "d", id)) return SendClientMessage(playerid, -1,"Use: /respawn [id]");
   if(!IsPlayerConnected(id)) return SendClientMessage(playerid, -1, "ERRO: Este jogador nгo estб conectado.");
   SpawnPlayer(id);
   return 1;
}
to no celular nao tive como testar
Membro da ipsTeam dando esse tipo de rateada? Tem certeza que vocк й um membro?
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)