[Ajuda] Dъvida comando de ID veнculo
#1

E aн galera.. Muito bom dia!

Estou com uma pequena dъvida num pequeno comando que fiz para meu servidor.
A funзгo dele й mostrar o ID do veнculo pesquisado..

Ex1: /idcarro infer
Ex2: /idcarro shamal

Ao digitar uma parte do nome do veнculo ou o nome inteiro ( tanto faz ), apareceria o ID do veнculo do lado.
O Comando Funciona perfeitamente, porйm, quando o jogador escreve o nome errado (ex: /idcarro infernos) ele retorna como comando desconhecido..
Alguйm poderia me ajudar a por uma mensagem tipo isso aqui: "Veнculo nгo encontrado, tente novamente" por exemplo.. Nгo estou conseguindo, acredito que seja algo muito simples, mas me deu um branco..

Agradeзo desde ja, um abraзo a todos.

Pequena Ilustraзгo:



Code:

PHP код:
CMD:idcarro(playeridparams[])
{
    new 
carid strval(params);
    new 
string[256];
    new 
veiculo[15];
    if(
sscanf(params"s[15]"veiculo)) return scm(playerid, -1"{FF0000}Uso correto: /idcarro [Parte do nome do veнculo]");
    
carid GetVehicleModelIDFromName(veiculo);
    
format(stringsizeof(string), "{FFF000}Veнculo pesquisado: {FFFFFF}%s {FFF000}e seu ID й: {FFFFFF}%d"NomeVeiculo[carid-400], carid);
    
scm(playerid, -1string);
    
printf("\n\tJogador %s [ID:%d] pesquisou pelo veнculo %s.\n"PnameplayeridNomeVeiculo[carid-400]);
    return 
1;

Reply
#2

Se nгo me engano, essa funзгo sу retorna o ID(modelo) quando o nome й digitado corretamente se nгo irб retornar -1.
Reply
#3

PHP код:
if(carid == -1)
{
    if(
carid 400 || carid 611)
        return 
scm(playerid, -1"Veнculo invбlido.");

Reply
#4

Eu acho que ocorre um erro a executar a funзгo GetVehicleModelIDFromName quando alguйm digita um nome incorreto, ao em vez de retornar por exemplo -1. Posta aqui a essa funзгo para nуs vermos. Tambйm recomendo a utilizaзгo do plugin CrashDetect, muito ъtil para identificar erros como por exemplo o famoso "SERVER: Unknown error".
Reply
#5

Lуs, tambйm jб tentei a sua forma, mas felizmente nгo funcionou..
O ID do veнculo estб correto, o problema й quando o jogador digita o nome do veiculo errado..

Ex: Veнculo Hydra >> /idcarro hidra

Tentei outros dois meios apartir do que vocк me mostrou, mas tambйm nгo funcionou.
Da mesma forma, muito obrigado pela resposta.


Quote:
Originally Posted by Lуs
Посмотреть сообщение
PHP код:
if(carid == -1)
{
    if(
carid 400 || carid 611)
        return 
scm(playerid, -1"Veнculo invбlido.");

Reply
#6

Quote:
Originally Posted by Nixtren
Посмотреть сообщение
Eu acho que ocorre um erro a executar a funзгo GetVehicleModelIDFromName quando alguйm digita um nome incorreto, ao em vez de retornar por exemplo -1. Posta aqui a essa funзгo para nуs vermos. Tambйm recomendo a utilizaзгo do plugin CrashDetect, muito ъtil para identificar erros como por exemplo o famoso "SERVER: Unknown error".
Aqui estб:

PHP код:
stock GetVehicleModelIDFromName(VeiculoN[])
{
    for(new 
0211i++)
    {
        if(
strfind(NomeVeiculo[i], VeiculoNtrue) != -1)
        return 
400;
    }
    return -
1;

Muito obrigado pela dica, irei utiliza-la sim! (CrashDetect)
Reply
#7

Quote:
Originally Posted by Stean
Посмотреть сообщение
Aqui estб:

PHP код:
stock GetVehicleModelIDFromName(VeiculoN[])
{
    for(new 
0211i++)
    {
        if(
strfind(NomeVeiculo[i], VeiculoNtrue) != -1)
        return 
400;
    }
    return -
1;

Muito obrigado pela dica, irei utiliza-la sim! (CrashDetect)
Agora o CrashDetect dб jeito neste caso. Coloca ele em execuзгo e diz se aparece algum erro na consola quando vocк faz esse comando com o nome de veнculo incorreto. Eu aposto que vai dar "Array out of bounds " (mas isso sou eu que aposto, nгo tenho certeza) xD
Reply
#8

Quote:
Originally Posted by Nixtren
Посмотреть сообщение
Agora o CrashDetect dб jeito neste caso. Coloca ele em execuзгo e diz se aparece algum erro na consola quando vocк faz esse comando com o nome de veнculo incorreto. Eu aposto que vai dar "Array out of bounds " (mas isso sou eu que aposto, nгo tenho certeza) xD
Aconteceu o seguinte:

Ao digitar o comando com o nome correto, ficou tudo certo..
Quando digitei "Inferns", nome errado, aн jб pegou..




Mesmo assim, apesar de enteder o fato, nгo sei o que fazer para arrumar..
Reply
#9

Quote:
Originally Posted by Stean
Посмотреть сообщение
Aconteceu o seguinte:

Ao digitar o comando com o nome correto, ficou tudo certo..
Quando digitei "Inferns", nome errado, aн jб pegou..




Mesmo assim, apesar de enteder o fato, nгo sei o que fazer para arrumar..
Vamos primeiro arranjar o seu CrashDetect para dar algumas informaзхes mais ъteis, e a seguir eu explico o resto.
Vб na sua pasta "pawno" e crie um ficheiro chamado "pawn.cfg" com os seguintes conteъdos:
Код:
-r -O0 -d3
Compile, (re)inicie o server e faзa novamente o comando que causa o erro. De seguida, posta aqui a print com as novas informaзхes do CrashDetect
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)