Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <a_samp>
- #include <zcmd>
- //Anderes:
- #define MAX_GELADENE_AUTOS 250
- new VID[MAX_PLAYERS], FE[MAX_PLAYERS], FZ[MAX_PLAYERS], DLay[MAX_PLAYERS];
- //Dialoge:
- #define DIALOG_ERSTELLEN 250
- #define DIALOG_FARBEE 500
- #define DIALOG_FARBEZ 750
- #define DIALOG_DELAY 1000
- new DB:Autos;
- enum SpawnedCars {
- ID,
- CarID,
- FarbeE,
- FarbeZ,
- Float:PosX,
- Float:PosY,
- Float:PosZ,
- Float:PosA,
- RespawnDelay
- }
- new SCInfo[MAX_PLAYERS][SpawnedCars];
- public OnFilterScriptInit()
- {
- Autos = db_open("Autos.db");
- db_query(Autos, "CREATE TABLE IF NOT EXISTS `Autos`(`ID` INTEGER PRIMARY KEY AUTOINCREMENT,`CarID`,`PosX`,`PosY`,`PosZ`,`PosA`,`FarbeE`,`FarbeZ`,`RespawnDelay`)");
- new str[512],DBResult:Result;
- for(new i=0;i<MAX_GELADENE_AUTOS;i++)
- {
- format(str,sizeof(str),"SELECT * FROM `Autos` WHERE `ID` = '%i'", i);
- Result=db_query(Autos,str);
- if(db_num_rows(Result) > 0)
- {
- db_get_field_assoc(Result,"ID",str,sizeof(str));
- SCInfo[i][ID] = strval(str);
- db_get_field_assoc(Result,"CarID",str,sizeof(str));
- SCInfo[i][CarID] = strval(str);
- db_get_field_assoc(Result,"FarbeE", str,sizeof(str));
- SCInfo[i][FarbeE] = strval(str);
- db_get_field_assoc(Result,"FarbeZ",str,sizeof(str));
- SCInfo[i][FarbeZ] = strval(str);
- db_get_field_assoc(Result,"PosX",str,sizeof(str));
- SCInfo[i][PosX] = floatstr(str);
- db_get_field_assoc(Result,"PosY",str,sizeof(str));
- SCInfo[i][PosY] = floatstr(str);
- db_get_field_assoc(Result,"PosZ",str,sizeof(str));
- SCInfo[i][PosZ] = floatstr(str);
- db_get_field_assoc(Result,"PosA",str,sizeof(str));
- SCInfo[i][PosA] = floatstr(str);
- db_get_field_assoc(Result,"RespawnDelay",str,sizeof(str));
- SCInfo[i][RespawnDelay] = strval(str);
- AddStaticVehicleEx(SCInfo[i][CarID],SCInfo[i][PosX],SCInfo[i][PosY],SCInfo[i][PosZ],SCInfo[i][PosA],SCInfo[i][FarbeE],SCInfo[i][FarbeZ],SCInfo[i][RespawnDelay]);
- }
- }
- print(" ");
- print("\t\t|=========================|");
- print("\t\t| Car-Saver 1.0 |");
- print("\t\t| Ingame CarSaver |");
- print("\t\t| Geschrieben von: BOMBER |");
- print("\t\t|-------------------------|");
- print("\t\t| |");
- print("\t\t|=========================|");
- print(" ");
- return 1;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- if(dialogid == DIALOG_ERSTELLEN)
- {
- if(response)
- {
- VID[playerid] = strval(inputtext);
- if(strval(inputtext) < 400 || strval(inputtext) > 610)return SendClientMessage(playerid,-1,"Ungültige Eingabe");
- if(strlen(inputtext) < 1 || strlen(inputtext) > 3)return SendClientMessage(playerid,-1,"Ungültige Eingabe");
- ShowPlayerDialog(playerid, DIALOG_FARBEE, DIALOG_STYLE_INPUT, "Farbwahl", "Welche Farbe soll das Auto haben? 0 = Schwarz, 1 = Weiß.\nWeitere Farben findest du im SA-MP Wiki!", "Weiter", "Abbrechen");
- }
- }
- if(dialogid == DIALOG_FARBEE)
- {
- if(response)
- {
- if(strlen(inputtext) < 1 || strlen(inputtext) > 3)return SendClientMessage(playerid,-1,"Ungültige Eingabe");
- FE[playerid] = strval(inputtext);
- ShowPlayerDialog(playerid, DIALOG_FARBEZ,DIALOG_STYLE_INPUT,"Farbwahl", "Welche Farbe möchtest du als zweites? 0 = Schwarz, 1 = Weiß.\nWeitere Farben findest du im SA-MP Wiki!", "Weiter", "Abbrechen");
- }
- }
- if(dialogid == DIALOG_FARBEZ)
- {
- if(response)
- {
- if(strlen(inputtext) < 1||strlen(inputtext) > 3)return SendClientMessage(playerid,-1, "Ungültige Eingabe");
- DLay[playerid] = strval(inputtext);
- ShowPlayerDialog(playerid, DIALOG_DELAY, DIALOG_STYLE_INPUT, "Respawn", "Gebe hier das Respawndelay des Autos an! (In Sekuden)","Erstellen", "Abbrechen");
- }
- }
- if(dialogid == DIALOG_DELAY)
- {
- if(response)
- {
- if(strlen(inputtext) < 1 || strlen(inputtext) > 3)return SendClientMessage(playerid,-1,"Ungültige Eingabe");
- new str[256],Float:X,Float:Y, Float:Z,Float:A;
- GetPlayerPos(playerid, X,Y,Z);
- GetPlayerFacingAngle(playerid,A);
- format(str,sizeof(str), "INSERT INTO `Autos`(`CarID`,`PosX`,`PosY`,`PosZ`,`PosA`,`FarbeE`,`FarbeZ`,`RespawnDelay`)VALUES('%i','%f','%f','%f','%f','%i','%i','%i')",VID[playerid],X,Y,Z,A,FE[playerid],FZ[playerid],DLay[playerid]);
- db_query(Autos,str);
- VID[playerid] = AddStaticVehicle(VID[playerid],X,Y,Z,A,FE[playerid],FZ[playerid]);
- PutPlayerInVehicle(playerid,VID[playerid],0);
- VID[playerid]=0;FE[playerid]=0;FZ[playerid]=0;DLay[playerid]=0;
- }
- }
- return 1;
- }
- CMD:erstellen(playerid,params[])
- {
- //if(!IsPlayerAdmin(playerid))return SendClientMessage(playerid,-1,"Du hast nicht genügend Rechte um diesen CMD auszuführen!");
- ShowPlayerDialog(playerid, DIALOG_ERSTELLEN, DIALOG_STYLE_INPUT, "Erstellen", "Welches Fahrzeug möchtest du erstellen?\nTrage die VehicleID hier ein:", "Weiter", "Abbrechen");
- return 1;
- }
- CMD:apark(playerid,params[])
- {
- //if(!IsPlayerAdmin(playerid))return SendClientMessage(playerid,-1,"Du hast nicht genügend Rechte um diesen CMD auszuführen!");
- new str[512],Float:X,Float:Y, Float:Z, Float:A,DBResult:Result,dstr[128];
- for(new i=0;i<MAX_GELADENE_AUTOS;i++)
- {
- format(dstr,sizeof(dstr), "SELECT * FROM `Autos` WHERE `ID` = '%i'",i);
- Result = db_query(Autos,dstr);
- if(db_num_rows(Result) > 0)
- {
- GetPlayerPos(playerid,X,Y,Z);
- GetPlayerFacingAngle(playerid,A);
- format(str,sizeof(str),"UPDATE `Autos`SET`PosX` = '%f', `PosY` = '%f', `PosZ` = '%f', `PosA` = '%f' WHERE `ID` = '%i'",X,Y,Z,A,i);
- db_query(Autos,str);
- }
- db_free_result(Result);
- }
- SendClientMessage(playerid,-1, "Auto umgeparkt");
- return 1;
- }
- CMD:loeschen(playerid,params[])
- {
- //if(!IsPlayerAdmin(playerid))return SendClientMessage(playerid,-1,"Du hast nicht genügend Rechte um diesen CMD auszuführen!");
- new str[128],dstr[128], DBResult:Result;
- for(new i=0;i<MAX_GELADENE_AUTOS;i++)
- {
- format(str,sizeof(str),"SELECT * FROM `Autos` WHERE `ID` = '%i'", i);
- format(dstr,sizeof(dstr), "DELETE FROM `Autos` WHERE `ID` = '%i'",i);
- Result=db_query(Autos,str);
- if(db_num_rows(Result) > 0)
- {
- DestroyVehicle(GetPlayerVehicleID(playerid));
- db_query(Autos,dstr);
- }
- db_free_result(Result);
- }
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement