[Ajuda] Veнculos
#1

Boa tarde,
Venho por meio desse tуpico pedir ajuda a vocкs.

Eu criei alguns veнculos no GameMode para uma determinada profissгo, e o player sу poderб usar um comando que criei se ele estiver em um veнculo do spawn, segue abaixo o cуdigo do comando.


Veнculos:
PHP код:
        new Roadtrain[8];    
        
Roadtrain[0] = CreateVehicle(5152784.0481, -2494.434314.669690.115323160); // Roadtrain 0
    
Roadtrain[1] = CreateVehicle(5152745.1631, -2441.422614.6618,270.279823160); // Roadtrain 1
    
Roadtrain[2] = CreateVehicle(5152780.9077, -2437.469014.640391.376923160); // Roadtrain 2
    
Roadtrain[3] = CreateVehicle(5152758.5801, -2379.006614.6385176.898523160); // Roadtrain 3
    
Roadtrain[4] = CreateVehicle(5152785.4810, -2456.073514.639690.055123160); // Roadtrain 4
    
Roadtrain[5] = CreateVehicle(5152731.4907, -2491.163614.671690.967523160); // Roadtrain 5
    
Roadtrain[6] = CreateVehicle(5152753.2163, -2474.919714.6500180.144023160); // Roadtrain 6
    
Roadtrain[7] = CreateVehicle(5152779.9695, -2475.187314.662789.478323160); // Roadtrain 7 
Comando:
PHP код:
CMD:carregar(playerid){
    if(
Profissao[playerid] != Caminhoneiro) return SendClientMessage(playeridERRO"| ERRO | Vocк nгo tem permissгo!");
    if(!
IsPlayerInVehicle(playeridRoadtrain[0] || Roadtrain[1] || Roadtrain[2] || Roadtrain[3] || Roadtrain[4] || Roadtrain[5] || Roadtrain[6] || Roadtrain[7])) return SendClientMessage(playeridERRO"| ERRO | Vocк nгo estб em um Roadtrain: 515");
    if(
CarregadoCaminhoneiro[playerid] == true) return SendClientMessage(playeridERRO"| ERRO | Seu caminhгo jб estб carregado");
    if(!
IsPlayerInRangeOfPoint(playerid150.02779.9695, -2475.187314.6627)) return SendClientMessage(playeridERRO"| ERRO | Vocк nгo esta na бrea de carga");
    
CarregadoCaminhoneiro[playerid] = true;
    
SendClientMessage(playeridclosed"| INFO | Vocк carregou seu caminhгo, descarregue-o para receber o dinheiro");
    return 
1;

Reply
#2

pawn Код:
if(!IsPlayerInVehicle(playerid, Roadtrain[0] || Roadtrain[1]
Conserta essa parte em diante. Vocк deve por a funзгo completa em cada veнculo a ser verificado. Pode usar um loop!
Reply
#3

Como seria esse loop amigo, pode me ajudar?

Eu fiz assim, mas certeza que estб errado:

PHP код:
    for(new xMAX_VEHICLESx++){
    if(!
IsPlayerInVehicle(playeridRoadtrain[x])) return SendClientMessage(playeridERRO"| ERRO | Vocк nгo estб em um Roadtrain: 515");
    } 
e assim tb:

PHP код:
    for(new x7x++){
    if(!
IsPlayerInVehicle(playeridRoadtrain[x])) return SendClientMessage(playeridERRO"| ERRO | Vocк nгo estб em um Roadtrain: 515");
    } 
Reply
#4

Uй, o loop iria rodar atй percorrer a quantidade de veнculos que vocк definiu lб em cima...

Olha isto:
http://forum.sa-mp.com/showpost.php?...17&postcount=2
Mais eficaz.
Reply
#5

Acho que vocк nгo entendeu o que quero fazer.

Quero que o comando /Carregar sу funcione se o player estiver dentro do Roadtrain que eu criei no GameMode
Reply
#6

Eu entendi. Para isto, vocк precisa fazer a verificaзгo certo? Se quiser criar os veнculos do jeito que vocк fez ai, pode usar o loop e limitar ele para o nъmero de veнculos da tal profissгo e fazer a verificaзгo.

O link que passei foi apenas uma demonstraзгo de como vocк pode criar um sistema melhor e mais fбcil de adicionar veнculos para qualquer coisa e limitб-los a determinados jogadores de forma mais eficiente. Um outro mйtodo.

pawn Код:
for(new x; x < 7; x++){
Isso ai vai fazer o loop parar no veнculo 6, portanto, o sйtimo veнculo nгo serб verificado. Altere para 8 ou adiciona uma condicional de igual a 7 tambйm... (<=7 ou < 8 ).
Reply
#7

Jб testei assim e nгo funcionou
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)