Advertisement
drakee

TextDrawInput

Mar 6th, 2012
232
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 18.47 KB | None | 0 0
  1. #include <a_samp>
  2.  
  3. #define FILTERSCRIPT
  4.  
  5. #if defined _tdi_included
  6.     #endinput
  7. #endif
  8. #define _tdi_included
  9.  
  10. #if !defined PRESSED
  11.     #define PRESSED(%0) \
  12.         (((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))
  13. #endif
  14.  
  15. //native ShowTextDrawInputForPlayer(playerid, textid, title[], text[], bool:encryption, boxtitle[]);
  16.  
  17. new
  18.     betuk[][] =
  19.     {
  20.         "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "Y", "X", "Z", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9"
  21.     },
  22.    
  23.     Text: TextDraw[14],
  24.     Text: TextDrawInput[MAX_PLAYERS][4],
  25.    
  26.     bool:Elkezdodott[MAX_PLAYERS] = false,
  27.     bool:Encryption[MAX_PLAYERS] = false,
  28.    
  29.     Karakter[MAX_PLAYERS] = 0,
  30.     tdstr[256],
  31.     tdid[MAX_PLAYERS] = 0,
  32.     pstring[MAX_PLAYERS][16+1],
  33.     pbetuk[MAX_PLAYERS][128],
  34.    
  35.     bool:TDI_OPC,
  36.     bool:TDI_OPD,
  37.     bool:TDI_OPKSC;
  38.  
  39. #if defined FILTERSCRIPT
  40. public
  41.     OnFilterScriptInit()
  42. #else
  43. public
  44.     OnGameModeInit()
  45. #endif
  46. {
  47.     TDI_OPC = (funcidx("TDI_OnPlayerConnect") != -1),
  48.     TDI_OPD = (funcidx("TDI_OnPlayerDisconnect") != -1),
  49.     TDI_OPKSC = (funcidx("TDI_OnPlayerKeyStateChange") != -1);
  50.    
  51.     TextDraw[0] = TextDrawCreate(590.000000, 119.000000, ".");
  52.     TextDrawBackgroundColor(TextDraw[0], 255);
  53.     TextDrawFont(TextDraw[0], 1);
  54.     TextDrawLetterSize(TextDraw[0], 0.000000, 22.899995);
  55.     TextDrawColor(TextDraw[0], -1);
  56.     TextDrawSetOutline(TextDraw[0], 0);
  57.     TextDrawSetProportional(TextDraw[0], 1);
  58.     TextDrawSetShadow(TextDraw[0], 1);
  59.     TextDrawUseBox(TextDraw[0], 1);
  60.     TextDrawBoxColor(TextDraw[0], 80);
  61.     TextDrawTextSize(TextDraw[0], 48.000000, 20.000000);
  62.  
  63.     TextDraw[1] = TextDrawCreate(530.000000, 239.000000, ".");
  64.     TextDrawBackgroundColor(TextDraw[1], 255);
  65.     TextDrawFont(TextDraw[1], 1);
  66.     TextDrawLetterSize(TextDraw[1], 0.000000, 2.000000);
  67.     TextDrawColor(TextDraw[1], -1);
  68.     TextDrawSetOutline(TextDraw[1], 0);
  69.     TextDrawSetProportional(TextDraw[1], 1);
  70.     TextDrawSetShadow(TextDraw[1], 1);
  71.     TextDrawUseBox(TextDraw[1], 1);
  72.     TextDrawBoxColor(TextDraw[1], -757935536);
  73.     TextDrawTextSize(TextDraw[1], 108.000000, 0.000000);
  74.  
  75.     TextDraw[2] = TextDrawCreate(650.000000, 1.000000, ".");
  76.     TextDrawBackgroundColor(TextDraw[2], 255);
  77.     TextDrawFont(TextDraw[2], 1);
  78.     TextDrawLetterSize(TextDraw[2], 0.000000, 12.000000);
  79.     TextDrawColor(TextDraw[2], -1);
  80.     TextDrawSetOutline(TextDraw[2], 0);
  81.     TextDrawSetProportional(TextDraw[2], 1);
  82.     TextDrawSetShadow(TextDraw[2], 1);
  83.     TextDrawUseBox(TextDraw[2], 1);
  84.     TextDrawBoxColor(TextDraw[2], 255);
  85.     TextDrawTextSize(TextDraw[2], -4.000000, 100.000000);
  86.  
  87.     TextDraw[3] = TextDrawCreate(650.000000, 338.000000, ".");
  88.     TextDrawBackgroundColor(TextDraw[3], 255);
  89.     TextDrawFont(TextDraw[3], 1);
  90.     TextDrawLetterSize(TextDraw[3], 0.000000, 12.000000);
  91.     TextDrawColor(TextDraw[3], -1);
  92.     TextDrawSetOutline(TextDraw[3], 0);
  93.     TextDrawSetProportional(TextDraw[3], 1);
  94.     TextDrawSetShadow(TextDraw[3], 1);
  95.     TextDrawUseBox(TextDraw[3], 1);
  96.     TextDrawBoxColor(TextDraw[3], 255);
  97.     TextDrawTextSize(TextDraw[3], -4.000000, 100.000000);
  98.  
  99.     TextDraw[4] = TextDrawCreate(650.000000, 336.000000, ".");
  100.     TextDrawBackgroundColor(TextDraw[4], 255);
  101.     TextDrawFont(TextDraw[4], 1);
  102.     TextDrawLetterSize(TextDraw[4], 0.000000, 0.000000);
  103.     TextDrawColor(TextDraw[4], -1);
  104.     TextDrawSetOutline(TextDraw[4], 0);
  105.     TextDrawSetProportional(TextDraw[4], 1);
  106.     TextDrawSetShadow(TextDraw[4], 1);
  107.     TextDrawUseBox(TextDraw[4], 1);
  108.     TextDrawBoxColor(TextDraw[4], 11322367);
  109.     TextDrawTextSize(TextDraw[4], -4.000000, 100.000000);
  110.  
  111.     TextDraw[5] = TextDrawCreate(650.000000, 111.000000, ".");
  112.     TextDrawBackgroundColor(TextDraw[5], 255);
  113.     TextDrawFont(TextDraw[5], 1);
  114.     TextDrawLetterSize(TextDraw[5], 0.000000, 0.000000);
  115.     TextDrawColor(TextDraw[5], -1);
  116.     TextDrawSetOutline(TextDraw[5], 0);
  117.     TextDrawSetProportional(TextDraw[5], 1);
  118.     TextDrawSetShadow(TextDraw[5], 1);
  119.     TextDrawUseBox(TextDraw[5], 1);
  120.     TextDrawBoxColor(TextDraw[5], 11322367);
  121.     TextDrawTextSize(TextDraw[5], -4.000000, 100.000000);
  122.  
  123.     TextDraw[6] = TextDrawCreate(375.000000, 48.000000, "Mozgatáshoz: ~r~~k~~VEHICLE_TURRETLEFT~ ~w~és ~r~~k~~VEHICLE_TURRETRIGHT~");
  124.     TextDrawBackgroundColor(TextDraw[6], 255);
  125.     TextDrawFont(TextDraw[6], 1);
  126.     TextDrawLetterSize(TextDraw[6], 0.409999, 1.200000);
  127.     TextDrawColor(TextDraw[6], -1);
  128.     TextDrawSetOutline(TextDraw[6], 0);
  129.     TextDrawSetProportional(TextDraw[6], 1);
  130.     TextDrawSetShadow(TextDraw[6], 1);
  131.  
  132.     TextDraw[7] = TextDrawCreate(375.000000, 60.000000, "Kiválasztashoz: ~r~~k~~PED_FIREWEAPON~ ~w~vagy ~r~~k~~VEHICLE_FIREWEAPON_ALT~");
  133.     TextDrawBackgroundColor(TextDraw[7], 255);
  134.     TextDrawFont(TextDraw[7], 1);
  135.     TextDrawLetterSize(TextDraw[7], 0.409999, 1.200000);
  136.     TextDrawColor(TextDraw[7], -1);
  137.     TextDrawSetOutline(TextDraw[7], 0);
  138.     TextDrawSetProportional(TextDraw[7], 1);
  139.     TextDrawSetShadow(TextDraw[7], 1);
  140.  
  141.     TextDraw[8] = TextDrawCreate(375.000000, 71.000000, "Törléshez: ~r~~k~~PED_DUCK~");
  142.     TextDrawBackgroundColor(TextDraw[8], 255);
  143.     TextDrawFont(TextDraw[8], 1);
  144.     TextDrawLetterSize(TextDraw[8], 0.409999, 1.200000);
  145.     TextDrawColor(TextDraw[8], -1);
  146.     TextDrawSetOutline(TextDraw[8], 0);
  147.     TextDrawSetProportional(TextDraw[8], 1);
  148.     TextDrawSetShadow(TextDraw[8], 1);
  149.  
  150.     TextDraw[9] = TextDrawCreate(375.000000, 82.000000, "Tovább: ~r~~k~~VEHICLE_ENTER_EXIT~");
  151.     TextDrawBackgroundColor(TextDraw[9], 255);
  152.     TextDrawFont(TextDraw[9], 1);
  153.     TextDrawLetterSize(TextDraw[9], 0.409999, 1.200000);
  154.     TextDrawColor(TextDraw[9], -1);
  155.     TextDrawSetOutline(TextDraw[9], 0);
  156.     TextDrawSetProportional(TextDraw[9], 1);
  157.     TextDrawSetShadow(TextDraw[9], 1);
  158.  
  159.     #if defined FILTERSCRIPT
  160.         new
  161.             playerid = -1;
  162.         for(;++playerid < 10;)
  163.         {
  164.             if(IsPlayerConnected(playerid))
  165.             {
  166.                 format(pbetuk[playerid], 128, "A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R~n~S  T  U  V  W  Y  X  Z  0  1  2  3  4  5  6  7  8  9");
  167.                 TextDrawInput[playerid][0] = TextDrawCreate(121.000000, 189.000000, ".");
  168.                 TextDrawBackgroundColor(TextDrawInput[playerid][0], 255);
  169.                 TextDrawFont(TextDrawInput[playerid][0], 1);
  170.                 TextDrawLetterSize(TextDrawInput[playerid][0], 0.280000, 1.100000);
  171.                 TextDrawColor(TextDrawInput[playerid][0], -1);
  172.                 TextDrawSetOutline(TextDrawInput[playerid][0], 0);
  173.                 TextDrawSetProportional(TextDrawInput[playerid][0], 1);
  174.                 TextDrawSetShadow(TextDrawInput[playerid][0], 1);
  175.  
  176.                 TextDrawInput[playerid][1] = TextDrawCreate(319.000000, 140.000000, ".");
  177.                 TextDrawAlignment(TextDrawInput[playerid][1], 2);
  178.                 TextDrawBackgroundColor(TextDrawInput[playerid][1], 255);
  179.                 TextDrawFont(TextDrawInput[playerid][1], 2);
  180.                 TextDrawLetterSize(TextDrawInput[playerid][1], 0.599999, 2.000000);
  181.                 TextDrawColor(TextDrawInput[playerid][1], 11322367);
  182.                 TextDrawSetOutline(TextDrawInput[playerid][1], 0);
  183.                 TextDrawSetProportional(TextDrawInput[playerid][1], 1);
  184.                 TextDrawSetShadow(TextDrawInput[playerid][1], 1);
  185.  
  186.                 TextDrawInput[playerid][2] = TextDrawCreate(319.000000, 239.000000, "JELSZÓ");
  187.                 TextDrawAlignment(TextDrawInput[playerid][2], 2);
  188.                 TextDrawFont(TextDrawInput[playerid][2], 2);
  189.                 TextDrawLetterSize(TextDrawInput[playerid][2], 0.599999, 2.000000);
  190.                 TextDrawColor(TextDrawInput[playerid][2], 11322367);
  191.                 TextDrawSetOutline(TextDrawInput[playerid][2], 1);
  192.                 TextDrawSetProportional(TextDrawInput[playerid][2], 1);
  193.  
  194.                 TextDrawInput[playerid][3] = TextDrawCreate(59.000000, 270.000000, pbetuk[playerid]);
  195.                 TextDrawBackgroundColor(TextDrawInput[playerid][3], 255);
  196.                 TextDrawFont(TextDrawInput[playerid][3], 2);
  197.                 TextDrawLetterSize(TextDrawInput[playerid][3], 0.589999, 2.000000);
  198.                 TextDrawColor(TextDrawInput[playerid][3], -1);
  199.                 TextDrawSetOutline(TextDrawInput[playerid][3], 0);
  200.                 TextDrawSetProportional(TextDrawInput[playerid][3], 1);
  201.                 TextDrawSetShadow(TextDrawInput[playerid][3], 1);
  202.             }
  203.         }
  204.     #endif
  205.     #if defined FILTERSCRIPT
  206.         return (funcidx("TDI_OnFilterScriptInit") != -1) ? CallLocalFunction("TDI_OnFilterScriptInit","") : 1;
  207.     #else
  208.         return (funcidx("TDI_OnGameModeInit") != -1) ? CallLocalFunction("TDI_OnGameModeInit","") : 1;
  209.     #endif
  210. }
  211. #if defined FILTERSCRIPT
  212.     #if defined _ALS_OnFilterScriptInit
  213.         #undef OnFilterScriptInit
  214.     #else
  215.         #define _ALS_OnFilterScriptInit
  216.     #endif
  217.     #define OnFilterScriptInit TDI_OnFilterScriptInit
  218.     forward TDI_OnFilterScriptInit();
  219. #else
  220.     #if defined _ALS_OnGameModeInit
  221.         #undef OnGameModeInit
  222.     #else
  223.         #define _ALS_OnGameModeInit
  224.     #endif
  225.     #define OnGameModeInit TDI_OnGameModeInit
  226.     forward TDI_OnGameModeInit();
  227. #endif
  228.  
  229. #if defined FILTERSCRIPT
  230. public
  231.     OnFilterScriptExit()
  232. {
  233.     new
  234.         playerid = -1,
  235.         k = -1,
  236.         l = -1;
  237.  
  238.     for(;++playerid < MAX_PLAYERS;)
  239.     {
  240.         if(IsPlayerConnected(playerid))
  241.         {
  242.             for(;++k <10;)
  243.                 TextDrawDestroy(TextDraw[k]);
  244.             for(;++l < 4;)
  245.                 TextDrawDestroy(TextDrawInput[playerid][l]);
  246.             Elkezdodott[playerid] = false;
  247.             TogglePlayerControllable(playerid, true);
  248.             Encryption[playerid] = false;
  249.             Karakter[playerid] = 0;
  250.             tdid[playerid] = 0;
  251.             pstring[playerid][0] = EOS;
  252.             pbetuk[playerid][0] = EOS;
  253.         }
  254.     }
  255.     return (funcidx("TDI_OnFilterScriptExit") != -1) ? CallLocalFunction("TDI_OnFilterScriptExit", "") : 1;
  256. }
  257. #endif
  258.  
  259. #if defined FILTERSCRIPT
  260.     #if defined _ALS_OnFilterScriptExit
  261.         #undef OnFilterScriptExit
  262.     #else
  263.         #define _ALS_OnFilterScriptExit
  264.     #endif
  265.     #define OnFilterScriptExit TDI_OnFilterScriptExit
  266. #endif
  267. forward TDI_OnFilterScriptExit();
  268.  
  269. public
  270.     OnPlayerConnect(playerid)
  271. {
  272.     format(pbetuk[playerid], 128, "A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R~n~S  T  U  V  W  Y  X  Z  0  1  2  3  4  5  6  7  8  9");
  273.  
  274.     TextDrawInput[playerid][0] = TextDrawCreate(121.000000, 189.000000, ".");
  275.     TextDrawBackgroundColor(TextDrawInput[playerid][0], 255);
  276.     TextDrawFont(TextDrawInput[playerid][0], 1);
  277.     TextDrawLetterSize(TextDrawInput[playerid][0], 0.280000, 1.100000);
  278.     TextDrawColor(TextDrawInput[playerid][0], -1);
  279.     TextDrawSetOutline(TextDrawInput[playerid][0], 0);
  280.     TextDrawSetProportional(TextDrawInput[playerid][0], 1);
  281.     TextDrawSetShadow(TextDrawInput[playerid][0], 1);
  282.  
  283.     TextDrawInput[playerid][1] = TextDrawCreate(319.000000, 140.000000, ".");
  284.     TextDrawAlignment(TextDrawInput[playerid][1], 2);
  285.     TextDrawBackgroundColor(TextDrawInput[playerid][1], 255);
  286.     TextDrawFont(TextDrawInput[playerid][1], 2);
  287.     TextDrawLetterSize(TextDrawInput[playerid][1], 0.599999, 2.000000);
  288.     TextDrawColor(TextDrawInput[playerid][1], 11322367);
  289.     TextDrawSetOutline(TextDrawInput[playerid][1], 0);
  290.     TextDrawSetProportional(TextDrawInput[playerid][1], 1);
  291.     TextDrawSetShadow(TextDrawInput[playerid][1], 1);
  292.  
  293.     TextDrawInput[playerid][2] = TextDrawCreate(319.000000, 239.000000, "JELSZÓ");
  294.     TextDrawAlignment(TextDrawInput[playerid][2], 2);
  295.     TextDrawFont(TextDrawInput[playerid][2], 2);
  296.     TextDrawLetterSize(TextDrawInput[playerid][2], 0.599999, 2.000000);
  297.     TextDrawColor(TextDrawInput[playerid][2], 11322367);
  298.     TextDrawSetOutline(TextDrawInput[playerid][2], 1);
  299.     TextDrawSetProportional(TextDrawInput[playerid][2], 1);
  300.  
  301.     TextDrawInput[playerid][3] = TextDrawCreate(59.000000, 270.000000, pbetuk[playerid]);
  302.     TextDrawBackgroundColor(TextDrawInput[playerid][3], 255);
  303.     TextDrawFont(TextDrawInput[playerid][3], 2);
  304.     TextDrawLetterSize(TextDrawInput[playerid][3], 0.589999, 2.000000);
  305.     TextDrawColor(TextDrawInput[playerid][3], -1);
  306.     TextDrawSetOutline(TextDrawInput[playerid][3], 0);
  307.     TextDrawSetProportional(TextDrawInput[playerid][3], 1);
  308.     TextDrawSetShadow(TextDrawInput[playerid][3], 1);
  309.  
  310.     Elkezdodott[playerid] = false;
  311.     Encryption[playerid] = false;
  312.     Karakter[playerid] = 0;
  313.     tdid[playerid] = 0;
  314.     pstring[playerid][0] = EOS;
  315.     pbetuk[playerid][0] = EOS;
  316.     return (TDI_OPC) ? CallLocalFunction("TDI_OnPlayerConnect", "i", playerid) : 1;
  317. }
  318.  
  319. #if defined _ALS_OnPlayerConnect
  320.     #undef OnPlayerConnect
  321. #else
  322.     #define _ALS_OnPlayerConnect
  323. #endif
  324. #define OnPlayerConnect TDI_OnPlayerConnect
  325. forward TDI_OnPlayerConnect(playerid);
  326.  
  327. public
  328.     OnPlayerDisconnect(playerid, reason)
  329. {
  330.     new
  331.         k = -1,
  332.         l = -1;
  333.        
  334.     for(;++k <10;)
  335.         TextDrawDestroy(TextDraw[k]);
  336.        
  337.     for(;++l < 4;)
  338.         TextDrawDestroy(TextDrawInput[playerid][l]);
  339.  
  340.     Elkezdodott[playerid] = false;
  341.     Encryption[playerid] = false;
  342.     Karakter[playerid] = 0;
  343.     tdid[playerid] = 0;
  344.     pstring[playerid][0] = EOS;
  345.     pbetuk[playerid][0] = EOS;
  346.    
  347.     return (TDI_OPD) ? CallLocalFunction("TDI_OnPlayerDisconnect", "ii", playerid, reason) : 1;
  348. }
  349.  
  350. #if defined _ALS_OnPlayerDisconnect
  351.     #undef OnPlayerDisconnect
  352. #else
  353.     #define _ALS_OnPlayerDisconnect
  354. #endif
  355. #define OnPlayerDisconnect TDI_OnPlayerDisconnect
  356. forward TDI_OnPlayerDisconnect(playerid, reason);
  357.  
  358. public
  359.     OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  360. {
  361.     format(pbetuk[playerid], 128, "A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R~n~S  T  U  V  W  Y  X  Z  0  1  2  3  4  5  6  7  8  9");
  362.     if(Elkezdodott[playerid])
  363.     {
  364.         if(PRESSED(KEY_ANALOG_LEFT))
  365.         {
  366.             if(Karakter[playerid] == 0)
  367.                 strins(pbetuk[playerid], "~r~", (35*3)+1), Karakter[playerid] = 37;
  368.             else if(Karakter[playerid] == 1)
  369.                 strins(pbetuk[playerid], "~r~", (35*3)+1), Karakter[playerid] = 37;
  370.             else if(Karakter[playerid] == 17)
  371.                 strins(pbetuk[playerid], "~r~", (Karakter[playerid]*3)-6), strins(pbetuk[playerid], "~w~", ((Karakter[playerid]*3)));
  372.             else if(Karakter[playerid] == 18)
  373.                 strins(pbetuk[playerid], "~r~", (Karakter[playerid]*3)-6), strins(pbetuk[playerid], "~w~", ((Karakter[playerid]*3)));
  374.             else if(Karakter[playerid] == 19)
  375.                 strins(pbetuk[playerid], "~r~", (Karakter[playerid]*3)-6), strins(pbetuk[playerid], "~w~", ((Karakter[playerid]*3)+1));
  376.             else if(Karakter[playerid] > 19)
  377.                 strins(pbetuk[playerid], "~r~", (Karakter[playerid]*3)-5), strins(pbetuk[playerid], "~w~", ((Karakter[playerid]*3)+1));
  378.             else
  379.                 strins(pbetuk[playerid], "~r~", (Karakter[playerid]*3)-6), strins(pbetuk[playerid], "~w~", ((Karakter[playerid]*3)));
  380.             TextDrawSetString(TextDrawInput[playerid][3], pbetuk[playerid]);
  381.             Karakter[playerid]--;
  382.             return 1;
  383.         }
  384.         else if(PRESSED(KEY_ANALOG_RIGHT))
  385.         {
  386.             if(Karakter[playerid] == 0)
  387.                 strins(pbetuk[playerid], "~r~", 0), strins(pbetuk[playerid], "~w~", 3+3);
  388.             else if(Karakter[playerid] == 17)
  389.                 strins(pbetuk[playerid], "~r~", (Karakter[playerid]*3)), strins(pbetuk[playerid], "~w~", ((Karakter[playerid]*3)+7));
  390.             else if(Karakter[playerid] == 18)
  391.                 strins(pbetuk[playerid], "~r~", (Karakter[playerid]*3)+1), strins(pbetuk[playerid], "~w~", ((Karakter[playerid]*3)+7));
  392.             else if(Karakter[playerid] < 18)
  393.                 strins(pbetuk[playerid], "~r~", (Karakter[playerid]*3)), strins(pbetuk[playerid], "~w~", ((Karakter[playerid]*3)+6));
  394.             else if(Karakter[playerid] == 35)
  395.                 strins(pbetuk[playerid], "~r~", (Karakter[playerid]*3)+1);
  396.             else if(Karakter[playerid] == 36)
  397.                 strins(pbetuk[playerid], "~r~", 0), strins(pbetuk[playerid], "~w~", 3+3), Karakter[playerid] = 0;
  398.             else
  399.                 strins(pbetuk[playerid], "~r~", (Karakter[playerid]*3)+1), strins(pbetuk[playerid], "~w~", ((Karakter[playerid]*3)+7));
  400.             TextDrawSetString(TextDrawInput[playerid][3], pbetuk[playerid]);
  401.             Karakter[playerid]++;
  402.             return 1;
  403.         }
  404.         else if(PRESSED(KEY_FIRE))
  405.         {
  406.             if(Karakter[playerid] > 0)
  407.             {
  408.                 if(strlen(pstring[playerid]) < 16)
  409.                 {
  410.                     strins(pstring[playerid], betuk[Karakter[playerid]-1], strlen(pstring[playerid]));
  411.                     if(Encryption[playerid])
  412.                         strins(tdstr, "]", strlen(tdstr));
  413.                     TextDrawSetString(TextDrawInput[playerid][2], (!Encryption[playerid] ? pstring[playerid] : tdstr));
  414.                 }
  415.                 #if !defined DONTUSE_ALERT
  416.                     else
  417.                         SendClientMessage(playerid, -1, "You reached the 16 character limit!");
  418.                 #endif
  419.             }
  420.             return 1;
  421.         }
  422.         else if(PRESSED(KEY_CROUCH))
  423.         {
  424.             if(strlen(tdstr) > 0)
  425.                 if(Encryption[playerid])
  426.                     strdel(tdstr, strlen(tdstr)-1, strlen(tdstr));
  427.             if(strlen(pstring[playerid]) > 1)
  428.                 strdel(pstring[playerid], strlen(pstring[playerid])-1, strlen(pstring[playerid])),
  429.                 TextDrawSetString(TextDrawInput[playerid][2], (!Encryption[playerid] ? pstring[playerid] : tdstr));
  430.             else if(strlen(pstring[playerid]))
  431.                 strdel(pstring[playerid], strlen(pstring[playerid])-1, strlen(pstring[playerid])),
  432.                 TextDrawSetString(TextDrawInput[playerid][2], "JELSZÓ");
  433.             return 1;
  434.         }
  435.         else if(PRESSED(KEY_SECONDARY_ATTACK))
  436.         {
  437.             if(6 <= strlen(pstring[playerid]) <= 16)
  438.             {
  439.                 new
  440.                     k = -1,
  441.                     l = -1;
  442.                 for(;++k < 10;)
  443.                     TextDrawHideForPlayer(playerid, TextDraw[k]);
  444.                 for(;++l < 4;)
  445.                     TextDrawHideForPlayer(playerid, TextDrawInput[playerid][l]);
  446.                 Elkezdodott[playerid] = false;
  447.                 TogglePlayerControllable(playerid, true);
  448.                 if(funcidx("OnTextDrawResponse") != -1)
  449.                     CallLocalFunction("OnTextDrawResponse", "iis", playerid, tdid, pstring[playerid]);
  450.                 if(Encryption[playerid])
  451.                     Encryption[playerid] = false;
  452.                 tdid[playerid] = -1;
  453.                 pstring[playerid][0] = EOS;
  454.                 pbetuk[playerid][0] = EOS;
  455.             }
  456.             #if !defined DONTUSE_ALERT
  457.                 else
  458.                     SendClientMessage(playerid, -1, "The text only can be between 6 and 16 character!");
  459.             #endif
  460.             return 1;
  461.         }
  462.     }
  463.     return (TDI_OPKSC) ? CallLocalFunction("TDI_OnPlayerKeyStateChange", "iii", playerid, newkeys, oldkeys) : 1;
  464. }
  465.  
  466. #if defined _ALS_OnPlayerKeyStateChange
  467.     #undef OnPlayerKeyStateChange
  468. #else
  469.     #define _ALS_OnPlayerKeyStateChange
  470. #endif
  471. #define OnPlayerKeyStateChange TDI_OnPlayerKeyStateChange
  472. forward TDI_OnPlayerKeyStateChange(playerid, newkeys, oldkeys);
  473.  
  474. //Funkció
  475. stock
  476.     ShowTextDrawInputForPlayer(playerid, textid, title[], text[], bool:encryption = false, boxtitle[] = "JELSZÓ")
  477. {
  478.     if(IsPlayerConnected(playerid))
  479.     {
  480.         new
  481.             k = -1,
  482.             l = -1;
  483.         if(strcmp(boxtitle, "JELSZÓ", false))
  484.             TextDrawSetString(TextDrawInput[playerid][2], boxtitle);
  485.         for(;++k < 10;)
  486.             TextDrawShowForPlayer(playerid, TextDraw[k]);
  487.         for(;++l < 4;)
  488.             TextDrawShowForPlayer(playerid, TextDrawInput[playerid][l]);
  489.         tdid[playerid] = textid;
  490.         Encryption[playerid] = encryption;
  491.         TextDrawSetString(TextDrawInput[playerid][1], title);
  492.         TextDrawSetString(TextDrawInput[playerid][0], text);
  493.         Karakter[playerid] = 0;
  494.         Elkezdodott[playerid] = true;
  495.         TogglePlayerControllable(playerid, false);
  496.         return 1;
  497.     }
  498.     return -1;
  499. }
  500.  
  501. //Eljárás
  502. forward OnTextDrawResponse(playerid, textid, input[]);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement