[Ajuda] Conflito de comando com FS
#1

Como posso resolver isso ?

Quando o jogador compra um veiculo da Concessionaria e apуs vende-lo o veiculo ele ainda continua constando do mesmo, porйm o arquino nгo consta na pasta da Concessionaria.
Assim ficando como se outro jogador comprasse um veiculo
ou atй mesmo um admin, o mesmo consta com o Nome do ultimo jogador que vendeu seu carro da Concessionaria.


Serб que tenha alguma soluзгo ?

(Ex: Se eu uso o /Cv, apуs criar qualquer veiculo ele consta com o Nome do Ultimo do jogador que vendeu o veiculo da Concessionaria assim
impossibilitando do Admin usar o veiculo ou outros jogadores com a sua compra do novo veiculo!)


(Print de quando o Dono entra em seu veiculo!)
https://i.imgur.com/AozUSw3.jpg

(Print de quando o jogador vende o veiculo, e outro ADM cria um veiculo qualquer e ele consta com o veiculo da concessionaria, sendo que o mesmo nao existia mais!)
https://i.imgur.com/uuyoKIE.jpg

Cуdigo do /Cv

PHP код:
if(strcmp(cmd"/cv"true) == 0){
    if(
pAdmin[playerid] == || pAdmin[playerid] == || pAdmin[playerid] == || pAdmin[playerid] == || pAdmin[playerid] == || IsPlayerAdmin(playerid)) {
    if(
IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid,Vermelho"| ERRO | Vocк jб estб em um veiculo");
    new 
plid;
    new 
Float:X,Float:Y,Float:Z,Float:Angle;
    
tmp strtok(cmdtextidx);
    if(!
strlen(tmp)) {
    
SendClientMessage(playeridVermelho"| ERRO | Digite: /Cv [id-do-caro]");
    return 
1;
    }
    
plid strval(tmp);
    if(
plid == 435 || plid == 449 || plid == 450 || plid == 464 || plid == 465 || plid == 501 || plid == 537 || plid == 538 || plid == 564 || plid == 569 || plid == 570
    
|| plid == 584 || plid == 590 || plid == 591 || plid == 594 || plid == 606 || plid == 607 || plid == 608 || plid == 610 || plid == 611 || plid == 441) {
    
SendClientMessage(playeridVermelho"| ERRO | Veiculo Proibido!");
    return 
1;
    }
    if(
IsPlayerConnected(playerid)) {
    if(
plid >= 400 && plid <= 611) {
    
GetPlayerPos(playerid,X,Y,Z);
    
GetPlayerFacingAngle(playerid,Angle);
    
carroadmin[playerid] = CreateVehicle(plidXYZAngle, -1, -1120000);
     
SetVehicleNumberPlate(carroadmin[playerid], "Admin");
    
PutPlayerInVehicle(playerid,carroadmin[playerid],0);
    if(
GetPlayerInterior(playerid))
    
LinkVehicleToInterior(carroadmin[playerid],GetPlayerInterior(playerid));
    
SetVehicleVirtualWorld(carroadmin[playerid],GetPlayerVirtualWorld(playerid));
    
format(stringsizeof(string), "Vocк criou o veнculo de ID:{FF0000} %d"plid);
    
SendClientMessage(playeridocdstring);
    
cVehicle[playerid] = true;
    }
     else {
    
SendClientMessage(playeridVermelho"| ERRO | Veiculo invбlido | IDs = 400-611");
    return 
1;
    }
    }
    }
    } 
(Parte do Cуdigo do FS do JFS que faz a verificaзгo)
PHP код:
if(newstate == PLAYER_STATE_DRIVER){
    for(new 
carroJFS sizeof(JFSCarros); carro != JFScarro++){
    if(
JFSID[carro] == GetPlayerVehicleID(playerid) && strcmp(PlayerN(playerid), JFSCarros[carro][JFSDono], true)){
    
format(Celulas1sizeof(Celulas1), "~~>{FFFFFF} Esse veiculo pertкnce ao Jogador(a) {2AC741}%s{FFFFFF}"JFSCarros[carro][JFSDono]);
    
SendClientMessage(playerid0x2AC741FFCelulas1);
    
SendClientMessage(playeridAmarelo1"| AVISO | Vocк tento/roubar esse veiculo que nгo lhe pertкnce e foi adicionado estrelas de Procurado!");
    
SetPlayerWantedLevel(playerid6);
    
//RemovePlayerFromVehicle(playerid);
    
}
    if(
JFSID[carro] == GetPlayerVehicleID(playerid) && !strcmp(PlayerN(playerid), JFSCarros[carro][JFSDono], true)){
    
SendClientMessage(playerid0x2AC741FF"~~> {FFFFFF}Seja Bem Vindo(a) ao seu Veiculo Concessionбria! Use: /MenuVeiculo");
    }
    }
    } 
(Cуdigo da parte que vende o veiculo da conce)
PHP код:
    if(dialogid == 4217)
      {
            if(
response)
            {
                {
                
format(Celulas1sizeof(Celulas1), PastaConcessionariaPlayerN(playerid));
                   
DOF2_RemoveFile(Celulas1);
                  
DOF2_SaveFile();
                  
DestroyVehicle(JFSID[playerid]);
                  
CarroJFS[playerid] = 0;
                  
RemovePlayerFromVehicle(playerid);
                  
format(Celulas1sizeof(Celulas1), "| INFO | Vocк Vendeu seu veiculo e recebeu {2AC741}$40.000{FFFFFF} de volta!"GranaVenderCarro);
                  
SendClientMessage(playerid, -1Celulas1);
                
GivePlayerGrana(playeridGranaVenderCarro);
                }
            }
              return 
true;
      } 
Reply
#2

Bom nгo sei pq do arco iris mas ok.

DestroyVehicle(JFSID[playerid]);

Afinal isso й uma variбvel player ou vehicle?

Vocк estб fazendo um loop na variбvel player?
baseado na quantidade de veiculo? JFSID[carro]...

Coloque a variбvel que armazena o ID do veiculo do player no DestroyVehicle.
Reply
#3

Quote:
Originally Posted by Felipealves
Посмотреть сообщение
Afinal isso й uma variбvel player ou vehicle?
Ambas as parte, quando quero pegar para o player, uso a Playerid e quando й para carro й usada a [carro]!

Quote:
Originally Posted by Felipealves
Посмотреть сообщение
Coloque a variбvel que armazena o ID do veiculo do player no DestroyVehicle.
Й exatamente essa que estб amigo, mais nгo estб dando certo, o veiculo continua vindo no nome do ultimo jogador que hб vendeu/deslogo do server.
Reply
#4

Nгo tem dessa de usar Uma variбvel que foi feita para players e usar ela para veiculo sem nexo.

Adapte ao seu FS
PHP код:
    new JFSID[MAX_VEHICLES], PlayerVehicle[MAX_PLAYERS];
    
/*
        
        Quando player comprar o veiculo pa: PlayerVehicle[playerid] = JFSID[conce];
        Quando criar o veiculo na conce pa: JFSID[conce] = CreateVehicle(...);
    */
    
if(newstate == PLAYER_STATE_DRIVER){ 
        for(new 
carro 0carro MAX_VEHICLEScarro++){ 
            if(
JFSID[carro] != PlayerVehicle[playerid] && strcmp(PlayerN(playerid), JFSCarros[carro][JFSDono], false)){ 
                
format(Celulas1sizeof(Celulas1), "~~>{FFFFFF} Esse veiculo pertкnce ao Jogador(a) {2AC741}%s{FFFFFF}"JFSCarros[carro][JFSDono]); 
                
SendClientMessage(playerid0x2AC741FFCelulas1); 
                
SendClientMessage(playeridAmarelo1"| AVISO | Vocк tento/roubar esse veiculo que nгo lhe pertкnce e foi adicionado estrelas de Procurado!"); 
                
SetPlayerWantedLevel(playerid6); 
            } 
            if(
JFSID[carro] == PlayerVehicle[playerid] && !strcmp(PlayerN(playerid), JFSCarros[carro][JFSDono], false)){ 
                
SendClientMessage(playerid0x2AC741FF"~~> {FFFFFF}Seja Bem Vindo(a) ao seu Veiculo Concessionбria! Use: /MenuVeiculo"); 
            } 
        } 
    } 
    if(
dialogid == 4217
    {
        if(
response
        {
            {
                
format(Celulas1sizeof(Celulas1), PastaConcessionariaPlayerN(playerid)); 
                
DOF2_RemoveFile(Celulas1); 
                
DOF2_SaveFile();
                
DestroyVehicle(PlayerVehicle[playerid]);
                
format(JFSCarros[PlayerVehicle[playerid]][JFSDono], sizeof(JFSCarros[PlayerVehicle[playerid]][JFSDono]), "Nenhum");
                
JFSID[PlayerVehicle[playerid]] = 0;
                
CarroJFS[playerid] = 0
                
RemovePlayerFromVehicle(playerid);
                
format(Celulas1sizeof(Celulas1), "| INFO | Vocк Vendeu seu veiculo e recebeu {2AC741}$40.000{FFFFFF} de volta!"GranaVenderCarro); 
                
SendClientMessage(playerid, -1Celulas1); 
                
GivePlayerGrana(playeridGranaVenderCarro); 
            } 
        } 
        return 
true
    } 
Reply
#5

Nгo deu muito certo nгo!

Mais o FS й esse aqui: https://pastebin.com/GLYxxKC1
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)