Advertisement
LoriYagami

H-Pickup 1.3 English

Jan 30th, 2017
263
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 4.47 KB | None | 0 0
  1. //===============================================================================
  2. //|                 This Script Originaly Made by Haikal Bintang                |
  3. //===============================================================================
  4.  
  5. #include <a_samp>
  6. #include <zcmd>
  7. #include <mSelection>
  8. #include <sscanf2>
  9.  
  10. #define DIALOG_PICKUP_TEXT 9999
  11. #define DIALOG_PICKUP_ID 10000
  12.  
  13. new pickuptext[256];
  14. new pickuplist = mS_INVALID_LISTID;
  15. new bool:pickupidmode = false;
  16.  
  17. public OnFilterScriptInit()
  18. {
  19.     pickuplist = LoadModelSelectionMenu("pickup.txt");
  20.     print("H-Pickup created by Haikal Bintang.");
  21.     return 1;
  22. }
  23.  
  24. public OnPlayerModelSelection(playerid, response, listid, modelid)
  25. {
  26.     new string[256], Float:X, Float:Y, Float:Z;
  27.     if((listid == pickuplist) && response)
  28.     {
  29.         GetPlayerPos(playerid, X, Y, Z);
  30.  
  31.         new File:pos=fopen("createdpickup.txt", io_append);
  32.         format(string, 256, "CreatePickup(%i, 23, %f, %f, %f, %i)\r\n",  modelid, X, Y, Z, GetPlayerVirtualWorld(playerid));
  33.         fwrite(pos, string);
  34.         format(string, 256, "Create3DTextLabel(%s, 0xFFFFFFAA, %f, %f, %f, 5.0, %i)\r\n", pickuptext, X, Y, Z+0.50, GetPlayerVirtualWorld(playerid));
  35.         fwrite(pos, string);
  36.         fclose(pos);
  37.         CreatePickup(modelid, 23, X, Y, Z, GetPlayerVirtualWorld(playerid));
  38.         Create3DTextLabel(pickuptext, 0xFFFFFFAA, X, Y, Z+0.50, 5.0, GetPlayerVirtualWorld(playerid));
  39.         SendClientMessage(playerid, -1, "{FFFFFF}Pickup created, all the pickup will be saved in scriptfiles -> createdpickup.txt.");
  40.         SendClientMessage(playerid, -1, "{FFFFFF}Type /createpickup to make an pickup.");
  41.     }
  42.     return 1;
  43. }
  44.  
  45. public OnPlayerSpawn(playerid)
  46. {
  47.     SendClientMessage(playerid, -1, "{FFFFFF}Type /createpickup to make an pickup.");
  48.     return 1;
  49. }
  50.  
  51. CMD:createpickup(playerid, params[])
  52. {
  53.     ShowPlayerDialog(playerid, DIALOG_PICKUP_TEXT, DIALOG_STYLE_INPUT, "Pickup Text", "Enter the pickup text below :\nFor example In-Game [Press [ENTER] untuk get in]", "Create", "Cancel");
  54.     return 1;
  55. }
  56.  
  57. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  58. {
  59.     if(dialogid == DIALOG_PICKUP_TEXT)
  60.     {
  61.         if(response)
  62.         {
  63.             if(pickupidmode == false)
  64.             {
  65.                 format(pickuptext, sizeof(pickuptext), "%s", inputtext);
  66.                 ShowModelSelectionMenu(playerid, pickuplist, "Select the Pickup Models");
  67.             }
  68.             else
  69.             {
  70.                 format(pickuptext, sizeof(pickuptext), "%s", inputtext);
  71.                 ShowPlayerDialog(playerid, DIALOG_PICKUP_ID, DIALOG_STYLE_INPUT, "Pickup ID", "Enter the pickup id below :", "Create", "Cancel");
  72.             }
  73.         }
  74.         else
  75.         {
  76.             pickupidmode = false;
  77.         }
  78.     }
  79.     if(dialogid == DIALOG_PICKUP_ID)
  80.     {
  81.         if(response)
  82.         {
  83.             new string[256], Float:X, Float:Y, Float:Z;
  84.             if(IsNumeric(inputtext))
  85.             {
  86.                 GetPlayerPos(playerid, X, Y, Z);
  87.  
  88.                 new File:pos=fopen("createdpickup.txt", io_append);
  89.                 format(string, 256, "CreatePickup(%i, 23, %f, %f, %f, %i)\r\n", inputtext, X, Y, Z, GetPlayerVirtualWorld(playerid));
  90.                 fwrite(pos, string);
  91.                 format(string, 256, "Create3DTextLabel(%s, 0xFFFFFFAA, %f, %f, %f, 5.0, %i)\r\n", pickuptext, X, Y, Z+0.50, GetPlayerVirtualWorld(playerid));
  92.                 fwrite(pos, string);
  93.                 fclose(pos);
  94.                 CreatePickup(strval(inputtext), 23, X, Y, Z, GetPlayerVirtualWorld(playerid));
  95.                 Create3DTextLabel(pickuptext, 0xFFFFFFAA, X, Y, Z+0.50, 5.0, GetPlayerVirtualWorld(playerid));
  96.                 SendClientMessage(playerid, -1, "{FFFFFF}Pickup created, all the pickup will be saved in scriptfiles -> createdpickup.txt.");
  97.                 SendClientMessage(playerid, -1, "{FFFFFF}Type /createpickup to make an pickup.");
  98.                 pickupidmode = false;
  99.             }
  100.             else
  101.             {
  102.                 ShowPlayerDialog(playerid, DIALOG_PICKUP_ID, DIALOG_STYLE_INPUT, "Pickup ID", "Enter the pickup id below :", "Create", "Cancel");
  103.                 SendClientMessage(playerid, -1, "Invalid pickup ID.");
  104.             }
  105.         }
  106.         else
  107.         {
  108.             pickupidmode = false;
  109.         }
  110.     }
  111.     return 0;
  112. }
  113.  
  114. stock IsNumeric(const string[])
  115. {
  116.     for (new i = 0, j = strlen(string); i < j; i++)
  117.     {
  118.         if (string[i] > '9' || string[i] < '0') return 0;
  119.     }
  120.     return 1;
  121. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement