Dъvida. -
Ley - 06.10.2013
Boa noite.
Estou com uma pequena dъvida, e gostaria de compartilha-la para ver se acho soluзгo para a mesma.
Tenho um comando, que respawna os veнculos livres em todo o servidor, porйm, eu queria que uma determinada ID nгo fosse respawnada.
Exemplo:
PHP код:
CMD:respawn(playerid, vehicleid)
{
for(new i; i < MAX_VEHICLES; i++)
{
if(GetVehicleModel(i) != 522 && GetVehicleModel(i) != 403) // Dъvida
{
SetVehicleToRespawn(i);
}
}
return 1;
}
Com essa linha:
PHP код:
if(GetVehicleModel(i) != 522 && GetVehicleModel(i) != 403)
Os veнculos com ID 522 e 403 nгo serгo respawnados? Ou preciso dar um retorno para impedir que prossiga?
Re: Dъvida. -
WLSF - 06.10.2013
Se vocк testou e funcionou, entгo estб certo, se vocк estб com dъvida a respeito do funcionamento linha a linha, podia fazer debugs, se vocк nгo entendeu o cуdigo, devia estudar mais ao invйs de copiar dos outros.
O loop roda todos os ID's de veнculos, compara o Modelo do veнculo X com 522, depois compara com 403, se ambos derem true, ele entra na condiзгo e spawna, caso dк false(os modelos sejam iguais aos ids 522 e/ou 403), ele sai da execuзгo e passa pro prуximo valor do laзo.
Poderia ter feito assim tambйm:
pawn Код:
if (GetVehicleModel(x) == 522) continue;
if (GetVehicleModel(x) == 403) continue;
//Cуdigo de respawn
Se vocк der um return, a funзгo toda finaliza a execuзгo, й possнvel que com isso alguns veнculos que deveriam ser spawnados, nгo sejam.
No exemplo que citei, ele vai verificar a igualdade, se der verdadeira, ele passa direto para o prуximo valor do laзo.
Re: Dъvida. -
Ley - 06.10.2013
Quote:
Originally Posted by Willian_Luigi
Se vocк testou e funcionou, entгo estб certo, se vocк estб com dъvida a respeito do funcionamento linha a linha, podia fazer debugs, se vocк nгo entendeu o cуdigo, devia estudar mais ao invйs de copiar dos outros.
O loop roda todos os ID's de veнculos, compara o Modelo do veнculo X com 522, depois compara com 403, se ambos derem true, ele entra na condiзгo e spawna, caso dк false(os modelos sejam iguais aos ids 522 e/ou 403), ele sai da execuзгo e passa pro prуximo valor do laзo.
Poderia ter feito assim tambйm:
pawn Код:
if (GetVehicleModel(x) == 522) continue; if (GetVehicleModel(x) == 403) continue;
//Cуdigo de respawn
|
Acho que entendi.
...
Quote:
Originally Posted by Willian_Luigi
...Devia estudar mais ao invйs de copiar dos outros.
|
Copiar? ...
Re: Dъvida. -
PT - 06.10.2013
Ley
essa linha n esta correta
PHP код:
if(GetVehicleModel(i) != 522 && GetVehicleModel(i) != 403)
deveria ser
PHP код:
if(GetVehicleModel(i) != 522 || GetVehicleModel(i) != 403)
porque?
por ae vc ta obrigando a que 1 coisa tenha esses 2 ids
algo diferente de 522 E (&&) diferente de 403
mesmo assim o metodo do will e mais correto
Re: Dъvida. -
WLSF - 06.10.2013
Quote:
Originally Posted by Ley
Acho que entendi.
...
Copiar? ...
|
Vocк disse que entendeu, por que a pergunta entгo ?
Re: Dъvida. -
Juniiro3 - 06.10.2013
Ley, hб uma diferenзa entre IDs e MODELOS. GetVehicleModel retorna o Modelo, por exemplo, 400 = Landstalker. Nessa verificaзгo, todos os Linerunners e todas as NRG500 NГO serгo respawnados.
A prуpria variбvel й o ID do veнculo, basta comparar o i com o ID que vocк quer que nгo seja respawnado.
Re: Dъvida. -
Ley - 06.10.2013
Quote:
Originally Posted by Juniiro3
Ley, hб uma diferenзa entre IDs e MODELOS. GetVehicleModel retorna o Modelo, por exemplo, 400 = Landstalker. Nessa verificaзгo, todos os Linerunners e todas as NRG500 NГO serгo respawnados.
A prуpria variбvel й o ID do veнculo, basta comparar o i com o ID que vocк quer que nгo seja respawnado.
|
Certo, obrigado
Quote:
Originally Posted by Willian_Luigi
Vocк disse que entendeu, por que a pergunta entгo ?
|
Entendi a explicaзгo, e nгo o seu desabafo indecente, onde vocк estб digitando obviamente o que nгo sabe.
Quote:
Originally Posted by PT
Ley
essa linha n esta correta
PHP код:
if(GetVehicleModel(i) != 522 && GetVehicleModel(i) != 403)
deveria ser
PHP код:
if(GetVehicleModel(i) != 522 || GetVehicleModel(i) != 403)
porque?
por ae vc ta obrigando a que 1 coisa tenha esses 2 ids
algo diferente de 522 E (&&) diferente de 403
mesmo assim o metodo do will e mais correto
|
Obrigado!
Re: Dъvida. -
WLSF - 06.10.2013
Quote:
Originally Posted by Ley
Entendi a explicaзгo, e nгo o seu desabafo indecente, onde vocк estб digitando obviamente o que nгo sabe.
|
Entгo vocк nгo entendeu, por isso que nгo tб conseguindo fazer nem algo simples como tal respawn de carros.
Eu citei 3 possibilidades, se a possibilidade da cуpia foi a que te mais doeu, faz sentido vocк estar com dъvidas, й cуpia.
Re: Dъvida. -
Ley - 06.10.2013
Quote:
Originally Posted by Willian_Luigi
Entгo vocк nгo entendeu, por isso que nгo tб conseguindo fazer nem algo simples como tal respawn de carros.
Eu citei 3 possibilidades, se a possibilidade da cуpia foi a que te mais doeu, faz sentido vocк estar com dъvidas, й cуpia. 
|
Se tem tanta certeza, vocк teria como comprovar para todos. Certo?
Re: Dъvida. -
WLSF - 06.10.2013
Quote:
Originally Posted by Ley
Se tem tanta certeza, vocк teria como comprovar para todos. Certo?
|
Eu nem disse que era, sу falei 3 possibilidades...
Mas й algo lуgico, ninguйm vem aqui com uma dъvida sem apresentar os problemas que esta dъvida apresentou...
Vocк nгo falou erros, nгo falou possibilidades, nгo falou nada que tenha acontecido durante a execuзгo do cуdigo.
Apenas disse que vocк queria saber se iria funcionar, por que vocк mesmo nгo a testou entгo ?
Outra, vocк se doeu com o fato de eu ter citado 'cуpia', e vocк nem parou pra tentar entender oque eu havia falado.
Supimpa !
Abraзos, boa sorte ai.