Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* Criado por Ricardo Brasil , obrigado em especial para Bruno por análisar o código e checar se está funcional ou não
- Não foi completamente testado; o Bruno falou que está funcional então eu resolvi postar.
- dv: Ricop522
- E: Troque o PlayerInfo[playerid][pLogado] pela variavel de logado do seu gamemode.
- */
- enum vehicle_Info {
- vOwner[MAX_PLAYER_NAME],
- Float:vPos[4],
- vCor[2],
- vModelo,
- vInterior,
- vVirWorld,
- vComponente[14],
- vID,
- vOwner2[MAX_PLAYER_NAME],
- Float:vPos2[4],
- vCor2[2],
- vModelo2,
- vInterior2,
- vVirWorld2,
- vComponente2[14],
- vID2,
- vOwner3[MAX_PLAYER_NAME],
- Float:vPos3[4],
- vCor3[2],
- vModelo3,
- vInterior3,
- vVirWorld3,
- vComponente3[14],
- vID3,
- }
- new vehicleInfo[MAX_PLAYERS][vehicle_Info];
- forward salvarVeiculo(playerid);
- public salvarVeiculo(playerid) {
- if ( IsPlayerConnected(playerid) && PlayerInfo[playerid][pLogado] > 0 ) {
- new vstring[50];
- format(vstring, sizeof(vstring), "RICO/Carros/%s.ricop522", getNome(playerid) )
- if ( !dini_Exists(vstring) ) {
- dini_Create(vstring)
- }
- // Chave 1
- dini_Set(vstring, "nome_1", getNome(playerid))
- dini_FloatSet(vstring, "posx_1", vehicleInfo[playerid][vPos][0]);
- dini_FloatSet(vstring, "posy_1", vehicleInfo[playerid][vPos][1]);
- dini_FloatSet(vstring, "posz_1", vehicleInfo[playerid][vPos][2]);
- dini_FloatSet(vstring, "angulo_1", vehicleInfo[playerid][vPos][3]);
- dini_IntSet(vstring, "cor_1", vehicleInfo[playerid][vCor][0]);
- dini_IntSet(vstring, "cor_1.1", vehicleInfo[playerid][vCor][1]);
- dini_IntSet(vstring, "modelo_1", vehicleInfo[playerid][vModelo]);
- dini_IntSet(vstring, "interior_1", vehicleInfo[playerid][vInterior]);
- dini_IntSet(vstring, "vw_1", vehicleInfo[playerid][vVirWorld]);
- new i = 0;
- for ( ; i <= 13; ++i ) {
- static lstr[15];
- format(lstr, "tuning_%i", i);
- dini_IntSet(vstring, lstr, vehicleInfo[playerid][vComponente][i]);
- }
- dini_IntSet(vstring, "id_1", vehicleInfo[playerid][vID]);
- // Chave 2
- dini_Set(vstring, "nome_2", getNome(playerid))
- dini_FloatSet(vstring, "posx_2", vehicleInfo[playerid][vPos2][0]);
- dini_FloatSet(vstring, "posy_2", vehicleInfo[playerid][vPos2][1]);
- dini_FloatSet(vstring, "posz_2", vehicleInfo[playerid][vPos2][2]);
- dini_FloatSet(vstring, "angulo_2", vehicleInfo[playerid][vPos2][3]);
- dini_IntSet(vstring, "cor_2", vehicleInfo[playerid][vCor2][0]);
- dini_IntSet(vstring, "cor_2.2", vehicleInfo[playerid][vCor2][1]);
- dini_IntSet(vstring, "modelo_2", vehicleInfo[playerid][vModelo2]);
- dini_IntSet(vstring, "interior_2", vehicleInfo[playerid][vInterior2]);
- dini_IntSet(vstring, "vw_2", vehicleInfo[playerid][vVirWorld2]);
- new i = 0;
- for ( ; i <= 13; ++i ) {
- static lstr[15];
- format(lstr, "tuning2_%i", i);
- dini_IntSet(vstring, lstr, vehicleInfo[playerid][vComponente2][i]);
- }
- dini_IntSet(vstring, "id_2", vehicleInfo[playerid][vID2]);
- //Chave 3
- dini_Set(vstring, "nome_3", getNome(playerid))
- dini_FloatSet(vstring, "posx_3", vehicleInfo[playerid][vPos3][0]);
- dini_FloatSet(vstring, "posy_3", vehicleInfo[playerid][vPos3][1]);
- dini_FloatSet(vstring, "posz_3", vehicleInfo[playerid][vPos3][2]);
- dini_FloatSet(vstring, "angulo_3", vehicleInfo[playerid][vPos3][3]);
- dini_IntSet(vstring, "cor_3", vehicleInfo[playerid][vCor3][0]);
- dini_IntSet(vstring, "cor_3.3", vehicleInfo[playerid][vCor3][1]);
- dini_IntSet(vstring, "modelo_3", vehicleInfo[playerid][vModelo3]);
- dini_IntSet(vstring, "interior_3", vehicleInfo[playerid][vInterior3]);
- dini_IntSet(vstring, "vw_3", vehicleInfo[playerid][vVirWorld3]);
- new i = 0;
- for ( ; i <= 13; ++i ) {
- static lstr[15];
- format(lstr, "tuning3_%i", i);
- dini_IntSet(vstring, lstr, vehicleInfo[playerid][vComponente][i]);
- }
- dini_IntSet(vstring, "id_3", vehicleInfo[playerid][vID]);
- printf("%s vehicle saved.", getNome(playerid));
- }
- return 1;
- }
- forward carregarVeiculo(playerid);
- public carregarVeiculo(playerid) {
- if ( IsPlayerConnected(playerid) && PlayerInfo[playerid][pLogado] > 0 ) {
- new vstring[50], vowned;
- format(vstring, sizeof(vstring), "RICO/Carros/%s.ricop522", getNome(playerid) )
- if ( dini_Exists(vstring) ) {
- if ( vehicleInfo[playerid][vModelo] > 400 && vehicleInfo[playerid][vModelo] < 611) {
- vehicleInfo[playerid][vOwner] = dini_Get(vstring, "nome_1")
- vehicleInfo[playerid][vPos][0] = dini_Float(vstring, "posx_1");
- vehicleInfo[playerid][vPos][1] = dini_Float(vstring, "posy_1");
- vehicleInfo[playerid][vPos][2] = dini_Float(vstring, "posz_1");
- vehicleInfo[playerid][vPos][3] = dini_Float(vstring, "angulo_1");
- vehicleInfo[playerid][vCor][0] = dini_Int(vstring, "cor_1");
- vehicleInfo[playerid][vCor][1] = dini_Int(vstring, "cor_1.1");
- vehicleInfo[playerid][vModelo] = dini_Int(vstring, "modelo_1");
- vehicleInfo[playerid][vInterior] = dini_Int(vstring, "interior_1");
- vehicleInfo[playerid][vVirWorld] = dini_Int(vstring, "vw_1");
- new i = 0;
- for ( ; i <= 13; ++i ) {
- new lstr[15];
- format(lstr, "tuning_%i", i);
- vehicleInfo[playerid][vComponente][i] = dini_Int(vstring, lstr);
- }
- vehicleInfo[playerid][vID] = AddStaticVehicleEx(vehicleInfo[playerid][vPos][0], vehicleInfo[playerid][vPos][1], vehicleInfo[playerid][vPos][2], vehicleInfo[playerid][vPos][3], vehicleInfo[playerid][vCor][0], vehicleInfo[playerid][vCor][1], 60000);
- SetVehicleVirtualWorld(vehicleInfo[playerid][vID], vehicleInfo[playerid][vVirWorld]);
- setComponentes(vehicleInfo[playerid][vID], 1)
- }
- //chave 2
- if ( vehicleInfo[playerid][vModelo2] > 400 && vehicleInfo[playerid][vModelo2] < 611) {
- vehicleInfo[playerid][vOwner2] = dini_Get(vstring, "nome_2")
- vehicleInfo[playerid][vPos2][0] = dini_Float(vstring, "posx_2");
- vehicleInfo[playerid][vPos2][1] = dini_Float(vstring, "posy_2");
- vehicleInfo[playerid][vPos2][2] = dini_Float(vstring, "posz_2");
- vehicleInfo[playerid][vPos2][3] = dini_Float(vstring, "angulo_2");
- vehicleInfo[playerid][vCor2][0] = dini_Int(vstring, "cor_2");
- vehicleInfo[playerid][vCor2][1] = dini_Int(vstring, "cor_2.2");
- vehicleInfo[playerid][vModelo2] = dini_Int(vstring, "modelo_2");
- vehicleInfo[playerid][vInterior2] = dini_Int(vstring, "interior_2");
- vehicleInfo[playerid][vVirWorld2] = dini_Int(vstring, "vw_2");
- new i = 0;
- for ( ; i <= 13; ++i ) {
- new lstr[15];
- format(lstr, "tuning2_%i", i);
- vehicleInfo[playerid][vComponente2][i] = dini_Int(vstring, lstr);
- }
- vehicleInfo[playerid][vID2] = AddStaticVehicleEx(vehicleInfo[playerid][vPos2][0], vehicleInfo[playerid][vPos2][1], vehicleInfo[playerid][vPos2][2], vehicleInfo[playerid][vPos2][3], vehicleInfo[playerid][vCor2][0], vehicleInfo[playerid][vCor2][1], 60000);
- SetVehicleVirtualWorld(vehicleInfo[playerid][vID2], vehicleInfo[playerid][vVirWorld2]);
- setComponentes(vehicleInfo[playerid][vID2], 2)
- }
- //chave 3
- if ( vehicleInfo[playerid][vModelo3] > 400 && vehicleInfo[playerid][vModelo3] < 611) {
- vehicleInfo[playerid][vOwner3] = dini_Get(vstring, "nome_3")
- vehicleInfo[playerid][vPos3][0] = dini_Float(vstring, "posx_3");
- vehicleInfo[playerid][vPos3][1] = dini_Float(vstring, "posy_3");
- vehicleInfo[playerid][vPos3][2] = dini_Float(vstring, "posz_3");
- vehicleInfo[playerid][vPos3][3] = dini_Float(vstring, "angulo_3");
- vehicleInfo[playerid][vCor3][0] = dini_Int(vstring, "cor_3");
- vehicleInfo[playerid][vCor3][1] = dini_Int(vstring, "cor_3.3");
- vehicleInfo[playerid][vModelo3] = dini_Int(vstring, "modelo_3");
- vehicleInfo[playerid][vInterior3] = dini_Int(vstring, "interior_3");
- vehicleInfo[playerid][vVirWorld3] = dini_Int(vstring, "vw_3");
- new i = 0;
- for ( ; i <= 13; ++i ) {
- new lstr[15];
- format(lstr, "tuning3_%i", i);
- vehicleInfo[playerid][vComponente3][i] = dini_Int(vstring, lstr);
- }
- vehicleInfo[playerid][vID] = AddStaticVehicleEx(vehicleInfo[playerid][vPos3][0], vehicleInfo[playerid][vPos3][1], vehicleInfo[playerid][vPos3][2], vehicleInfo[playerid][vPos3][3], vehicleInfo[playerid][vCor3][0], vehicleInfo[playerid][vCor3][1], 60000);
- SetVehicleVirtualWorld(vehicleInfo[playerid][vID3], vehicleInfo[playerid][vVirWorld3]);
- setComponentes(vehicleInfo[playerid][vID3], 3)
- }
- printf("%s vehicle loaded.", getNome(playerid));
- }
- return 1;
- }
- return 1;
- }
- checarDono(carroid, playerid) {
- return ( carroid == vehicleInfo[playerid][vID] ) ;
- }
- stock setComponentes(carid, id) {
- if ( id == 1 ) {
- if(vehicleInfo[carid][cComponente][0] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente][0])
- }
- if(vehicleInfo[carid][cComponente][1] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente][1])
- }
- if(vehicleInfo[carid][cComponente][2] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente][2])
- }
- if(vehicleInfo[carid][cComponente][3] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente][3])
- }
- if(vehicleInfo[carid][cComponente][4] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente][4])
- }
- if(vehicleInfo[carid][cComponente][5] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente][5])
- }
- if(vehicleInfo[carid][cComponente][6] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente][6])
- }
- if(vehicleInfo[carid][cComponente][7] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente][7])
- }
- if(vehicleInfo[carid][cComponente][8] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente][8])
- }
- if(vehicleInfo[carid][cComponente][9] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente][9])
- }
- if(vehicleInfo[carid][cComponente][10] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente][10])
- }
- if(vehicleInfo[carid][cComponente][11] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente][11])
- }
- if(vehicleInfo[carid][cComponente][12] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente][12])
- }
- if(vehicleInfo[carid][cComponente][13] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente][13])
- }
- }
- if ( id == 2 ) {
- if(vehicleInfo[carid][cComponente][0] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente2][0])
- }
- if(vehicleInfo[carid][cComponente2][1] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente2][1])
- }
- if(vehicleInfo[carid][cComponente2][2] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente2][2])
- }
- if(vehicleInfo[carid][cComponente2][3] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente2][3])
- }
- if(vehicleInfo[carid][cComponente2][4] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente2][4])
- }
- if(vehicleInfo[carid][cComponente2][5] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente2][5])
- }
- if(vehicleInfo[carid][cComponente2][6] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente2][6])
- }
- if(vehicleInfo[carid][cComponente2][7] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente2][7])
- }
- if(vehicleInfo[carid][cComponente2][8] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente2][8])
- }
- if(vehicleInfo[carid][cComponente2][9] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente2][9])
- }
- if(vehicleInfo[carid][cComponente2][10] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente2][10])
- }
- if(vehicleInfo[carid][cComponente2][11] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente2][11])
- }
- if(vehicleInfo[carid][cComponente2][12] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente2][12])
- }
- if(vehicleInfo[carid][cComponente2][13] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente2][13])
- }
- }
- if ( id == 3 ) {
- if(vehicleInfo[carid][cComponente3][0] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente3][0])
- }
- if(vehicleInfo[carid][cComponente3][1] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente3][1])
- }
- if(vehicleInfo[carid][cComponente3][2] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente3][2])
- }
- if(vehicleInfo[carid][cComponente3][3] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente3][3])
- }
- if(vehicleInfo[carid][cComponente3][4] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente3][4])
- }
- if(vehicleInfo[carid][cComponente3][5] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente3][5])
- }
- if(vehicleInfo[carid][cComponente3][6] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente3][6])
- }
- if(vehicleInfo[carid][cComponente3][7] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente3][7])
- }
- if(vehicleInfo[carid][cComponente3][8] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente3][8])
- }
- if(vehicleInfo[carid][cComponente3][9] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente3][9])
- }
- if(vehicleInfo[carid][cComponente3][10] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente3][10])
- }
- if(vehicleInfo[carid][cComponente3][11] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente3][11])
- }
- if(vehicleInfo[carid][cComponente3][12] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente3][12])
- }
- if(vehicleInfo[carid][cComponente3][13] >= 0) {
- AddVehicleComponent(carid, vehicleInfo[carid][cComponente3][13])
- }
- }
- }
- stock deletarLogoutVehicle(playerid) {
- if ( IsPlayerConnected(playerid ) {
- if ( vehicleInfo[playerid][vModelo] > 400 && vehicleInfo[playerid][vModelo] < 611 && vehicleInfo[playerid][vID] > 0) {
- DestroyVehicle(playerid, vehicleInfo[playerid][vID]);
- vehicleInfo[playerid][vID] = 0;
- salvarVeiculos(playerid);
- }
- if ( vehicleInfo[playerid][vModelo2] > 400 && vehicleInfo[playerid][vModelo2] < 611 && vehicleInfo[playerid][vID] > 0) {
- DestroyVehicle(playerid, vehicleInfo[playerid][vID2]);
- vehicleInfo[playerid][vID2] = 0;
- salvarVeiculos(playerid);
- }
- if ( vehicleInfo[playerid][vModelo3] > 400 && vehicleInfo[playerid][vModelo3] < 611 && vehicleInfo[playerid][vID] > 0) {
- DestroyVehicle(playerid, vehicleInfo[playerid][vID3]);
- vehicleInfo[playerid][vID3] = 0;
- salvarVeiculos(playerid);
- }
- return 1;
- }
- return 1;
- }
- stock comprarVeiculo ( playerid, modeloid, cor1, cor2) {
- if ( vehicleInfo[playerid][vModelo] < 400 && vehicleInfo[playerid][vModelo] > 611 ) {
- if ( vehicleInfo[playerid][vModelo] ) {
- vehicleInfo[playerid][vModelo] = modeloid;
- vehicleInfo[playerid][vCor][0] = cor1;
- vehicleInfo[playerid][vCor][1] = cor2;
- salvarVeiculos(playerid);
- SendClientMessage(playerid, -1, " Relogue e o seu veículo irá nascer ! ");
- return 1;
- }
- if ( vehicleInfo[playerid][vModelo2] ) {
- vehicleInfo[playerid][vModelo2] = modeloid;
- vehicleInfo[playerid][vCor2][0] = cor1;
- vehicleInfo[playerid][vCor2][1] = cor2;
- salvarVeiculos(playerid);
- SendClientMessage(playerid, -1, " Relogue e o seu veículo irá nascer ! ");
- return 1;
- }
- if ( vehicleInfo[playerid][vModelo3] ) {
- vehicleInfo[playerid][vModelo3] = modeloid;
- vehicleInfo[playerid][vCor3][0] = cor1;
- vehicleInfo[playerid][vCor3][1] = cor2;
- salvarVeiculos(playerid);
- SendClientMessage(playerid, -1, " Relogue e o seu veículo irá nascer ! ");
- return 1;
- }
- return 1;
- }
- return 1;
- }
- stock getNome(playerid) {
- new nome[24];
- GetPlayerName(playerid, nome, 24);
- return nome;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement