Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- Sistema de Concessionaria feito por ProKillerPa em 11/05/2021
- Discord: ProKillerPa#7113
- */
- #include <a_samp>
- #include <mSelection>
- #include <DOF2>
- #include <ZCMD>
- #define MAX_VEH_CONCE 150
- #define CONCE "Concessionaria Nova/%i.ini"
- #define VOID::%0(%1) forward %0(%1);public %0(%1)
- new carros = mS_INVALID_LISTID;
- new motos = mS_INVALID_LISTID;
- new variados = mS_INVALID_LISTID;
- enum DATA_CONCE{
- ID,
- Dono[MAX_PLAYER_NAME],
- Valor,
- Modelo,
- Float:PosX,
- Float:PosY,
- Float:PosZ,
- Float:Angulo,
- Cor1,
- Cor2
- } new Conce[MAX_VEH_CONCE][DATA_CONCE];
- new bool:CarregouVeh[MAX_PLAYERS];
- new Float:SpawnConce[10][4] = {
- {2147.3608,-1157.4744,23.5716,271.0518},
- {2148.6907,-1161.7351,23.5498,268.6129},
- {2148.6021,-1153.1725,23.6500,270.6453},
- {2149.0598,-1148.2809,24.1437,269.3367},
- {2149.1650,-1143.4781,24.6708,269.7239},
- {2149.0691,-1138.3676,25.2173,270.3889},
- {2161.6094,-1148.2463,24.1130,92.3409},
- {2160.8845,-1152.9626,23.6598,90.7373},
- {2161.1101,-1158.0596,23.5662,90.1280},
- {2161.1101,-1158.0596,23.5662,90.1280}
- };
- new VehicleNames[212][] =
- {
- {"Landstalker"},{"Bravura"},{"Buffalo"},{"Linerunner"},{"Perrenial"},{"Sentinel"},{"Dumper"},
- {"Firetruck"},{"Trashmaster"},{"Stretch"},{"Manana"},{"Infernus"},{"Voodoo"},{"Pony"},{"Mule"},
- {"Cheetah"},{"Ambulance"},{"Leviathan"},{"Moonbeam"},{"Esperanto"},{"Taxi"},{"Washington"},
- {"Bobcat"},{"Mr Whoopee"},{"BF Injection"},{"Hunter"},{"Premier"},{"Enforcer"},{"Securicar"},
- {"Banshee"},{"Predator"},{"Bus"},{"Rhino"},{"Barracks"},{"Hotknife"},{"Trailer 1"},{"Previon"},
- {"Coach"},{"Cabbie"},{"Stallion"},{"Rumpo"},{"RC Bandit"},{"Romero"},{"Packer"},{"Monster"},
- {"Admiral"},{"Squalo"},{"Seasparrow"},{"Pizzaboy"},{"Tram"},{"Trailer 2"},{"Turismo"},
- {"Speeder"},{"Reefer"},{"Tropic"},{"Flatbed"},{"Yankee"},{"Caddy"},{"Solair"},{"Berkley's RC Van"},
- {"Skimmer"},{"PCJ-600"},{"Faggio"},{"Freeway"},{"RC Baron"},{"RC Raider"},{"Glendale"},{"Oceanic"},
- {"Sanchez"},{"Sparrow"},{"Patriot"},{"Quad"},{"Coastguard"},{"Dinghy"},{"Hermes"},{"Sabre"},
- {"Rustler"},{"ZR-350"},{"Walton"},{"Regina"},{"Comet"},{"BMX"},{"Burrito"},{"Camper"},{"Marquis"},
- {"Baggage"},{"Dozer"},{"Maverick"},{"News Chopper"},{"Rancher"},{"FBI Rancher"},{"Virgo"},{"Greenwood"},
- {"Jetmax"},{"Hotring"},{"Sandking"},{"Blista Compact"},{"Police Maverick"},{"Boxville"},{"Benson"},
- {"Mesa"},{"RC Goblin"},{"Hotring Racer A"},{"Hotring Racer B"},{"Bloodring Banger"},{"Rancher"},
- {"Super GT"},{"Elegant"},{"Journey"},{"Bike"},{"Mountain Bike"},{"Beagle"},{"Cropdust"},{"Stunt"},
- {"Tanker"}, {"Roadtrain"},{"Nebula"},{"Majestic"},{"Buccaneer"},{"Shamal"},{"Hydra"},{"FCR-900"},
- {"NRG-500"},{"HPV1000"},{"Cement Truck"},{"Tow Truck"},{"Fortune"},{"Cadrona"},{"FBI Truck"},
- {"Willard"},{"Forklift"},{"Tractor"},{"Combine"},{"Feltzer"},{"Remington"},{"Slamvan"},
- {"Blade"},{"Freight"},{"Streak"},{"Vortex"},{"Vincent"},{"Bullet"},{"Clover"},{"Sadler"},
- {"Firetruck LA"},{"Hustler"},{"Intruder"},{"Primo"},{"Cargobob"},{"Tampa"},{"Sunrise"},{"Merit"},
- {"Utility"},{"Nevada"},{"Yosemite"},{"Windsor"},{"Monster A"},{"Monster B"},{"Uranus"},{"Jester"},
- {"Sultan"},{"Stratum"},{"Elegy"},{"Raindance"},{"RC Tiger"},{"Flash"},{"Tahoma"},{"Savanna"},
- {"Bandito"},{"Freight Flat"},{"Streak Carriage"},{"Kart"},{"Mower"},{"Duneride"},{"Sweeper"},
- {"Broadway"},{"Tornado"},{"AT-400"},{"DFT-30"},{"Huntley"},{"Stafford"},{"BF-400"},{"Newsvan"},
- {"Tug"},{"Trailer 3"},{"Emperor"},{"Wayfarer"},{"Euros"},{"Hotdog"},{"Club"},{"Freight Carriage"},
- {"Trailer 3"},{"Andromada"},{"Dodo"},{"RC Cam"},{"Launch"},{"Police Car (LSPD)"},{"Police Car (SFPD)"},
- {"Police Car (LVPD)"},{"Police Ranger"},{"Picador"},{"S.W.A.T. Van"},{"Alpha"},{"Phoenix"},{"Glendale"},
- {"Sadler"},{"Luggage Trailer A"},{"Luggage Trailer B"},{"Stair Trailer"},{"Boxville"},{"Farm Plow"},
- {"Utility Trailer"}
- };
- #define CATEGORIAS 19666
- #define COMPRARVEICULO 19667
- #define MENUVEICULO 19668
- #define LOCALIZARVEICULOS 19669
- public OnFilterScriptInit(){
- Create3DTextLabel("{1E90FF}Concessionaria de LS\n{FF7F00}Aperte F ou use /conce", -1, 2131.9753,-1149.9814,24.2093, 15, 0);
- CreatePickup(18631, 0, 2131.9753,-1149.9814,24.2093);
- carros = LoadModelSelectionMenu("carros.txt");
- motos = LoadModelSelectionMenu("motos.txt");
- variados = LoadModelSelectionMenu("especiais.txt");
- for(new x; x < MAX_VEH_CONCE; x++) Conce[x][ID] = -1;
- return 1;
- }
- public OnFilterScriptExit(){
- DOF2::Exit();
- return 1;
- }
- CMD:conce(playerid){
- if(!IsPlayerInRangeOfPoint(playerid, 4, 2131.9753,-1149.9814,24.2093))
- return SendClientMessage(playerid, -1, "{FF4500}[ERRO] Voce nao esta proximo da concessionaria!");
- ShowPlayerDialog(playerid, CATEGORIAS, DIALOG_STYLE_LIST, "Concessionaria", "Ver Carros\nVer Motos\nVer Veiculos Variados", "Selecionar", "Cancelar");
- return 1;
- }
- public OnPlayerKeyStateChange(playerid, newkeys, oldkeys){
- if(newkeys == 16){
- if(IsPlayerInRangeOfPoint(playerid, 4, 2131.9753,-1149.9814,24.2093)){
- ShowPlayerDialog(playerid, CATEGORIAS, DIALOG_STYLE_LIST, "Concessionaria", "Ver Carros\nVer Motos\nVer Veiculos Variados", "Selecionar", "Cancelar");
- }
- }
- return 1;
- }
- public OnPlayerConnect(playerid){
- CarregouVeh[playerid] = false;
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason){
- if(CarregouVeh[playerid]) DestruirVeiculos(playerid);
- CarregouVeh[playerid] = false;
- return 1;
- }
- CMD:locav(playerid){
- new ff[30], msg[50], msg2[400], pqp;
- for(new i; i < MAX_VEH_CONCE; i++){
- format(ff, 30, CONCE, i);
- if(DOF2::FileExists(ff)){
- format(Conce[i][Dono], MAX_PLAYER_NAME, DOF2::GetString(ff, "Dono"));
- if(strcmp(Conce[i][Dono], NomePQP(playerid), true) == 0){
- format(msg, 50, "Localizar %s\n", getVehicleName(Conce[i][Modelo]));
- strcat(msg2, msg);
- pqp++;
- }
- }
- }
- if(pqp == 0)
- return SendClientMessage(playerid, -1, "{FF4500}[ERRO] Voce nao possui veiculos comprados!");
- ShowPlayerDialog(playerid, LOCALIZARVEICULOS, DIALOG_STYLE_LIST, "Localizar Veiculo", msg2, "Localizar", "Cancelar");
- return 1;
- }
- CMD:destrancar(playerid){
- new Float:PQP[3];
- new vehicleid = GetClosestVehicleToPlayer(playerid);
- GetVehiclePos(vehicleid, PQP[0], PQP[1], PQP[2]);
- if(!IsPlayerInRangeOfPoint(playerid, 5, PQP[0], PQP[1], PQP[2]))
- return SendClientMessage(playerid, -1, "{FF4500}[AVISO] Voce nao esta proximo de nenhum veiculo!");
- new ff[30], pqp;
- new engine, lights, alarm, doors, bonnet, boot, objective;
- for(new i; i < MAX_VEH_CONCE; i++){
- format(ff, 30, CONCE, i);
- if(DOF2::FileExists(ff)){
- if(Conce[i][ID] == vehicleid){
- if(strcmp(Conce[i][Dono], NomePQP(playerid), true) == 0){
- GetVehicleParamsEx(Conce[i][ID], engine, lights, alarm, doors, bonnet, boot, objective);
- if(doors > 0) {
- SetVehicleParamsEx(Conce[i][ID], engine, lights, alarm, false, bonnet, boot, objective);
- SendClientMessage(playerid, -1, "{FFD700}[VEICULO] Voce destrancou seu veiculo com sucesso!");
- }
- else {
- SendClientMessage(playerid, -1, "{FF4500}[ERRO] O seu veiculo ja esta destrancado!");
- }
- } else SendClientMessage(playerid, -1, "{FF4500}[ERRO] Voce nao e o dono desse veiculo e nao pode destranca-lo!");
- pqp++;
- break;
- }
- }
- }
- if(pqp == 0) SendClientMessage(playerid, -1, "{FF4500}[ERRO] Esse veiculo nao e da concessionaria e nao pode ser trancado!");
- return 1;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]){
- switch(dialogid){
- case LOCALIZARVEICULOS:{
- if(!response)
- return 1;
- new ff[30], q = 0;
- for(new i; i < MAX_VEH_CONCE; i++){
- format(ff, 30, CONCE, i);
- if(DOF2::FileExists(ff)){
- format(Conce[i][Dono], MAX_PLAYER_NAME, DOF2::GetString(ff, "Dono"));
- if(strcmp(Conce[i][Dono], NomePQP(playerid), true) == 0){
- if(listitem == q){
- SetPlayerCheckpoint(playerid, Conce[i][PosX], Conce[i][PosY], Conce[i][PosZ], 4);
- SendClientMessage(playerid, -1, "{BEBEBE}[VEICULO] Seu veiculo foi marcado no mapa com sucesso!");
- break;
- }
- q++;
- }
- }
- }
- }
- case MENUVEICULO:{
- if(!response){
- DeletePVar(playerid, "VehConce");
- DeletePVar(playerid, "ArquivoID");
- return 1;
- }
- new vehicleid = GetPVarInt(playerid, "VehConce");
- new i = GetPVarInt(playerid, "ArquivoID");
- new engine, lights, alarm, doors, bonnet, boot, objective;
- switch(listitem){
- case 0:{
- GetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective);
- if(doors > 0)
- return SendClientMessage(playerid, -1, "[ERRO] Seu veiculo ja esta trancado!");
- else {
- SetVehicleParamsEx(vehicleid, engine, lights, alarm, true, bonnet, boot, objective);
- SendClientMessage(playerid, -1, "{FFD700}[VEICULO] Portas trancadas com sucesso!");
- }
- }
- case 1:{
- GetVehiclePos(vehicleid, Conce[i][PosX], Conce[i][PosY], Conce[i][PosZ]);
- GetVehicleZAngle(vehicleid, Conce[i][Angulo]);
- new ff[30];
- format(ff, 30, CONCE, i);
- DOF2::SetFloat(ff, "PosX", Conce[i][PosX]);
- DOF2::SetFloat(ff, "PosY", Conce[i][PosY]);
- DOF2::SetFloat(ff, "PosZ", Conce[i][PosZ]);
- DOF2::SetFloat(ff, "Angulo", Conce[i][Angulo]);
- DOF2::SaveFile();
- GetVehicleParamsEx(Conce[i][ID], engine, lights, alarm, doors, bonnet, boot, objective);
- DestroyVehicle(Conce[i][ID]);
- Conce[i][ID] = CreateVehicle(Conce[i][Modelo], Conce[i][PosX], Conce[i][PosY], Conce[i][PosZ], Conce[i][Angulo], Conce[i][Cor1], Conce[i][Cor2], 999999999999999);
- PutPlayerInVehicle(playerid, Conce[i][ID], 0);
- SetVehicleParamsEx(Conce[i][ID], engine, lights, alarm, doors, bonnet, boot, objective);
- SendClientMessage(playerid, -1, "{BEBEBE}[VEICULO] Veiculo estacionado com sucesso!");
- }
- case 2:{
- CallRemoteFunction("GanharDinheiro", "id", playerid, ( Conce[i][Valor] / 2) );
- new ff[30];
- format(ff, 30, CONCE, i);
- DOF2::RemoveFile(ff);
- DOF2::SaveFile();
- RemovePlayerFromVehicle(playerid);
- DestroyVehicle(Conce[i][ID]);
- Conce[i][ID] = -1;
- Conce[i][Valor] = 0;
- Conce[i][Modelo] = 0;
- Conce[i][PosX] = 0;
- Conce[i][PosY] = 0;
- Conce[i][PosZ] = 0;
- Conce[i][Angulo] = 0;
- format(Conce[i][Dono], 24, "Ninguem");
- SendClientMessage(playerid, -1, "{BEBEBE}[VEICULO] Voce vendeu seu veiculo com sucesso para a concessionaria!");
- }
- }
- }
- case COMPRARVEICULO:{
- if(!response){
- DeletePVar(playerid, "ModeloVeh");
- DeletePVar(playerid, "ValorVeh");
- return 1;
- }
- else {
- ComprarVeiculo(playerid, GetPVarInt(playerid, "ModeloVeh"), GetPVarInt(playerid, "ValorVeh"));
- }
- }
- case CATEGORIAS:{
- if(!response)
- return 1;
- switch(listitem){
- case 0: ShowModelSelectionMenu(playerid, carros, "Carros");
- case 1: ShowModelSelectionMenu(playerid, motos, "Motos");
- case 2: ShowModelSelectionMenu(playerid, variados, "Veiculos Variados");
- }
- }
- }
- return 1;
- }
- public OnPlayerModelSelection(playerid, response, listid, modelid){
- if(!response)
- return 1;
- if(listid == carros){
- new valor;
- switch(modelid){
- case 602: valor = 150000;
- case 496: valor = 150000;
- case 401: valor = 200000;
- case 589: valor = 160000;
- case 587: valor = 500000;
- case 545: valor = 100000;
- case 467: valor = 100000;
- case 580: valor = 100000;
- case 409: valor = 1000000;
- case 402: valor = 1000000;
- case 603: valor = 2000000;
- case 411: valor = 5000000;
- case 451: valor = 3500000;
- case 555: valor = 1500000;
- default: return SendClientMessage(playerid, -1, "{FF4500}[ERRO] Veiculo nao cadastrado no banco de dados!");
- }
- SetPVarInt(playerid, "ModeloVeh", modelid);
- SetPVarInt(playerid, "ValorVeh", valor);
- new msg[300];
- format(msg, 300, "{FFD700}Concessionaria Informa:\n\n{BEBEBE}Veiculo: {1E90FF}%s\n{BEBEBE}Modelo: {1E90FF}%d\n{00FF00}Valor: $%d,00\n\n{FF7F00}Deseja comprar esse veiculo?\n", getVehicleName(modelid), modelid, valor);
- ShowPlayerDialog(playerid, COMPRARVEICULO, DIALOG_STYLE_MSGBOX, "Comprar Veiculo", msg, "Comprar", "Cancelar");
- }
- else if(listid == motos){
- new valor;
- switch(modelid){
- case 581: valor = 150000;
- case 509: valor = 50000;
- case 481: valor = 50000;
- case 521: valor = 180000;
- case 463: valor = 180000;
- case 461: valor = 180000;
- case 522: valor = 2500000;
- default: return SendClientMessage(playerid, -1, "{FF4500}[ERRO] Veiculo nao cadastrado no banco de dados!");
- }
- SetPVarInt(playerid, "ModeloVeh", modelid);
- SetPVarInt(playerid, "ValorVeh", valor);
- new msg[300];
- format(msg, 300, "{FFD700}Concessionaria Informa:\n\n{BEBEBE}Veiculo: {1E90FF}%s\n{BEBEBE}Modelo: {1E90FF}%d\n{00FF00}Valor: $%d,00\n\n{FF7F00}Deseja comprar esse veiculo?\n", getVehicleName(modelid), modelid, valor);
- ShowPlayerDialog(playerid, COMPRARVEICULO, DIALOG_STYLE_MSGBOX, "Comprar Veiculo", msg, "Comprar", "Cancelar");
- }
- else if(listid == variados){
- new valor;
- switch(modelid){
- case 548: valor = 7000000;
- case 417: valor = 7500000;
- case 487: valor = 5500000;
- case 588: valor = 1000000;
- case 423: valor = 2000000;
- case 572: valor = 70000;
- case 530: valor = 70000;
- case 457: valor = 200000;
- default: return SendClientMessage(playerid, -1, "{FF4500}[ERRO] Veiculo nao cadastrado no banco de dados!");
- }
- SetPVarInt(playerid, "ModeloVeh", modelid);
- SetPVarInt(playerid, "ValorVeh", valor);
- new msg[300];
- format(msg, 300, "{FFD700}Concessionaria Informa:\n\n{BEBEBE}Veiculo: {1E90FF}%s\n{BEBEBE}Modelo: {1E90FF}%d\n{00FF00}Valor: $%d,00\n\n{FF7F00}Deseja comprar esse veiculo?\n", getVehicleName(modelid), modelid, valor);
- ShowPlayerDialog(playerid, COMPRARVEICULO, DIALOG_STYLE_MSGBOX, "Comprar Veiculo", msg, "Comprar", "Cancelar");
- }
- return 1;
- }
- public OnPlayerSpawn(playerid){
- if(!CarregouVeh[playerid]) CarregarVeiculos(playerid);
- return 1;
- }
- CMD:mv(playerid){
- if(!IsPlayerInAnyVehicle(playerid))
- return SendClientMessage(playerid, -1, "{FF4500}[ERRO] Voce deve estar dentro do veiculo para acessar o menu do veiculo.");
- new vehicleid = GetPlayerVehicleID(playerid);
- new ff[30], pqp;
- for(new i; i < MAX_VEH_CONCE; i++){
- format(ff, 30, CONCE, i);
- if(DOF2::FileExists(ff)){
- if(Conce[i][ID] == vehicleid){
- if(strcmp(Conce[i][Dono], NomePQP(playerid), true) == 0){
- SetPVarInt(playerid, "VehConce", Conce[i][ID]);
- SetPVarInt(playerid, "ArquivoID", i);
- ShowPlayerDialog(playerid, MENUVEICULO, DIALOG_STYLE_LIST, "Menu Veiculo", "Trancar Veiculo\nEstacionar o Veiculo\nVender o Veiculo", "Selecionar", "Cancelar");
- } else SendClientMessage(playerid, -1, "{FF4500}[ERRO] Voce nao e o dono desse veiculo!");
- pqp++;
- break;
- }
- }
- }
- if(pqp == 0) SendClientMessage(playerid, -1, "{FF4500}[ERRO] Voce nao esta dentro de um veiculo da concessionaria!");
- return 1;
- }
- VOID::DestruirVeiculos(playerid){
- new ff[30];
- for(new i; i < MAX_VEH_CONCE; i++){
- format(ff, 30, CONCE, i);
- if(DOF2::FileExists(ff)){
- if(strcmp(Conce[i][Dono], NomePQP(playerid), true) == 0){
- printf("[DEBUG PROKILLERPA] O Veiculo ID %d Modelo %d do jogador %s foi deletado apos o log-off!", Conce[i][ID], Conce[i][Modelo], NomePQP(playerid));
- DestroyVehicle(Conce[i][ID]);
- Conce[i][ID] = -1;
- }
- }
- }
- CarregouVeh[playerid] = false;
- return 1;
- }
- VOID::CarregarVeiculos(playerid){
- CarregouVeh[playerid] = true;
- new ff[30];
- for(new i; i < MAX_VEH_CONCE; i++){
- format(ff, 30, CONCE, i);
- if(DOF2::FileExists(ff)){
- format(Conce[i][Dono], MAX_PLAYER_NAME, DOF2::GetString(ff, "Dono"));
- if(strcmp(Conce[i][Dono], NomePQP(playerid), true) == 0){
- Conce[i][Valor] = DOF2::GetInt(ff, "Valor");
- Conce[i][Modelo] = DOF2::GetInt(ff, "Modelo");
- Conce[i][Cor1] = DOF2::GetInt(ff, "Cor1");
- Conce[i][Cor2] = DOF2::GetInt(ff, "Cor2");
- Conce[i][PosX] = DOF2::GetFloat(ff, "PosX");
- Conce[i][PosY] = DOF2::GetFloat(ff, "PosY");
- Conce[i][PosZ] = DOF2::GetFloat(ff, "PosZ");
- Conce[i][Angulo] = DOF2::GetFloat(ff, "Angulo");
- Conce[i][ID] = CreateVehicle(Conce[i][Modelo], Conce[i][PosX], Conce[i][PosY], Conce[i][PosZ], Conce[i][Angulo], Conce[i][Cor1], Conce[i][Cor2], 999999999999999);
- SetVehicleParamsEx(Conce[i][ID], false, false, false, true, false, false, false);
- printf("[DEBUG PROKILLERPA] O Veiculo ID %d Modelo %d do jogador %s foi spawnado no servidor com sucesso!", Conce[i][ID], Conce[i][Modelo], NomePQP(playerid));
- }
- }
- }
- return 1;
- }
- VOID::ComprarVeiculo(playerid, modelo, valor){
- if(CallRemoteFunction("CheckGranaPQP", "id", playerid, valor) == 0)
- return SendClientMessage(playerid, -1, "[ERRO] Voce nao possui dinheiro suficiente!");
- CallRemoteFunction("DescontarDinheiro", "id", playerid, valor);
- new ff[30];
- new cor1 = random(299);
- new cor2 = random(299);
- new r = random(9);
- for(new i; i < MAX_VEH_CONCE; i++){
- format(ff, 30, CONCE, i);
- if(!DOF2::FileExists(ff)){
- DOF2::CreateFile(ff);
- DOF2::SetString(ff, "Dono", NomePQP(playerid));
- DOF2::SetInt(ff, "Valor", valor);
- DOF2::SetInt(ff, "Modelo", modelo);
- DOF2::SetInt(ff, "Cor1", cor1);
- DOF2::SetInt(ff, "Cor2", cor2);
- if(modelo == 548 || modelo == 417 || modelo == 487){
- DOF2::SetFloat(ff, "PosX", 2156.7119);
- DOF2::SetFloat(ff, "PosY", -1160.5033);
- DOF2::SetFloat(ff, "PosZ", 23.9080+5);
- DOF2::SetFloat(ff, "Angulo", 273.3387);
- }
- else {
- DOF2::SetFloat(ff, "PosX", SpawnConce[r][0]);
- DOF2::SetFloat(ff, "PosY", SpawnConce[r][1]);
- DOF2::SetFloat(ff, "PosZ", SpawnConce[r][2]);
- DOF2::SetFloat(ff, "Angulo", SpawnConce[r][3]);
- }
- DOF2::SaveFile();
- format(Conce[i][Dono], 24, NomePQP(playerid));
- Conce[i][Valor] = valor;
- Conce[i][Modelo] = modelo;
- Conce[i][Cor1] = cor1;
- Conce[i][Cor2] = cor2;
- if(modelo == 548 || modelo == 417 || modelo == 487){
- Conce[i][PosX] = 2156.7119;
- Conce[i][PosY] = -1160.5033;
- Conce[i][PosZ] = 23.9080+5;
- Conce[i][Angulo] = 273.3387;
- }
- else {
- Conce[i][PosX] = SpawnConce[r][0];
- Conce[i][PosY] = SpawnConce[r][1];
- Conce[i][PosZ] = SpawnConce[r][2];
- Conce[i][Angulo] = SpawnConce[r][3];
- }
- Conce[i][ID] = CreateVehicle(Conce[i][Modelo], Conce[i][PosX], Conce[i][PosY], Conce[i][PosZ], Conce[i][Angulo], Conce[i][Cor1], Conce[i][Cor2], 999999999999999);
- SendClientMessage(playerid, -1, "{FF7F00}[CONCE] Veiculo comprado com sucesso! Va ate o estacionamento para busca-lo");
- break;
- }
- }
- return 1;
- }
- stock getVehicleName(vehmodel){
- new nameVeh[75];
- if (vehmodel < 400 || vehmodel > 611){
- strcat(nameVeh, "Nenhum");
- return nameVeh;
- }
- strcat(nameVeh, VehicleNames[vehmodel - 400]);
- return nameVeh;
- }
- stock NomePQP(playerid){
- new nome[MAX_PLAYER_NAME];
- GetPlayerName(playerid, nome, MAX_PLAYER_NAME);
- return nome;
- }
- stock Float:GetDisBetweenPlayerAndCar(p1ayerid,carid)
- {
- new Float:x1,Float:y1,Float:z1,Float:x2,Float:y2,Float:z2;
- if(!IsPlayerConnected(p1ayerid))
- {
- return -1.00;
- }
- GetPlayerPos(p1ayerid,x1,y1,z1);
- GetVehiclePos(carid,x2,y2,z2);
- return floatsqroot(floatpower(floatabs(floatsub(x2,x1)),2)+floatpower(floatabs(floatsub(y2,y1)),2)+floatpower(floatabs(floatsub(z2,z1)),2));
- }
- stock GetClosestVehicleToPlayer(playerid)
- {
- new x,Float:dis,Float:dis2,car;
- car = 0;
- dis = 99999.99;
- for ( x = 0; x < MAX_VEHICLES; x++ )
- {
- dis2 = GetDisBetweenPlayerAndCar(playerid,x);
- if(dis2 < dis && dis2 < 10.0)
- {
- dis = dis2;
- car = x;
- }
- }
- return car;
- }
Add Comment
Please, Sign In to add comment