[Ajuda] Veнculo casa
#1

Alguem me da uma ideia de como eu vo colocar veнculos na minha casa
Tipo eu queria assim: /CriarCasa [Preзo] [Interior] Ae ta tudo legal!

Mas ai eu queria que dava: /CriarVeiculoCasa [CasaId] [Modelo] no lugar que eu estou. no caso na garagem da casa.

so que nгo tenho ideia, ai tipo no Arquivo Casas/Casa%d.ini, podia criar as posiзгo do veнculo, CasaId, Modelo, Cor1, Cor2 entre outros.

- Assim, eu n sei como eu pego o [CasaId] e tbm coloco Posiзгo, CasaId, Modelo, Cores do veнculos em uma Pasta:

Ex:

VeiculosCasa/Casa%d

Ou pode ser onde que armazenam as casa tbm >

Casas/Casa%d;ini

Olha o meu /CriarCasa:

PHP код:
if(strcmp(cmd"/CriarCasa"true) == 0)
{
    if(
IsPlayerAdmin(playerid))
    {
        new 
PrecoInteriorFloat:XFloat:YFloat:Z;
        if(
sscanf(cmdtext"s[20]dd"cmdPrecoInterior))
        {
            
SendClientMessage(playeridVermelho"| ERRO | Use: /CriarCasa [Preзo] [Interior]");
            return 
1;
        }
        
GetPlayerPos(playeridXYZ);
        
format(querysizeof(query), "Casas/Casa%d.ini"ProximaCasa);
        if(!
DOF2_FileExists(query))
        {
            
DOF2_CreateFile(query);
            
DOF2_SetString(query"Dono""Ninguem");
            
DOF2_SetString(query"Morador""Ninguem");
            
DOF2_SetString(query"Mensagem""Nada");
            
DOF2_SetInt(query"TDono"0);
            
DOF2_SetInt(query"Interior"Interior);
            
DOF2_SetInt(query"InteriorId"1);
            
DOF2_SetInt(query"Preco"Preco);
            
DOF2_SetInt(query"CasaId"ProximaCasa);
            
DOF2_SetInt(query"Contas"0);
            
DOF2_SetFloat(query"X"X);
            
DOF2_SetFloat(query"Y"Y);
            
DOF2_SetFloat(query"Z"Z);
            
DOF2_SaveFile();
            
ProximaCasa++;
        }
    }
    else
    {
        
SendClientMessage(playeridVermelho"| ERRO | Vocк nгo tem permissгo!");
    }
    return 
1;

Reply
#2

Opa, fiz este codigo aqui rapidinho(nгo compilei) XD

PHP код:
CMD:criarveiculocasa(playeridparams[]);
{
    new 
Pasta[20], CasaIDModeloColors[2], Float:pos[4];
    if(
sscanf(params"dddd"CasaIDModeloColors[0], Colors[1])) return SendClientMessage(playerid, -1"| ERRO | Use: /criarveiculocasa [CasaID] [Modelo] [COR1] [COR2]");
    
GetPlayerPos(playeridpos[0], pos[1], pos[2]);
    
GetPlayerFacingAngle(playeridpos[3]);
    
format(Pastasizeof Pasta"Casas/Casa%d.ini"CasaID);
    if(!
DOF2::Exists(Pasta)) return SendClientMessage(playerid, -1"| ERRO | Casa nгo existe!");
    
format(Pastasizeof Pasta"VeiculosCasas/Casa%d.ini"CasaID);
    
DOF2::CreateFile(Pasta);
    
DOF2::SetInt(Pasta"ID"Modelo);
    
DOF2::SetInt(Pasta"Cor1"Colors[0]);
    
DOF2::SetInt(Pasta"Cor2"Colors[1]);
    
DOF2::SetFloat(Pasta"X"pos[0]);
    
DOF2::SetFloat(Pasta"Y"pos[1]);
    
DOF2::SetFloat(Pasta"Z"pos[2]);
    
DOF2::SetFloat(Pasta"A"pos[3]);
    
DOF2::SaveFile();
    
CreateVehicle(Modelopos[0], pos[1], pos[2], pos[3], Colors[0], Colors[1], 0);
    
SendClientMessage(playerid, -1"Vocк criou o carro!");
    return 
1;

recomendo muito associar os valores a variбveis!

PHP код:
enum Carros
{
    
Model,
    
Float:X,
    
Float:Y,
    
Float:Z,
    
Float:A,
    
Color1,
    
Color2
}
new 
CasaCarros[MAX_CASAS][Carros]; 
Reply
#3

Eu coloquei 2 DOF2_SetInt com os nomes: CasaTVeiculo й VeiculoTDono

Quando eu do /CriarCasa o: CasaTVeiculo = 1;
Quando o player da /ComprarCasa o: VeiculoTDono = 1;
Quando o player da /VenderCasa o: VeiculoTDono = 0;

Ai vai me ajudando quando eu for criar os comandos: /PintarVeiculoCasa, /NomeVeiculoCasa... Por ai Vai

Agora me ajuda como eu vo carregar os Veнculos junto com essa stock aki

Ela carrega o TextLabel e outras coisas, Como Carrega os veнculos nessa stock
ou fora dela tbm, se carregando '-'

NO CASO ESSA STOCK VAI NA PUBLIC: OnGameModeInit

PHP код:
stock CarregarCasas()
{
    for(new 
0MAX_CASASc++)
    {
        
format(querysizeof(query), "Casas/Casa%d.ini"c);
        if(
DOF2_FileExists(query))
        {
            if(
DOF2_GetInt(query"TDono") == 0)
            {
                
format(stringsizeof(string), "{1E90FF}Casa Id: {FFFFFF}%d\n\n{1E90FF}Dono(a): {FFFFFF}Ninguem\n/InfoCasa"c);
                
LabelCasa[c] = CreateDynamic3DTextLabel(stringBrancoDOF2_GetFloat(query"X"), DOF2_GetFloat(query"Y"), DOF2_GetFloat(query"Z"), 30.0INVALID_PLAYER_IDINVALID_VEHICLE_ID1, -1, -1, -1200.0);
                
ProximaCasa++;
            }
            else
            {
                
format(stringsizeof(string), "{1E90FF}Casa Id: {FFFFFF}%d\n\n{1E90FF}Dono(a): {FFFFFF}%s\n/InfoCasa"cDOF2_GetString(query"Dono"));
                
LabelCasa[c] = CreateDynamic3DTextLabel(stringBrancoDOF2_GetFloat(query"X"), DOF2_GetFloat(query"Y"), DOF2_GetFloat(query"Z"), 30.0INVALID_PLAYER_IDINVALID_VEHICLE_ID1, -1, -1, -1200.0);
                
ProximaCasa++;
            }
        }
    }

VLW +REP MINERVAO
Reply
#4

Opa! eu estou sem meu notebook no momento, fica difнcil fazer qualquer cуdigo :/
Se atente ao fato de que a indexaзгo dos veнculos deve comeзar do 1, ou seja, se existir uma casa ID = 0, й provбvel que o veiculo da ultima casa nгo vai ser criado

ps: nгo compilei estou fazendo tudo no notpad

PHP код:
CarregarCasas()
{
    for(new 
0MAX_CASASc++)
    {
        
format(querysizeof(query), "Casas/Casa%d.ini"c);
        if(
DOF2::FileExists(query))
        {
            if(
DOF2_GetInt(query"TDono") == 0)
            {
                
format(stringsizeof(string), "{1E90FF}Casa Id: {FFFFFF}%d\n\n{1E90FF}Dono(a): {FFFFFF}Ninguem\n/InfoCasa"c);
                
LabelCasa[c] = CreateDynamic3DTextLabel(stringBrancoDOF2_GetFloat(query"X"), DOF2_GetFloat(query"Y"), DOF2_GetFloat(query"Z"), 30.0INVALID_PLAYER_IDINVALID_VEHICLE_ID1, -1, -1, -1200.0);
                if(
DOF2::GetInt(query"CasaTVeiculo") == 1CarregarCarroCasa(c);
                
ProximaCasa++;
            }
            else 
            {
                
format(stringsizeof(string), "{1E90FF}Casa Id: {FFFFFF}%d\n\n{1E90FF}Dono(a): {FFFFFF}%s\n/InfoCasa"cDOF2_GetString(query"Dono"));
                
LabelCasa[c] = CreateDynamic3DTextLabel(stringBrancoDOF2_GetFloat(query"X"), DOF2_GetFloat(query"Y"), DOF2_GetFloat(query"Z"), 30.0INVALID_PLAYER_IDINVALID_VEHICLE_ID1, -1, -1, -1200.0);
                if(
DOF2::GetInt(query"CasaTVeiculo") == 1CarregarCarroCasa(c);
                
ProximaCasa++;
            }
        }
    }
}
CarregarCarroCasa(IDCarro)
{
    
format(querysizeof query"VeiculosCasas/Casa%d.ini"IDCarro);
    if(!
DOF2::FileExists(query)) return print("Carro invalido!");
    
CarrosCasas[IDCarro] = CreateVehicle(DOF2::GetInt(query"ID"), DOF2::GetFloat(query"X"), DOF2::GetFloat(query"Y"), DOF2::GetFloat(query"Z"), DOF2::GetFloat(query"A"), DOF2::GetInt(query"Cor1"), DOF2::GetInt(query"Cor2"), 0);

Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)