Advertisement
Guest User

Untitled

a guest
May 11th, 2013
49
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 6.18 KB | None | 0 0
  1. #include <a_samp>
  2. #include <zcmd>
  3. //Anderes:
  4. #define MAX_GELADENE_AUTOS 250
  5. new VID[MAX_PLAYERS], FE[MAX_PLAYERS], FZ[MAX_PLAYERS], DLay[MAX_PLAYERS];
  6. //Dialoge:
  7. #define DIALOG_ERSTELLEN 250
  8. #define DIALOG_FARBEE 500
  9. #define DIALOG_FARBEZ 750
  10. #define DIALOG_DELAY 1000
  11. new DB:Autos;
  12.  
  13. enum SpawnedCars {
  14. ID,
  15. CarID,
  16. FarbeE,
  17. FarbeZ,
  18. Float:PosX,
  19. Float:PosY,
  20. Float:PosZ,
  21. Float:PosA,
  22. RespawnDelay
  23. }
  24. new SCInfo[MAX_PLAYERS][SpawnedCars];
  25.  
  26. public OnFilterScriptInit()
  27. {
  28.     Autos = db_open("Autos.db");
  29.     db_query(Autos, "CREATE TABLE IF NOT EXISTS `Autos`(`ID` INTEGER PRIMARY KEY AUTOINCREMENT,`CarID`,`PosX`,`PosY`,`PosZ`,`PosA`,`FarbeE`,`FarbeZ`,`RespawnDelay`)");
  30.     new str[512],DBResult:Result;
  31.     for(new i=0;i<MAX_GELADENE_AUTOS;i++)
  32.     {
  33.         format(str,sizeof(str),"SELECT * FROM `Autos` WHERE `ID` = '%i'", i);
  34.         Result=db_query(Autos,str);
  35.         if(db_num_rows(Result) > 0)
  36.         {
  37.             db_get_field_assoc(Result,"ID",str,sizeof(str));
  38.             SCInfo[i][ID] = strval(str);
  39.             db_get_field_assoc(Result,"CarID",str,sizeof(str));
  40.             SCInfo[i][CarID] = strval(str);
  41.             db_get_field_assoc(Result,"FarbeE", str,sizeof(str));
  42.             SCInfo[i][FarbeE] = strval(str);
  43.             db_get_field_assoc(Result,"FarbeZ",str,sizeof(str));
  44.             SCInfo[i][FarbeZ] = strval(str);
  45.             db_get_field_assoc(Result,"PosX",str,sizeof(str));
  46.             SCInfo[i][PosX] = floatstr(str);
  47.             db_get_field_assoc(Result,"PosY",str,sizeof(str));
  48.             SCInfo[i][PosY] = floatstr(str);
  49.             db_get_field_assoc(Result,"PosZ",str,sizeof(str));
  50.             SCInfo[i][PosZ] = floatstr(str);
  51.             db_get_field_assoc(Result,"PosA",str,sizeof(str));
  52.             SCInfo[i][PosA] = floatstr(str);
  53.             db_get_field_assoc(Result,"RespawnDelay",str,sizeof(str));
  54.             SCInfo[i][RespawnDelay] = strval(str);
  55.             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]);
  56.         }
  57.     }
  58.     print(" ");
  59.     print("\t\t|=========================|");
  60.     print("\t\t|      Car-Saver 1.0      |");
  61.     print("\t\t|    Ingame CarSaver      |");
  62.     print("\t\t| Geschrieben von: BOMBER |");
  63.     print("\t\t|-------------------------|");
  64.     print("\t\t|                         |");
  65.     print("\t\t|=========================|");
  66.     print(" ");
  67.     return 1;
  68. }
  69. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  70. {
  71.     if(dialogid == DIALOG_ERSTELLEN)
  72.     {
  73.         if(response)
  74.         {
  75.             VID[playerid] = strval(inputtext);
  76.             if(strval(inputtext) < 400 || strval(inputtext) > 610)return SendClientMessage(playerid,-1,"Ungültige Eingabe");
  77.             if(strlen(inputtext) < 1 || strlen(inputtext) > 3)return SendClientMessage(playerid,-1,"Ungültige Eingabe");
  78.             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");
  79.         }
  80.     }
  81.     if(dialogid == DIALOG_FARBEE)
  82.     {
  83.         if(response)
  84.         {
  85.             if(strlen(inputtext) < 1 || strlen(inputtext) > 3)return SendClientMessage(playerid,-1,"Ungültige Eingabe");
  86.             FE[playerid] = strval(inputtext);
  87.             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");
  88.         }
  89.     }
  90.     if(dialogid == DIALOG_FARBEZ)
  91.     {
  92.         if(response)
  93.         {
  94.             if(strlen(inputtext) < 1||strlen(inputtext) > 3)return SendClientMessage(playerid,-1, "Ungültige Eingabe");
  95.             DLay[playerid] = strval(inputtext);
  96.             ShowPlayerDialog(playerid, DIALOG_DELAY, DIALOG_STYLE_INPUT, "Respawn", "Gebe hier das Respawndelay des Autos an! (In Sekuden)","Erstellen", "Abbrechen");
  97.            
  98.         }
  99.     }
  100.     if(dialogid == DIALOG_DELAY)
  101.     {
  102.         if(response)
  103.         {
  104.             if(strlen(inputtext) < 1 || strlen(inputtext) > 3)return SendClientMessage(playerid,-1,"Ungültige Eingabe");
  105.             new str[256],Float:X,Float:Y, Float:Z,Float:A;
  106.             GetPlayerPos(playerid, X,Y,Z);
  107.             GetPlayerFacingAngle(playerid,A);
  108.             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]);
  109.             db_query(Autos,str);
  110.             VID[playerid] = AddStaticVehicle(VID[playerid],X,Y,Z,A,FE[playerid],FZ[playerid]);
  111.             PutPlayerInVehicle(playerid,VID[playerid],0);
  112.             VID[playerid]=0;FE[playerid]=0;FZ[playerid]=0;DLay[playerid]=0;
  113.         }
  114.     }
  115.     return 1;
  116. }
  117. CMD:erstellen(playerid,params[])
  118. {
  119.     //if(!IsPlayerAdmin(playerid))return SendClientMessage(playerid,-1,"Du hast nicht genügend Rechte um diesen CMD auszuführen!");
  120.     ShowPlayerDialog(playerid, DIALOG_ERSTELLEN, DIALOG_STYLE_INPUT, "Erstellen", "Welches Fahrzeug möchtest du erstellen?\nTrage die VehicleID hier ein:", "Weiter", "Abbrechen");
  121.     return 1;
  122. }
  123. CMD:apark(playerid,params[])
  124. {
  125.     //if(!IsPlayerAdmin(playerid))return SendClientMessage(playerid,-1,"Du hast nicht genügend Rechte um diesen CMD auszuführen!");
  126.     new str[512],Float:X,Float:Y, Float:Z, Float:A,DBResult:Result,dstr[128];
  127.     for(new i=0;i<MAX_GELADENE_AUTOS;i++)
  128.     {
  129.         format(dstr,sizeof(dstr), "SELECT * FROM `Autos` WHERE `ID` = '%i'",i);
  130.         Result = db_query(Autos,dstr);
  131.         if(db_num_rows(Result) > 0)
  132.         {
  133.             GetPlayerPos(playerid,X,Y,Z);
  134.             GetPlayerFacingAngle(playerid,A);
  135.             format(str,sizeof(str),"UPDATE `Autos`SET`PosX` = '%f', `PosY` = '%f', `PosZ` = '%f', `PosA` = '%f' WHERE `ID` = '%i'",X,Y,Z,A,i);
  136.             db_query(Autos,str);
  137.         }
  138.         db_free_result(Result);
  139.     }
  140.     SendClientMessage(playerid,-1, "Auto umgeparkt");
  141.     return 1;
  142. }
  143. CMD:loeschen(playerid,params[])
  144. {
  145.     //if(!IsPlayerAdmin(playerid))return SendClientMessage(playerid,-1,"Du hast nicht genügend Rechte um diesen CMD auszuführen!");
  146.     new str[128],dstr[128], DBResult:Result;
  147.     for(new i=0;i<MAX_GELADENE_AUTOS;i++)
  148.     {
  149.         format(str,sizeof(str),"SELECT * FROM `Autos` WHERE `ID` = '%i'", i);
  150.         format(dstr,sizeof(dstr), "DELETE FROM `Autos` WHERE `ID` = '%i'",i);
  151.         Result=db_query(Autos,str);
  152.         if(db_num_rows(Result) > 0)
  153.         {
  154.             DestroyVehicle(GetPlayerVehicleID(playerid));
  155.             db_query(Autos,dstr);
  156.         }
  157.         db_free_result(Result);
  158.     }
  159.     return 1;
  160. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement