Zaloguj się by uzyskać pełen dostęp. Nie masz jeszcze konta? Założ je już teraz w kilka sekund.

Wysłany: 2016-11-04, 21:05


ddaro11

Pawner SA:MP






Wiek: 27
Na forum: 4495 dni
Posty: 51
Nick w MP: ddaro11

Piwa: 20

Respekt: 40

Ostrzeżeń: 40%
Witam Posiadam skrypt na priv auta od Nick888 v1.1 chodzi o to ?e respia sie bo 2 auta zamiast jednego w wyznaczonym miejscu spawny przy kupnie spawnuje sie jeden czego to problem ?

Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-11-21, 19:09


Michatex

PAWN Dev.






Wiek: 24
Na forum: 3848 dni
Posty: 90
Nick w MP: Michatex

Piwa: 1153

Respekt: 80

Poszukaj czy czasami w kodzie nie ma duplikacji, b?d? ustawionej zmiennej odpowiadaj?cej za odrodzenie pojazdu.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-11-21, 20:24


Mac







Wiek: 28
Na forum: 4136 dni
Posty: 133
Nick w MP: Mac

Piwa: 27

Respekt: 130
Respekt: 130

Jak mamy Ci pom?c skoro nie poda?e? kodu? My?lisz, ?e ka?dy ogl?da Nick'a i zna jego kody na pami??? Pom?g?bym Ci, ale szklan? kule odda?em do polerki.

Postaw piwo autorowi tego posta
 

 
Wysłany: 2016-11-22, 00:17


ddaro11

Pawner SA:MP






Wiek: 27
Na forum: 4495 dni
Posty: 51
Nick w MP: ddaro11

Piwa: 20

Respekt: 40

Ostrzeżeń: 40%
Sorka :( ju? podaje kod :mrgreen:

Kod:

#include <a_samp>
#include <dcmd>
#include <dfile>
#include <GetVehicleColor>

#define VERSION "Beta 1.2"

//Ustawienia skryptu
#define MAX_PLAYER_CARS 10 //Ilosc pojazdow pro gracz(Nie przesadzaj!)

//Dialogi
#define DIALOG_Salon_BUY 1
#define DIALOG_Salon_PANEL1 2
#define DIALOG_Salon_PANEL2 3
#define DIALOG_Salon_PANEL3 4

//Sciezka plikow pojazdow
#define PRIVCARPATH "/PrivCars/"

enum SalonData
{
vehID,
Float:vehX,
Float:vehY,
Float:vehZ,
Float:vehRot,
vehCena,
Float:vehSpawnX,
Float:vehSpawnY,
Float:vehSpawnZ,
Float:vehSpawnRot,
};

//POJAZDY W SALONIE
new SalonCars[][SalonData] =
{
//Modele znajdziesz tu(Jako "Vehicle ID"): http://weedarr.wikidot.com/veh

//MODEL X Y Z ROT CENA SPAWNX SPAWNY SPAWNZ SPAWNROT
{411,-1955.1764,304.9052,41.0471,356.2956, 10458, -1946.2059,257.6752,41.0471,48.0175},
{451,760.5490,-1334.0757,13.2632,178.1356, 9451, 780.4758,-1346.6498,13.2578,88.8131},
{429,753.8185,-1333.5018,13.2645,180.0635, 8541, 780.4758,-1346.6498,13.2578,88.8131},
{444,745.1850,-1333.7697,13.2639,179.2652, 13000, 780.4758,-1346.6498,13.2578,88.8131},
{462,738.9211,-1333.6132,13.2642,180.2306, 2000, 780.4758,-1346.6498,13.2578,88.8131},
{429,744.9489,-1353.0098,13.2219,359.8221, 4850, 780.4758,-1346.6498,13.2578,88.8131},
{451,749.9804,-1353.8097,13.2219,1.3309, 1545, 780.4758,-1346.6498,13.2578,88.8131},
{522,760.3621,-1353.6334,13.2410,317.2629, 11000, 780.4758,-1346.6498,13.2578,88.8131}

//Ostatnia linijka bez przecinka!
};

enum PlayerPrivCarData
{
bool:IsPrivate,
ownerID,
vehIndex,
WartoscPojazdu,
Float:parkX,
Float:parkY,
Float:parkZ,
Float:parkRot

};
enum SalonCarsIDsData
{
bool:isForSell,
cena,
Float:SpawnX,
Float:SpawnY,
Float:SpawnZ,
Float:SpawnRot,
Text3D:tdtext
};
enum PlayerData
{
SelectedPrivateVehicle,
bool:IsLocatingVehicle
};
new PC[MAX_VEHICLES][PlayerPrivCarData];
new SalonCarsIDs[MAX_VEHICLES][SalonCarsIDsData];
new Player[MAX_PLAYERS][PlayerData];

new bool:Scriptactivated;

new VehicleNames[][] = {
"Cadillac ", "Dacia ", "Bugatti ", "Scania", "Volvo", "Trabant", "UAZ", "Kamaz", "Trashmaster", "Maybach ", "Manana",
"Brabus", "Voodoo", "Ascari", "DMC", "Dodge", "Karetka", "Leviathan", "Moonbeam", "Esperanto", "Taxi", "Washington", "Bobcat",
"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", "FSO", "BMX", "Burrito",
"Camper", "Marquis", "Baggage", "Dozer", "Maverick", "News Chopper", "Rancher", "FBI Rancher", "Virgo", "Greenwood", "Jetmax", "Hotring",
"BMW X5", "Blista Compact", "PoliceMaverick", "Boxvillde", "Benson", "Mesa", "RC Goblin", "Hotring Racer A", "Hotring Racer B",
"Bloodring Banger", "Rancher", "Super GT", "Hyundai", "Journey", "Bike", "MountainBike", "Beagle", "Cropduster","Stunt", "Baker",
"DAF", "Nebula", "Majestic", "Buccaneer", "Shamal", "Hydra", "FCR-900", "NRG-500", "HPV1000", "CementCar", "Tow Truck", "Fortune",
"Cadrona", "FBI Truck", "Willard", "Forklift", "Tractor", "Combine", "Fel tzer", "Remington", "Slamvan", "BLADe", "Freight", "Streak",
"Vortex", "Vincent", "Jaguar", "Clover", "Sadler", "Straz Pozarna LA", "Hustler", "Intruder", "Primo", "Cargobob", "Tampa", "Sunrise", "Merit",
"Utility", "Nevada", "Yosemite", "Windsor", "Monster A", "Monster B", "Uranus", "Jester", "Ferrari", "Stratum", "Elegy", "Raindance",
"RC Tiger", "FIAT", "Tahoma", "Savanna", "Bandito", "Freight Flat", "Streak Carriage", "Kart", "Mower", "Dune", "Sweeper", "Broadway",
"Tornado", "AT-400", "DFT-30", "Huntley", "Stafford", "BF-400", "News Van", "Tug", "Trailer 3", "Emperor", "Wayfarer", "Euros", "Hotdog",
"Club", "Freight Carriage", "Trailer 4", "Andromada", "Dodo", "RC Cam", "Launch", "PoliceCar (LSPD)", "PoliceCar (SFPD)",
"PoliceCar (LVPD)", "Ranger", "Picador", "S.W.A.T", "Alpha", "Datsun", "Glendale", "Sadler", "Luggage Trailer A",
"Luggage Trailer B", "Stairs", "Boxville", "Tiller", "Utility Trailer" };

public OnGameModeInit()
{
LoadScript(false);
return 1;
}

public OnGameModeExit()
{
OnFilterScriptExit();
return 1;
}

public OnFilterScriptInit()
{
LoadScript(true);
return 1;
}

public OnPlayerConnect(playerid)
{
if(Scriptactivated)
{
for(new index; index < MAX_PLAYER_CARS; index++)
LoadPlayerPrivateVehicle(playerid, index);
}
return 1;
}

public OnPlayerDisconnect(playerid)
{
if(Scriptactivated)
{
for(new index; index < MAX_PLAYER_CARS; index++)
DeSpawnPlayerPrivateVehicle(playerid, index);
}
return 1;
}

public OnVehicleSpawn(vehicleid)
{
if(Scriptactivated)
{
if(PC[vehicleid][IsPrivate])
{
SetVehiclePos(vehicleid, PC[vehicleid][parkX], PC[vehicleid][parkY], PC[vehicleid][parkZ]);
SetVehicleZAngle(vehicleid, PC[vehicleid][parkRot]);
}
}
return 1;
}

public OnFilterScriptExit()
{
if(Scriptactivated)
{
for(new i; i <= GetPlayerPoolSize(); i++)
{
for(new index; index < MAX_PLAYER_CARS; index++)
DeSpawnPlayerPrivateVehicle(i, index);
}
for(new i; i <= GetVehiclePoolSize(); i++)
{
if(SalonCarsIDs[i][isForSell])
{
Delete3DTextLabel(SalonCarsIDs[i][tdtext]);
DestroyVehicle(i);
SalonCarsIDs[i][isForSell] = false;
}
}
}
return 1;
}

public OnPlayerStateChange(playerid, newstate, oldstate)
{
if(Scriptactivated)
{
new string[300];
if(newstate & PLAYER_STATE_DRIVER)
{
new vehicleid = GetPlayerVehicleID(playerid);
if(SalonCarsIDs[vehicleid][isForSell])
{
format(string, sizeof string, "{FFFFFF}Czy na pewno chcesz kupic pojazd {FFFF00}%s{FFFFFF}?\nCena zakupu: {00FF00}%i$", VehicleNames[GetVehicleModel(vehicleid) - 400], SalonCarsIDs[vehicleid][cena]);
ShowPlayerDialog(playerid, DIALOG_Salon_BUY, DIALOG_STYLE_MSGBOX, "Salon Pojazdow", string, "Tak", "Nie");
}
else if(PC[vehicleid][IsPrivate] && PC[vehicleid][ownerID] != playerid)
RemovePlayerFromVehicle(playerid),
SendClientMessage(playerid, 0x00FF00FF, "{FF0000}Salon: {FFFFFF}Ten pojazd nie nalezy do Ciebie!");
}
}
return 1;
}

public OnPlayerCommandText(playerid, cmdtext[])
{
if(Scriptactivated)
{
dcmd(autko, 7, cmdtext);
}
return 0;
}

dcmd_autko(playerid, params[])
{
#pragma unused params
new lstr[1024] = "{00FFFF}ID\t{FF00FF}Model\t{FF0000}Index\n", str[184];
for(new i; i <= GetVehiclePoolSize(); i++)
{
if(PC[i][IsPrivate] && PC[i][ownerID] == playerid)
{
if(IsPlayerInAnyVehicle(playerid) && GetPlayerVehicleID(playerid) == i)
format(str, sizeof str, "{00FFFF}%i\t{00FF00}%s\t{FF0000}%i\n", i, VehicleNames[GetVehicleModel(i) - 400], PC[i][vehIndex]);
else
format(str, sizeof str, "{00FFFF}%i\t{FF00FF}%s\t{FF0000}%i\n", i, VehicleNames[GetVehicleModel(i) - 400], PC[i][vehIndex]);
strcat(lstr, str);
}
}
ShowPlayerDialog(playerid, DIALOG_Salon_PANEL1, DIALOG_STYLE_TABLIST_HEADERS, "Panel Prywatnych Pojazdow - Wybierz pojazd", lstr, "Wybierz", "Wyjdz");
return 1;
}

public OnPlayerEnterCheckpoint(playerid)
{
if(Scriptactivated)
{
if(Player[playerid][IsLocatingVehicle])
DisablePlayerCheckpoint(playerid),
Player[playerid][IsLocatingVehicle] = false;
}
return 1;
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(Scriptactivated)
{
new vehicleid = GetPlayerVehicleID(playerid);
new str[300];
if(dialogid == DIALOG_Salon_PANEL3)
{
if(response)
{
vehicleid = Player[playerid][SelectedPrivateVehicle];
GivePlayerMoney(playerid, (PC[vehicleid][WartoscPojazdu] / 2));
DeletePlayerPrivateVehicle(playerid, PC[vehicleid][vehIndex]);
SendClientMessage(playerid, 0x00FF00FF, "{00FF00}Salon: {FFFFFF}Pojazd zostal pomyslnie sprzedany!");
}
else dcmd_autko(playerid, #);
}
if(dialogid == DIALOG_Salon_PANEL2)
{
if(response)
{
vehicleid = Player[playerid][SelectedPrivateVehicle];
if(listitem == 0) //Lokalizuj
{
new Float:x, Float:y, Float:z;
GetVehiclePos(vehicleid, x, y, z);
SetPlayerCheckpoint(playerid, x, y, z, 3);
Player[playerid][IsLocatingVehicle] = true;
SendClientMessage(playerid, 0x00FF00FF, "{00FF00}Salon: {FFFFFF}Pojazd zostal pomyslnie zlokalizowany!");
}
if(listitem == 1) //Parkuj
{
if(IsPlayerInPrivateCar(playerid, Player[playerid][SelectedPrivateVehicle]))
{
new Float:x, Float:y, Float:z, Float:rot;
GetVehiclePos(vehicleid, x, y, z);
GetVehicleZAngle(vehicleid, rot);
PC[vehicleid][parkX] = x;
PC[vehicleid][parkY] = y;
PC[vehicleid][parkZ] = z;
PC[vehicleid][parkRot] = rot;
SavePlayerPrivateVehicle(playerid, PC[vehicleid][vehIndex]);
SendClientMessage(playerid, 0x00FF00FF, "{00FF00}Salon: {FFFFFF}Pojazd zostal pomyslnie zaparkowany!");
}
else SendClientMessage(playerid, 0x00FF00FF, "{FF0000}Salon: {FFFFFF}Nie jestes w wybranym prywatnym pojezdzie!");
}
if(listitem == 2) //Sprzedaj
{
format(str, sizeof str, "{FFFFFF}Czy na pewno chcesz sprzedac ten pojazd za polowe wartosci?\nCena sprzedazy: {00FF00}%i$", (PC[vehicleid][WartoscPojazdu] / 2));
ShowPlayerDialog(playerid, DIALOG_Salon_PANEL3, DIALOG_STYLE_MSGBOX, "Sprzedaz prywatnego pojazdu", str, "Tak", "Nie");
}
if(listitem == 3) //Respawn
{
SetVehicleToRespawn(vehicleid);
SendClientMessage(playerid, 0x00FF00FF, "{00FF00}Salon: {FFFFFF}Pojazd zostal pomyslnie zrespawnowany!");
}
}
else dcmd_autko(playerid, #);
}
if(dialogid == DIALOG_Salon_PANEL1)
{
if(response)
{
new TempIndex;
for(new i; i <= GetVehiclePoolSize(); i++)
{
if(PC[i][IsPrivate] && PC[i][ownerID] == playerid) TempIndex++;
if((listitem + 1) == TempIndex)
{
Player[playerid][SelectedPrivateVehicle] = i;
format(str, sizeof str, "{FFFF00}Wybrany Pojazd: {00FF00}%s {FFFF00}| ID: {00FFFF}%i", VehicleNames[GetVehicleModel(i) - 400], i);
ShowPlayerDialog(playerid, DIALOG_Salon_PANEL2, DIALOG_STYLE_LIST, str, "Lokalizuj\nParkuj\nSprzedaj\nRespawn", "Wybierz", "Wyjdz");
return 1;
}
}
}
}
if(dialogid == DIALOG_Salon_BUY)
{
if(SalonCarsIDs[vehicleid][isForSell])
{
if(response)
{
if(GetPlayerMoney(playerid) >= SalonCarsIDs[vehicleid][cena])
{
if(CreatePlayerPrivateVehicle(playerid, vehicleid, SalonCarsIDs[vehicleid][cena]))
SendClientMessage(playerid, 0x00FF00FF, "{00FF00}Salon: {FFFFFF}Pojazd zostal pomyslnie zakupiony! Przeparkuj go!"),
SendClientMessage(playerid, 0x00FF00FF, "{00FF00}Salon: {FFFFFF}Panel pojazdu znajdziesz pod komende /autko!");
else SendClientMessage(playerid, 0xFF0000FF, "{FF0000}Salon: {FFFFFF}Osiagnieto maksymalna ilosc zakupionych pojazdow!");

RemovePlayerFromVehicle(playerid);
}
else SendClientMessage(playerid, 0xFF0000FF, "{FF0000}Salon: {FFFFFF}Nie masz tyle kasy!"),
RemovePlayerFromVehicle(playerid);
}
else
{
RemovePlayerFromVehicle(playerid);
}
}
}
}
return 0;
}

forward bool:IsPlayerInPrivateCar(playerid, privcarid);
stock bool:IsPlayerInPrivateCar(playerid, privcarid)
{
new vehicleid = GetPlayerVehicleID(playerid);
if(IsPlayerInAnyVehicle(playerid) && vehicleid == privcarid)
return true;
return false;
}

stock LoadScript(bool:withplayercars)
{
new string[300];
Scriptactivated = false;
new maxplayerscar = MAX_PLAYER_CARS;

printf("\n----------System prywatnych pojazdow by Nickk888 | Wersja: %s---------\n", VERSION);
print("[NPRIVCAR]Wczytuje i sprawdzam...");
if(!dfile_FileExists(PRIVCARPATH)) return print("[NPRIVCAR - BLAD]Folder 'PrivCars' nie zostal odnaleziony! Prosze stworzyc!");
if(maxplayerscar < 1 || maxplayerscar > 25) return print("[NPRIVCAR - BLAD]Ilosc pojazdow per gracz jest niepoprawny! Musi byc pomiedzy 1-25!");

print("[NPRIVCAR]Skrypt zostal pomyslnie wczytany! Dziekuje za wybranie skryptu 'NPRIVCAR'!");
print("\n-------------------------------------------------------------------------\n");

Scriptactivated = true;

for(new i; i < sizeof SalonCars; i++)
{
new id = CreateVehicle(SalonCars[i][vehID], SalonCars[i][vehX], SalonCars[i][vehY], SalonCars[i][vehZ], SalonCars[i][vehRot], random(1), random(1), 1);
SalonCarsIDs[id][isForSell] = true;
SalonCarsIDs[id][cena] = SalonCars[i][vehCena];
SalonCarsIDs[id][SpawnX] = SalonCars[i][vehSpawnX];
SalonCarsIDs[id][SpawnY] = SalonCars[i][vehSpawnY];
SalonCarsIDs[id][SpawnZ] = SalonCars[i][vehSpawnZ];
SalonCarsIDs[id][SpawnRot] = SalonCars[i][vehSpawnRot];
format(string, sizeof string, "{FFFF00}%s\n{FFFFFF}Cena: {00FF00}%i$\n{FFFFFF}Wejdz by kupic!", VehicleNames[GetVehicleModel(id) - 400], SalonCarsIDs[id][cena]);
SalonCarsIDs[id][tdtext] = Create3DTextLabel(string, -1, 0.0, 0.0, 0.0, 30, 0, 0);
Attach3DTextLabelToVehicle(SalonCarsIDs[id][tdtext], id, 0.0, 0.0, 0.0);
}

if(withplayercars)
{
for(new i; i <= GetPlayerPoolSize(); i++)
for(new index; index < MAX_PLAYER_CARS; index++)
LoadPlayerPrivateVehicle(i, index);
}
return true;
}

stock GetFreeVehicleIndex(playerid)
{
new string[300], pname[64];
GetPlayerName(playerid, pname, 64);
format(string, sizeof string, PRIVCARPATH"%s_CARS.ini", pname);
if(dfile_FileExists(string))
{
dfile_Open(string);
for(new i; i < MAX_PLAYER_CARS; i++)
{
format(string, sizeof string, "%i_Created", i);
if(dfile_ReadBool(string) == false)
{
dfile_CloseFile();
return i;
}
}
dfile_CloseFile();
return -1;
}
return -1;
}

forward bool:DeletePlayerPrivateVehicle(playerid, index);
stock bool:DeletePlayerPrivateVehicle(playerid, index)
{
new string[300], pname[64], vehicleid;
GetPlayerName(playerid, pname, 64);
format(string, sizeof string, PRIVCARPATH"%s_CARS.ini", pname);
for(new i; i <= GetVehiclePoolSize(); i++)
if(PC[i][IsPrivate] && PC[i][vehIndex] == index && PC[i][ownerID] == playerid) vehicleid = i;
if(dfile_FileExists(string))
{
//
dfile_Open(string);
format(string, sizeof string, "%i_Created", index);
dfile_WriteBool(string, false);
//

dfile_SaveFile();
dfile_CloseFile();

PC[vehicleid][IsPrivate] = false;
DestroyVehicle(vehicleid);
return true;
}
return false;
}

forward bool:SavePlayerPrivateVehicle(playerid, index);
stock bool:SavePlayerPrivateVehicle(playerid, index)
{
new string[300], pname[64], vehicleid, color1, color2;
GetPlayerName(playerid, pname, 64);
format(string, sizeof string, PRIVCARPATH"%s_CARS.ini", pname);
for(new i; i <= GetVehiclePoolSize(); i++)
if(PC[i][IsPrivate] && PC[i][vehIndex] == index && PC[i][ownerID] == playerid) vehicleid = i;
GetVehicleColor(vehicleid, color1, color2);
if(dfile_FileExists(string))
{
//
dfile_Open(string);
format(string, sizeof string, "%i_X", index);
dfile_WriteFloat(string, PC[vehicleid][parkX]);
format(string, sizeof string, "%i_Y", index);
dfile_WriteFloat(string, PC[vehicleid][parkY]);
format(string, sizeof string, "%i_Z", index);
dfile_WriteFloat(string, PC[vehicleid][parkZ]);
format(string, sizeof string, "%i_Rot", index);
dfile_WriteFloat(string, PC[vehicleid][parkRot]);
format(string, sizeof string, "%i_Color1", index);
dfile_WriteInt(string, color1);
format(string, sizeof string, "%i_Color2", index);
dfile_WriteInt(string, color2);

format(string, sizeof string, "%i_ModSpoiler", index);
dfile_WriteInt(string, GetVehicleComponentInSlot(vehicleid, CARMODTYPE_SPOILER));
format(string, sizeof string, "%i_ModHood", index);
dfile_WriteInt(string, GetVehicleComponentInSlot(vehicleid, CARMODTYPE_HOOD));
format(string, sizeof string, "%i_ModRoof", index);
dfile_WriteInt(string, GetVehicleComponentInSlot(vehicleid, CARMODTYPE_ROOF));
format(string, sizeof string, "%i_ModSideskirt", index);
dfile_WriteInt(string, GetVehicleComponentInSlot(vehicleid, CARMODTYPE_SIDESKIRT));
format(string, sizeof string, "%i_ModLamps", index);
dfile_WriteInt(string, GetVehicleComponentInSlot(vehicleid, CARMODTYPE_LAMPS));
format(string, sizeof string, "%i_ModNitro", index);
dfile_WriteInt(string, GetVehicleComponentInSlot(vehicleid, CARMODTYPE_NITRO));
format(string, sizeof string, "%i_ModExhaust", index);
dfile_WriteInt(string, GetVehicleComponentInSlot(vehicleid, CARMODTYPE_EXHAUST));
format(string, sizeof string, "%i_ModWheels", index);
dfile_WriteInt(string, GetVehicleComponentInSlot(vehicleid, CARMODTYPE_WHEELS));
format(string, sizeof string, "%i_ModStereo", index);
dfile_WriteInt(string, GetVehicleComponentInSlot(vehicleid, CARMODTYPE_STEREO));
format(string, sizeof string, "%i_ModHydraulics", index);
dfile_WriteInt(string, GetVehicleComponentInSlot(vehicleid, CARMODTYPE_HYDRAULICS));
format(string, sizeof string, "%i_ModFrontbumper", index);
dfile_WriteInt(string, GetVehicleComponentInSlot(vehicleid, CARMODTYPE_FRONT_BUMPER));
format(string, sizeof string, "%i_ModRearbumper", index);
dfile_WriteInt(string, GetVehicleComponentInSlot(vehicleid, CARMODTYPE_REAR_BUMPER));
format(string, sizeof string, "%i_ModVentright", index);
dfile_WriteInt(string, GetVehicleComponentInSlot(vehicleid, CARMODTYPE_VENT_RIGHT));
format(string, sizeof string, "%i_ModVentleft", index);
dfile_WriteInt(string, GetVehicleComponentInSlot(vehicleid, CARMODTYPE_VENT_LEFT));
//

dfile_SaveFile();
dfile_CloseFile();

return true;
}
return false;
}

forward bool:LoadPlayerPrivateVehicle(playerid, index);
stock bool:LoadPlayerPrivateVehicle(playerid, index)
{
new string[300], pname[64];
GetPlayerName(playerid, pname, 64);
format(string, sizeof string, PRIVCARPATH"%s_CARS.ini", pname);
if(dfile_FileExists(string))
{
//
dfile_Open(string);
format(string, sizeof string, "%i_Created", index);
if(dfile_ReadBool(string) == true)
{
format(string, sizeof string, "%i_Model", index);
new model = dfile_ReadInt(string);
format(string, sizeof string, "%i_X", index);
new Float:x = dfile_ReadFloat(string);
format(string, sizeof string, "%i_Y", index);
new Float:y = dfile_ReadFloat(string);
format(string, sizeof string, "%i_Z", index);
new Float:z = dfile_ReadFloat(string);
format(string, sizeof string, "%i_Rot", index);
new Float:rot = dfile_ReadFloat(string);
format(string, sizeof string, "%i_Color1", index);
new c1 = dfile_ReadInt(string);
format(string, sizeof string, "%i_Color2", index);
new c2 = dfile_ReadInt(string);

new vehicleid = CreateVehicle(model, x, y, z, rot, c1, c2, -1);

format(string, sizeof string, "%i_ModSpoiler", index);
AddVehicleComponent(vehicleid, dfile_ReadInt(string));
format(string, sizeof string, "%i_ModHood", index);
AddVehicleComponent(vehicleid, dfile_ReadInt(string));
format(string, sizeof string, "%i_ModRoof", index);
AddVehicleComponent(vehicleid, dfile_ReadInt(string));
format(string, sizeof string, "%i_ModSideskirt", index);
AddVehicleComponent(vehicleid, dfile_ReadInt(string));
format(string, sizeof string, "%i_ModLamps", index);
AddVehicleComponent(vehicleid, dfile_ReadInt(string));
format(string, sizeof string, "%i_ModNitro", index);
AddVehicleComponent(vehicleid, dfile_ReadInt(string));
format(string, sizeof string, "%i_ModExhaust", index);
AddVehicleComponent(vehicleid, dfile_ReadInt(string));
format(string, sizeof string, "%i_ModWheels", index);
AddVehicleComponent(vehicleid, dfile_ReadInt(string));
format(string, sizeof string, "%i_ModStereo", index);
AddVehicleComponent(vehicleid, dfile_ReadInt(string));
format(string, sizeof string, "%i_ModHydraulics", index);
AddVehicleComponent(vehicleid, dfile_ReadInt(string));
format(string, sizeof string, "%i_ModFrontbumper", index);
AddVehicleComponent(vehicleid, dfile_ReadInt(string));
format(string, sizeof string, "%i_ModRearbumper", index);
AddVehicleComponent(vehicleid, dfile_ReadInt(string));
format(string, sizeof string, "%i_ModVentright", index);
AddVehicleComponent(vehicleid, dfile_ReadInt(string));
format(string, sizeof string, "%i_ModVentleft", index);
AddVehicleComponent(vehicleid, dfile_ReadInt(string));

PC[vehicleid][IsPrivate] = true;
PC[vehicleid][vehIndex] = index;
PC[vehicleid][ownerID] = playerid;
PC[vehicleid][parkX] = x;
PC[vehicleid][parkY] = y;
PC[vehicleid][parkZ] = z;
PC[vehicleid][parkRot] = rot;
format(string, sizeof string, "%i_Wartosc", index);
PC[vehicleid][WartoscPojazdu] = dfile_ReadInt(string);
}
//
dfile_CloseFile();
return true;
}
return false;
}

forward bool:CreatePlayerPrivateVehicle(playerid, vehicleid, wartoscpojazdu);
stock bool:CreatePlayerPrivateVehicle(playerid, vehicleid, wartoscpojazdu)
{
new string[300], pname[64], index;
GetPlayerName(playerid, pname, 64);
format(string, sizeof string, PRIVCARPATH"%s_CARS.ini", pname);
if(!dfile_FileExists(string))
{
dfile_Create(string);
index = GetFreeVehicleIndex(playerid);
if(index == -1) return false;

//
dfile_Open(string);
format(string, sizeof string, "%i_Created", index);
dfile_WriteBool(string, true);
format(string, sizeof string, "%i_Model", index);
dfile_WriteInt(string, GetVehicleModel(vehicleid));
format(string, sizeof string, "%i_X", index);
dfile_WriteFloat(string, SalonCarsIDs[vehicleid][SpawnX]);
format(string, sizeof string, "%i_Y", index);
dfile_WriteFloat(string, SalonCarsIDs[vehicleid][SpawnY]);
format(string, sizeof string, "%i_Z", index);
dfile_WriteFloat(string, SalonCarsIDs[vehicleid][SpawnZ] + 1.0);
format(string, sizeof string, "%i_Rot", index);
dfile_WriteFloat(string, SalonCarsIDs[vehicleid][SpawnRot]);
format(string, sizeof string, "%i_Color1", index);
dfile_WriteInt(string, random(350));
format(string, sizeof string, "%i_Color2", index);
dfile_WriteInt(string, random(350));
format(string, sizeof string, "%i_Wartosc", index);
dfile_WriteInt(string, wartoscpojazdu);
format(string, sizeof string, "%i_ModSpoiler", index);
dfile_WriteInt(string, 0);
format(string, sizeof string, "%i_ModHood", index);
dfile_WriteInt(string, 0);
format(string, sizeof string, "%i_ModRoof", index);
dfile_WriteInt(string, 0);
format(string, sizeof string, "%i_ModSideskirt", index);
dfile_WriteInt(string, 0);
format(string, sizeof string, "%i_ModLamps", index);
dfile_WriteInt(string, 0);
format(string, sizeof string, "%i_ModNitro", index);
dfile_WriteInt(string, 0);
format(string, sizeof string, "%i_ModExhaust", index);
dfile_WriteInt(string, 0);
format(string, sizeof string, "%i_ModWheels", index);
dfile_WriteInt(string, 0);
format(string, sizeof string, "%i_ModStereo", index);
dfile_WriteInt(string, 0);
format(string, sizeof string, "%i_ModHydraulics", index);
dfile_WriteInt(string, 0);
format(string, sizeof string, "%i_ModFrontbumper", index);
dfile_WriteInt(string, 0);
format(string, sizeof string, "%i_ModRearbumper", index);
dfile_WriteInt(string, 0);
format(string, sizeof string, "%i_ModVentright", index);
dfile_WriteInt(string, 0);
format(string, sizeof string, "%i_ModVentleft", index);
dfile_WriteInt(string, 0);
//

dfile_SaveFile();
dfile_CloseFile();

GivePlayerMoney(playerid, -wartoscpojazdu);
LoadPlayerPrivateVehicle(playerid, index);
return true;
}
else if(dfile_FileExists(string))
{
index = GetFreeVehicleIndex(playerid);
if(index == -1) return false;

//
dfile_Open(string);
format(string, sizeof string, "%i_Created", index);
dfile_WriteBool(string, true);
format(string, sizeof string, "%i_Model", index);
dfile_WriteInt(string, GetVehicleModel(vehicleid));
format(string, sizeof string, "%i_X", index);
dfile_WriteFloat(string, 782.6724);
format(string, sizeof string, "%i_Y", index);
dfile_WriteFloat(string, -1356.6254);
format(string, sizeof string, "%i_Z", index);
dfile_WriteFloat(string, 13.2605);
format(string, sizeof string, "%i_Rot", index);
dfile_WriteFloat(string, 88.9467);
format(string, sizeof string, "%i_Color1", index);
dfile_WriteInt(string, random(350));
format(string, sizeof string, "%i_Color2", index);
dfile_WriteInt(string, random(350));
format(string, sizeof string, "%i_Wartosc", index);
dfile_WriteInt(string, wartoscpojazdu);
format(string, sizeof string, "%i_ModSpoiler", index);
dfile_WriteInt(string, 0);
format(string, sizeof string, "%i_ModHood", index);
dfile_WriteInt(string, 0);
format(string, sizeof string, "%i_ModRoof", index);
dfile_WriteInt(string, 0);
format(string, sizeof string, "%i_ModSideskirt", index);
dfile_WriteInt(string, 0);
format(string, sizeof string, "%i_ModLamps", index);
dfile_WriteInt(string, 0);
format(string, sizeof string, "%i_ModNitro", index);
dfile_WriteInt(string, 0);
format(string, sizeof string, "%i_ModExhaust", index);
dfile_WriteInt(string, 0);
format(string, sizeof string, "%i_ModWheels", index);
dfile_WriteInt(string, 0);
format(string, sizeof string, "%i_ModStereo", index);
dfile_WriteInt(string, 0);
format(string, sizeof string, "%i_ModHydraulics", index);
dfile_WriteInt(string, 0);
format(string, sizeof string, "%i_ModFrontbumper", index);
dfile_WriteInt(string, 0);
format(string, sizeof string, "%i_ModRearbumper", index);
dfile_WriteInt(string, 0);
format(string, sizeof string, "%i_ModVentright", index);
dfile_WriteInt(string, 0);
format(string, sizeof string, "%i_ModVentleft", index);
dfile_WriteInt(string, 0);
//

dfile_SaveFile();
dfile_CloseFile();

GivePlayerMoney(playerid, -wartoscpojazdu);
LoadPlayerPrivateVehicle(playerid, index);
return true;
}
return false;
}

stock DeSpawnPlayerPrivateVehicle(playerid, index)
{
for(new i; i <= GetVehiclePoolSize(); i++)
{
if(PC[i][IsPrivate] && PC[i][vehIndex] == index && PC[i][ownerID] == playerid)
{
DestroyVehicle(i);
PC[i][IsPrivate] = false;
PC[i][vehIndex] = -1;
PC[i][ownerID] = -1;
PC[i][parkX] = 0.0;
PC[i][parkY] = 0.0;
PC[i][parkZ] = 0.0;
PC[i][parkRot] = 0.0;
return 1;
}
}
return 0;
}


Postaw piwo autorowi tego posta
 

 
Tagi: nick888 :: skrypt :: privcar
Anonymous





Na forum: 245 dni
Posty: 1



Anonymous Koniecznie zajrzyj na:






Skocz do:  
Wyświetl posty z ostatnich:   
GTAONLINE.PL » JĘZYKI PROGRAMOWANIA » PAWN Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi

Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Dodaj temat do Ulubionych
Wersja do druku