[Ajuda] Veнculo nгo carrega DOF2
#1

Olб pessoal, estou tentando criar um sistema de concessionaria com base em algumas GM que estou olhando e fiz isso:

PHP код:
enum vConceInfo
{
    
vModel,
    
vPreco,
    
vColorOne,
    
vColorTwo,
    
Float:vLocalx,
    
Float:vLocaly,
    
Float:vLocalz,
    
Float:vAngle,
    
vehicleconce,
}
new 
ConceInfo[3][vConceInfo];
static 
stock LoadCarrosConce()
{
    new 
file[100];
    new 
idx 0;
    while(
idx sizeof(ConceInfo))
    {
        
format(filesizeof file"Concessionaria/Carro_%d.ini"idx);
        if(
DOF2_FileExists(file))
        {
            
ConceInfo[idx][vModel] = DOF2_GetInt(file"Modelo");
            
ConceInfo[idx][vPreco] = DOF2_GetInt(file"Preco");
            
ConceInfo[idx][vColorOne] = DOF2_GetInt(file"Cor1");
            
ConceInfo[idx][vColorTwo] = DOF2_GetInt(file"Cor2");
            
ConceInfo[idx][vLocalx] = DOF2_GetFloat(file"CarroX");
            
ConceInfo[idx][vLocaly] = DOF2_GetFloat(file"CarroY");
            
ConceInfo[idx][vLocalz] = DOF2_GetFloat(file"CarroZ");
            
ConceInfo[idx][vAngle] = DOF2_GetFloat(file"CarroA");
            
ConceInfo[idx][vehicleconce] = AddStaticVehicleEx(ConceInfo[idx][vModel],
            
ConceInfo[idx][vLocalx], ConceInfo[idx][vLocaly], ConceInfo[idx][vLocalz],
            
ConceInfo[idx][vAngle], ConceInfo[idx][vColorOne], ConceInfo[idx][vColorTwo], -1);
            
SetVehicleVirtualWorld(ConceInfo[idx][vehicleconce], 0);
            
LinkVehicleToInterior(ConceInfo[idx][vehicleconce], 0);
        }
        
idx++;
    }
    return 
idx;

Criei 3 arquivos nessa pasta Concessionaria Carro_0, Carro_1 ... e assim vai, o problema й que o carro nгo aparece no jogo, parece que nгo estб sendo carregado, slб.

OBS: Coloquei o LoadCarrosConce() em OnGameModeInit
Reply
#2

manda o codigo que spawna o carro
Reply
#3

nгo precisa colocar new idx = 0; toda variavel seu valor comeзa em 0, e tbm tu tem que pegar o id do cara pq ali sу vai carregar as info do carro de id 0
Reply
#4

O cуdigo que spawna o carro й este que estб no cуdigo.
PHP код:
            ConceInfo[idx][vehicleconce] = AddStaticVehicleEx(ConceInfo[idx][vModel], 
            
ConceInfo[idx][vLocalx], ConceInfo[idx][vLocaly], ConceInfo[idx][vLocalz], 
            
ConceInfo[idx][vAngle], ConceInfo[idx][vColorOne], ConceInfo[idx][vColorTwo], -1); 
Tipo, eu quero que criei os veнculos com as informaзхes que coloquei no arquivo .ini
Mas como eu faзo para carregar as informaзхes dos outros carros?
Reply
#5

PHP код:
enum vConceInfo 

    
vModel
    
vPreco
    
vColorOne
    
vColorTwo
    
Float:vLocalx
    
Float:vLocaly
    
Float:vLocalz
    
Float:vAngle
    
vehicleconce

new 
ConceInfo[3][vConceInfo]; 
#define MAX_CONCE 100
stock LoadCarrosConce() 

    new 
file[100]; 
    for(new 
idx 0idx MAX_CONCEidx++)
    { 
        
format(filesizeof file"Concessionaria/Carro_%d.ini"idx); 
        if(
DOF2_FileExists(file)) 
        { 
            
ConceInfo[idx][vModel] = DOF2_GetInt(file"Modelo"); 
            
ConceInfo[idx][vPreco] = DOF2_GetInt(file"Preco"); 
            
ConceInfo[idx][vColorOne] = DOF2_GetInt(file"Cor1"); 
            
ConceInfo[idx][vColorTwo] = DOF2_GetInt(file"Cor2"); 
            
ConceInfo[idx][vLocalx] = DOF2_GetFloat(file"CarroX"); 
            
ConceInfo[idx][vLocaly] = DOF2_GetFloat(file"CarroY"); 
            
ConceInfo[idx][vLocalz] = DOF2_GetFloat(file"CarroZ"); 
            
ConceInfo[idx][vAngle] = DOF2_GetFloat(file"CarroA"); 
            
ConceInfo[idx][vehicleconce] = AddStaticVehicleEx(ConceInfo[idx][vModel], 
            
ConceInfo[idx][vLocalx], ConceInfo[idx][vLocaly], ConceInfo[idx][vLocalz], 
            
ConceInfo[idx][vAngle], ConceInfo[idx][vColorOne], ConceInfo[idx][vColorTwo], -1); 
            
SetVehicleVirtualWorld(ConceInfo[idx][vehicleconce], 0); 
            
LinkVehicleToInterior(ConceInfo[idx][vehicleconce], 0); 
        } 
    } 
    return 
1

Reply
#6

Continua sem aparecer os carros mano ;-;
Eu atй chequei as coordenadas deles, ta certinho.
Reply
#7

Olб!
Enfim acredito que o modo correto de ser criar um veiculo sem sem em OnGameModeInit seja CreateVehicle...
Tenha cuidado tambйm quanto as extenзхes do arquivo, certifique-se de que realmente sejam arquivos .ini ou altere o cуdigo para .txt
Faзa um teste e me diz se funcionou!
Para sabem mais...

AddStaticVehicleEX
CreateVehicle

PHP код:
#define MAX_CONCE 100
enum vConceInfo
{
    
vModel,
    
vPreco,
    
vColorOne,
    
vColorTwo,
    
Float:vLocalx,
    
Float:vLocaly,
    
Float:vLocalz,
    
Float:vAngle,
    
vehicleconce
}
new 
ConceInfo[MAX_CONCE][vConceInfo];
stock LoadCarrosConce()
{
    new 
file[128];
    for(new 
idx 0idx MAX_CONCEidx++)
    {
        
format(filesizeof(file), "Concessionaria/Carro_%d.ini"idx);
        if(
DOF2_FileExists(file))
        {
            
ConceInfo[idx][vModel] = DOF2_GetInt(file"Modelo");
            
ConceInfo[idx][vPreco] = DOF2_GetInt(file"Preco");
            
ConceInfo[idx][vColorOne] = DOF2_GetInt(file"Cor1");
            
ConceInfo[idx][vColorTwo] = DOF2_GetInt(file"Cor2");
            
ConceInfo[idx][vLocalx] = DOF2_GetFloat(file"CarroX");
            
ConceInfo[idx][vLocaly] = DOF2_GetFloat(file"CarroY");
            
ConceInfo[idx][vLocalz] = DOF2_GetFloat(file"CarroZ");
            
ConceInfo[idx][vAngle] = DOF2_GetFloat(file"CarroA");
            
ConceInfo[idx][vehicleconce] = CreateVehicle(ConceInfo[idx][vModel],
            
ConceInfo[idx][vLocalx], ConceInfo[idx][vLocaly], ConceInfo[idx][vLocalz],
            
ConceInfo[idx][vAngle], ConceInfo[idx][vColorOne], ConceInfo[idx][vColorTwo], -1);
            
printf("Veiculo %d Criado"ConceInfo[idx][vehicleconce]);//Debug
            //SetVehicleVirtualWorld(ConceInfo[idx][vehicleconce], 0);
            //LinkVehicleToInterior(ConceInfo[idx][vehicleconce], 0);
        
}
    }
    return 
1;

Se quiser salvar os arquivos do carro pelo servidor
PHP код:
CMD:salvarcarro(playerid)//Salvar veiculos
{
    if(!
IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, -1"Entre em um veiculo");
    new 
file[128], idx 0Float:P[4];
    
format(filesizeof(file), "Concessionaria/Carro_%d.ini"idx);
    while(
idx MAX_CONCE && !DOF2_FileExists(file))//Acha um veiculo valido
    
{
        
idx ++;
        
format(filesizeof(file), "Concessionaria/Carro_%d.txt"idx);
    }
    
GetVehiclePos(GetPlayerVehicleID(playerid), P[0], P[1], P[2]);
    
GetVehicleZAngle(GetPlayerVehicleID(playerid), P[3]);
    
DOF2_CreateFile(file);
     
DOF2_SetInt(file"Modelo"GetVehicleModel(GetPlayerVehicleID(playerid)));
      
DOF2_SetInt(file"Preco"0);
       
DOF2_SetInt(file"Cor1", -1);
       
DOF2_SetInt(file"Cor2", -1);
    
DOF2_SetFloat(file"CarroX"P[0]);
    
DOF2_SetFloat(file"CarroY"P[1]);
    
DOF2_SetFloat(file"CarroZ"P[2]);
    
DOF2_SetFloat(file"CarroA"P[3]);
    
DOF2_SaveFile();
    return 
1;
    

Reply
#8

Quote:

[23:26:50] Veiculo 65535 Criado
[23:26:50] Veiculo 65535 Criado
[23:26:50] Veiculo 65535 Criado

Mas o carro nгo aparece '-'

@Edit Mudei para .txt e apareceu, vlw mano <3
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)