Advertisement
Guest User

Crates System By Dennis12

a guest
Nov 7th, 2017
1,205
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 62.20 KB | None | 0 0
  1. /*
  2. Credits to Dennis12
  3. */
  4.  
  5. #include        <a_samp>
  6. #include        <a_mysql>
  7. #include        <zcmd>
  8.  
  9.  
  10.  
  11. #define mysql_host          "localhost"
  12. #define mysql_db            "database"
  13. #define mysql_user          "root"
  14. #define mysql_pass          ""
  15.  
  16. #define SCM                 SendClientMessage
  17. #define COLOR_WHITE         0xFFFFFFFF
  18. #define COLOR_YELLOW2       0xFFFABAFF
  19. #define function%0(%1) forward%0(%1); public%0(%1)
  20.  
  21. #define pAdminx 1
  22. #define pCratesRedx 2
  23. #define pCratesGreenx 3
  24. #define pCratesCyanx 4
  25. #define pCratesYellowx 5
  26. #define pCratesPurplex 6
  27. #define pCratesSilverx 7
  28. #define pCratesBluex    8
  29. #define pCratesWhitex   9
  30. #define pCratesOlivex   10
  31. #define pGoldx          11
  32. #define pMPx            12
  33.  
  34. new Text:CrateTD[21], PlayerText:OpenCrate[14][MAX_PLAYERS],
  35.     PlayerText:CrateTDP[5][MAX_PLAYERS], InCrateObject[MAX_PLAYERS], InOpeningCrate[MAX_PLAYERS],
  36.     SelectedCrate[MAX_PLAYERS], InCrate[MAX_PLAYERS], CrateObject[MAX_PLAYERS], Text3D:CrateLabel;
  37.    
  38. new CP[MAX_PLAYERS];
  39.  
  40. // Random Spawns for Crates
  41. new Float: RedCratePos[2][3] = {
  42. {613.2607,875.6064,-42.9609},
  43. {1286.8658,292.3781,25.7998}
  44. };
  45. new Float: GreenCratePos[2][3] = {
  46. {1455.4850,750.9315,11.0234},
  47. {2162.3311,-102.8902,2.7500}
  48. };
  49. new Float: CyanCratePos[2][3] = {
  50. {675.0861,-446.5983,16.3359},
  51. {-506.3947,-546.9195,25.5234}
  52. };
  53. new Float: YellowCratePos[2][3] = {
  54. {-162.6437,-263.4322,3.9053},
  55. {-1503.4451,462.5266,7.1875}
  56. };
  57. new Float: PurpleCratePos[2][3] = {
  58. {-1044.3423,-638.6786,32.0078},
  59. {-2040.3641,-1059.0732,32.1236}
  60. };
  61. new Float: SilverCratePos[2][3] = {
  62. {-2916.7236,-115.1485,1.9857},
  63. {-2429.0637,-246.1238,35.5845}
  64. };
  65. new Float: BlueCratePos[2][3] = {
  66. {-2523.6860,-699.9822,139.3203},
  67. {-1434.8191,-1495.0349,101.7293}
  68. };
  69. new Float: WhiteCratePos[2][3] = {
  70. {-1861.9921,-1561.9691,21.7500},
  71. {-1103.1989,-1625.6826,76.3672}
  72. };
  73. new Float: OliveCratePos[2][3] = {
  74. {2941.4185,-2051.6262,3.5480},
  75. {1692.2935,-1956.0752,8.2500}
  76. };
  77. // GOLD | Mission Points   
  78. new CratePrice[9][2] = {
  79. {70, 35}, // RED CRATE
  80. {150, 75},  // Green Crate
  81. {200, 100}, // Cyan Crate
  82. {300, 150}, // Yellow Crate
  83. {300, 150}, // Purple Crate
  84. {400, 200}, // Silver Crate
  85. {400, 200}, // Blue Crate
  86. {250, 125}, // White Crate
  87. {450, 225} // Olive Crate
  88. };
  89.    
  90. stock CrateTextdrawsP(playerid) {
  91.     OpenCrate[0][playerid] = CreatePlayerTextDraw(playerid, 514.666687, 377.813323, "LD_SPAC:white");
  92.     PlayerTextDrawLetterSize(playerid, OpenCrate[0][playerid], 0.000000, 0.000000);
  93.     PlayerTextDrawTextSize(playerid, OpenCrate[0][playerid], -409.333343, -263.822204);
  94.     PlayerTextDrawAlignment(playerid, OpenCrate[0][playerid], 1);
  95.     PlayerTextDrawColor(playerid, OpenCrate[0][playerid], 255);
  96.     PlayerTextDrawSetShadow(playerid, OpenCrate[0][playerid], 0);
  97.     PlayerTextDrawSetOutline(playerid, OpenCrate[0][playerid], 0);
  98.     PlayerTextDrawFont(playerid, OpenCrate[0][playerid], 4);
  99.  
  100.     OpenCrate[1][playerid] = CreatePlayerTextDraw(playerid, 513.777893, 98.062217, "red crate");
  101.     PlayerTextDrawLetterSize(playerid, OpenCrate[1][playerid], 0.449999, 1.600000);
  102.     PlayerTextDrawAlignment(playerid, OpenCrate[1][playerid], 3);
  103.     PlayerTextDrawColor(playerid, OpenCrate[1][playerid], -1);
  104.     PlayerTextDrawSetShadow(playerid, OpenCrate[1][playerid], 0);
  105.     PlayerTextDrawSetOutline(playerid, OpenCrate[1][playerid], 1);
  106.     PlayerTextDrawBackgroundColor(playerid, OpenCrate[1][playerid], 51);
  107.     PlayerTextDrawFont(playerid, OpenCrate[1][playerid], 3);
  108.     PlayerTextDrawSetProportional(playerid, OpenCrate[1][playerid], 1);
  109.  
  110.     OpenCrate[2][playerid] = CreatePlayerTextDraw(playerid, 199.111083, 137.386672, "LD_SPAC:white");
  111.     PlayerTextDrawLetterSize(playerid, OpenCrate[2][playerid], 0.000000, 0.000000);
  112.     PlayerTextDrawTextSize(playerid, OpenCrate[2][playerid], 217.333358, 65.706665);
  113.     PlayerTextDrawAlignment(playerid, OpenCrate[2][playerid], 1);
  114.     PlayerTextDrawColor(playerid, OpenCrate[2][playerid], -2139062017);
  115.     PlayerTextDrawSetShadow(playerid, OpenCrate[2][playerid], 0);
  116.     PlayerTextDrawSetOutline(playerid, OpenCrate[2][playerid], 0);
  117.     PlayerTextDrawFont(playerid, OpenCrate[2][playerid], 4);
  118.  
  119.     OpenCrate[3][playerid] = CreatePlayerTextDraw(playerid, 341.111236, 144.362228, "usebox");
  120.     PlayerTextDrawLetterSize(playerid, OpenCrate[3][playerid], 0.000000, 5.380124);
  121.     PlayerTextDrawTextSize(playerid, OpenCrate[3][playerid], 283.777893, 0.000000);
  122.     PlayerTextDrawAlignment(playerid, OpenCrate[3][playerid], 1);
  123.     PlayerTextDrawColor(playerid, OpenCrate[3][playerid], -1061109505);
  124.     PlayerTextDrawUseBox(playerid, OpenCrate[3][playerid], true);
  125.     PlayerTextDrawBoxColor(playerid, OpenCrate[3][playerid], -1061109505);
  126.     PlayerTextDrawSetShadow(playerid, OpenCrate[3][playerid], 0);
  127.     PlayerTextDrawSetOutline(playerid, OpenCrate[3][playerid], 0);
  128.     PlayerTextDrawFont(playerid, OpenCrate[3][playerid], 0);
  129.  
  130.     OpenCrate[4][playerid] = CreatePlayerTextDraw(playerid, 407.777862, 144.860015, "usebox");
  131.     PlayerTextDrawLetterSize(playerid, OpenCrate[4][playerid], 0.000000, 5.380122);
  132.     PlayerTextDrawTextSize(playerid, OpenCrate[4][playerid], 350.444549, 0.000000);
  133.     PlayerTextDrawAlignment(playerid, OpenCrate[4][playerid], 1);
  134.     PlayerTextDrawColor(playerid, OpenCrate[4][playerid], 0);
  135.     PlayerTextDrawUseBox(playerid, OpenCrate[4][playerid], true);
  136.     PlayerTextDrawBoxColor(playerid, OpenCrate[4][playerid], -5963521);
  137.     PlayerTextDrawSetShadow(playerid, OpenCrate[4][playerid], 0);
  138.     PlayerTextDrawSetOutline(playerid, OpenCrate[4][playerid], 0);
  139.     PlayerTextDrawFont(playerid, OpenCrate[4][playerid], 0);
  140.  
  141.     OpenCrate[5][playerid] = CreatePlayerTextDraw(playerid, 122.666664, 219.022216, "LD_SPAC:white");
  142.     PlayerTextDrawLetterSize(playerid, OpenCrate[5][playerid], 0.000000, 0.000000);
  143.     PlayerTextDrawTextSize(playerid, OpenCrate[5][playerid], 26.666664, 26.879989);
  144.     PlayerTextDrawAlignment(playerid, OpenCrate[5][playerid], 1);
  145.     PlayerTextDrawColor(playerid, OpenCrate[5][playerid], -2139062017);
  146.     PlayerTextDrawSetShadow(playerid, OpenCrate[5][playerid], 0);
  147.     PlayerTextDrawSetOutline(playerid, OpenCrate[5][playerid], 0);
  148.     PlayerTextDrawFont(playerid, OpenCrate[5][playerid], 4);
  149.  
  150.     OpenCrate[6][playerid] = CreatePlayerTextDraw(playerid, 269.555572, 144.362228, "usebox");
  151.     PlayerTextDrawLetterSize(playerid, OpenCrate[6][playerid], 0.000000, 5.380122);
  152.     PlayerTextDrawTextSize(playerid, OpenCrate[6][playerid], 213.555557, 0.000000);
  153.     PlayerTextDrawAlignment(playerid, OpenCrate[6][playerid], 1);
  154.     PlayerTextDrawColor(playerid, OpenCrate[6][playerid], 0);
  155.     PlayerTextDrawUseBox(playerid, OpenCrate[6][playerid], true);
  156.     PlayerTextDrawBoxColor(playerid, OpenCrate[6][playerid], -16776961);
  157.     PlayerTextDrawSetShadow(playerid, OpenCrate[6][playerid], 0);
  158.     PlayerTextDrawSetOutline(playerid, OpenCrate[6][playerid], 0);
  159.     PlayerTextDrawFont(playerid, OpenCrate[6][playerid], 0);
  160.  
  161.     OpenCrate[7][playerid] = CreatePlayerTextDraw(playerid, 162.666717, 224.000015, "$1.000.000");
  162.     PlayerTextDrawLetterSize(playerid, OpenCrate[7][playerid], 0.449999, 1.600000);
  163.     PlayerTextDrawAlignment(playerid, OpenCrate[7][playerid], 1);
  164.     PlayerTextDrawColor(playerid, OpenCrate[7][playerid], -1);
  165.     PlayerTextDrawSetShadow(playerid, OpenCrate[7][playerid], 0);
  166.     PlayerTextDrawSetOutline(playerid, OpenCrate[7][playerid], 1);
  167.     PlayerTextDrawBackgroundColor(playerid, OpenCrate[7][playerid], 51);
  168.     PlayerTextDrawFont(playerid, OpenCrate[7][playerid], 2);
  169.     PlayerTextDrawSetProportional(playerid, OpenCrate[7][playerid], 1);
  170.  
  171.     OpenCrate[8][playerid] = CreatePlayerTextDraw(playerid, 122.666664, 259.342224, "LD_SPAC:white");
  172.     PlayerTextDrawLetterSize(playerid, OpenCrate[8][playerid], 0.000000, 0.000000);
  173.     PlayerTextDrawTextSize(playerid, OpenCrate[8][playerid], 26.666664, 27.377761);
  174.     PlayerTextDrawAlignment(playerid, OpenCrate[8][playerid], 1);
  175.     PlayerTextDrawColor(playerid, OpenCrate[8][playerid], -1);
  176.     PlayerTextDrawSetShadow(playerid, OpenCrate[8][playerid], 0);
  177.     PlayerTextDrawSetOutline(playerid, OpenCrate[8][playerid], 0);
  178.     PlayerTextDrawFont(playerid, OpenCrate[8][playerid], 4);
  179.  
  180.     OpenCrate[9][playerid] = CreatePlayerTextDraw(playerid, 163.999954, 266.311126, "$2.000.000");
  181.     PlayerTextDrawLetterSize(playerid, OpenCrate[9][playerid], 0.449999, 1.600000);
  182.     PlayerTextDrawAlignment(playerid, OpenCrate[9][playerid], 1);
  183.     PlayerTextDrawColor(playerid, OpenCrate[9][playerid], -1);
  184.     PlayerTextDrawSetShadow(playerid, OpenCrate[9][playerid], 0);
  185.     PlayerTextDrawSetOutline(playerid, OpenCrate[9][playerid], 1);
  186.     PlayerTextDrawBackgroundColor(playerid, OpenCrate[9][playerid], 51);
  187.     PlayerTextDrawFont(playerid, OpenCrate[9][playerid], 2);
  188.     PlayerTextDrawSetProportional(playerid, OpenCrate[9][playerid], 1);
  189.  
  190.     OpenCrate[10][playerid] = CreatePlayerTextDraw(playerid, 122.222221, 298.666656, "LD_SPAC:white");
  191.     PlayerTextDrawLetterSize(playerid, OpenCrate[10][playerid], 0.000000, 0.000000);
  192.     PlayerTextDrawTextSize(playerid, OpenCrate[10][playerid], 27.111106, 27.377777);
  193.     PlayerTextDrawAlignment(playerid, OpenCrate[10][playerid], 1);
  194.     PlayerTextDrawColor(playerid, OpenCrate[10][playerid], 65535);
  195.     PlayerTextDrawSetShadow(playerid, OpenCrate[10][playerid], 0);
  196.     PlayerTextDrawSetOutline(playerid, OpenCrate[10][playerid], 0);
  197.     PlayerTextDrawFont(playerid, OpenCrate[10][playerid], 4);
  198.  
  199.     OpenCrate[11][playerid] = CreatePlayerTextDraw(playerid, 164.444458, 305.137756, "50 Gold Points");
  200.     PlayerTextDrawLetterSize(playerid, OpenCrate[11][playerid], 0.449999, 1.600000);
  201.     PlayerTextDrawAlignment(playerid, OpenCrate[11][playerid], 1);
  202.     PlayerTextDrawColor(playerid, OpenCrate[11][playerid], -1);
  203.     PlayerTextDrawSetShadow(playerid, OpenCrate[11][playerid], 0);
  204.     PlayerTextDrawSetOutline(playerid, OpenCrate[11][playerid], 1);
  205.     PlayerTextDrawBackgroundColor(playerid, OpenCrate[11][playerid], 51);
  206.     PlayerTextDrawFont(playerid, OpenCrate[11][playerid], 2);
  207.     PlayerTextDrawSetProportional(playerid, OpenCrate[11][playerid], 1);
  208.  
  209.     OpenCrate[12][playerid] = CreatePlayerTextDraw(playerid, 121.333328, 336.995422, "LD_SPAC:white");
  210.     PlayerTextDrawLetterSize(playerid, OpenCrate[12][playerid], 0.000000, 0.000000);
  211.     PlayerTextDrawTextSize(playerid, OpenCrate[12][playerid], 28.444442, 26.880004);
  212.     PlayerTextDrawAlignment(playerid, OpenCrate[12][playerid], 1);
  213.     PlayerTextDrawColor(playerid, OpenCrate[12][playerid], -16776961);
  214.     PlayerTextDrawSetShadow(playerid, OpenCrate[12][playerid], 0);
  215.     PlayerTextDrawSetOutline(playerid, OpenCrate[12][playerid], 0);
  216.     PlayerTextDrawFont(playerid, OpenCrate[12][playerid], 4);
  217.  
  218.     OpenCrate[13][playerid] = CreatePlayerTextDraw(playerid, 164.444458, 343.466705, "1 Mission Points");
  219.     PlayerTextDrawLetterSize(playerid, OpenCrate[13][playerid], 0.449999, 1.600000);
  220.     PlayerTextDrawAlignment(playerid, OpenCrate[13][playerid], 1);
  221.     PlayerTextDrawColor(playerid, OpenCrate[13][playerid], -1);
  222.     PlayerTextDrawSetShadow(playerid, OpenCrate[13][playerid], 0);
  223.     PlayerTextDrawSetOutline(playerid, OpenCrate[13][playerid], 1);
  224.     PlayerTextDrawBackgroundColor(playerid, OpenCrate[13][playerid], 51);
  225.     PlayerTextDrawFont(playerid, OpenCrate[13][playerid], 2);
  226.     PlayerTextDrawSetProportional(playerid, OpenCrate[13][playerid], 1);
  227.  
  228.     CrateTDP[0][playerid] = CreatePlayerTextDraw(playerid, 474.666717, 125.440017, "Red Crate");
  229.     PlayerTextDrawLetterSize(playerid, CrateTDP[0][playerid], 0.449999, 1.600000);
  230.     PlayerTextDrawAlignment(playerid, CrateTDP[0][playerid], 2);
  231.     PlayerTextDrawColor(playerid, CrateTDP[0][playerid], -1);
  232.     PlayerTextDrawSetShadow(playerid, CrateTDP[0][playerid], 0);
  233.     PlayerTextDrawSetOutline(playerid, CrateTDP[0][playerid], 1);
  234.     PlayerTextDrawBackgroundColor(playerid, CrateTDP[0][playerid], 51);
  235.     PlayerTextDrawFont(playerid, CrateTDP[0][playerid], 3);
  236.     PlayerTextDrawSetProportional(playerid, CrateTDP[0][playerid], 1);
  237.  
  238.     CrateTDP[1][playerid] = CreatePlayerTextDraw(playerid, 412.888793, 173.226608, "1.000.000$~n~1Hidden Color");
  239.     PlayerTextDrawLetterSize(playerid, CrateTDP[1][playerid], 0.362444, 1.206755);
  240.     PlayerTextDrawAlignment(playerid, CrateTDP[1][playerid], 1);
  241.     PlayerTextDrawColor(playerid, CrateTDP[1][playerid], -1);
  242.     PlayerTextDrawSetShadow(playerid, CrateTDP[1][playerid], 0);
  243.     PlayerTextDrawSetOutline(playerid, CrateTDP[1][playerid], 1);
  244.     PlayerTextDrawBackgroundColor(playerid, CrateTDP[1][playerid], 51);
  245.     PlayerTextDrawFont(playerid, CrateTDP[1][playerid], 3);
  246.     PlayerTextDrawSetProportional(playerid, CrateTDP[1][playerid], 1);
  247.  
  248.     CrateTDP[2][playerid] = CreatePlayerTextDraw(playerid, 418.666534, 386.275573, "ORDER");
  249.     PlayerTextDrawLetterSize(playerid, CrateTDP[2][playerid], 0.745556, 2.092800);
  250.     PlayerTextDrawTextSize(playerid, CrateTDP[2][playerid], 524.444519, 17.920000);
  251.     PlayerTextDrawAlignment(playerid, CrateTDP[2][playerid], 1);
  252.     PlayerTextDrawColor(playerid, CrateTDP[2][playerid], -1);
  253.     PlayerTextDrawUseBox(playerid, CrateTDP[2][playerid], true);
  254.     PlayerTextDrawBoxColor(playerid, CrateTDP[2][playerid], 8388863);
  255.     PlayerTextDrawSetShadow(playerid, CrateTDP[2][playerid], 0);
  256.     PlayerTextDrawSetOutline(playerid, CrateTDP[2][playerid], 1);
  257.     PlayerTextDrawBackgroundColor(playerid, CrateTDP[2][playerid], 51);
  258.     PlayerTextDrawFont(playerid, CrateTDP[2][playerid], 2);
  259.     PlayerTextDrawSetProportional(playerid, CrateTDP[2][playerid], 1);
  260.     PlayerTextDrawSetSelectable(playerid, CrateTDP[2][playerid], true);
  261.  
  262.     CrateTDP[3][playerid] = CreatePlayerTextDraw(playerid, 444.444458, 91.591102, "BALANCE: ~Y~2~W~MP/~Y~500~W~GOLD");
  263.     PlayerTextDrawLetterSize(playerid, CrateTDP[3][playerid], 0.449999, 1.600000);
  264.     PlayerTextDrawAlignment(playerid, CrateTDP[3][playerid], 2);
  265.     PlayerTextDrawColor(playerid, CrateTDP[3][playerid], -1);
  266.     PlayerTextDrawSetShadow(playerid, CrateTDP[3][playerid], 0);
  267.     PlayerTextDrawSetOutline(playerid, CrateTDP[3][playerid], 1);
  268.     PlayerTextDrawBackgroundColor(playerid, CrateTDP[3][playerid], 51);
  269.     PlayerTextDrawFont(playerid, CrateTDP[3][playerid], 3);
  270.     PlayerTextDrawSetProportional(playerid, CrateTDP[3][playerid], 1);
  271.    
  272.     CrateTDP[4][playerid] = CreatePlayerTextDraw(playerid, 471.555450, 356.906677, "~Y~70G~w~ /~Y~ 35MP");
  273.     PlayerTextDrawLetterSize(playerid, CrateTDP[4][playerid], 0.277555, 1.495466);
  274.     PlayerTextDrawAlignment(playerid, CrateTDP[4][playerid], 2);
  275.     PlayerTextDrawColor(playerid, CrateTDP[4][playerid], -1);
  276.     PlayerTextDrawSetShadow(playerid, CrateTDP[4][playerid], 0);
  277.     PlayerTextDrawSetOutline(playerid, CrateTDP[4][playerid], 1);
  278.     PlayerTextDrawBackgroundColor(playerid, CrateTDP[4][playerid], 51);
  279.     PlayerTextDrawFont(playerid, CrateTDP[4][playerid], 2);
  280.     PlayerTextDrawSetProportional(playerid, CrateTDP[4][playerid], 1);
  281.    
  282.     return 1;
  283. }
  284. stock CrateTextdraws() {
  285.     CrateTD[0] = TextDrawCreate(542.000000, 114.495552, "usebox");
  286.     TextDrawLetterSize(CrateTD[0], 0.000000, 32.923828);
  287.     TextDrawTextSize(CrateTD[0], 92.222221, 0.000000);
  288.     TextDrawAlignment(CrateTD[0], 1);
  289.     TextDrawColor(CrateTD[0], 0);
  290.     TextDrawUseBox(CrateTD[0], true);
  291.     TextDrawBoxColor(CrateTD[0], 255);
  292.     TextDrawSetShadow(CrateTD[0], 0);
  293.     TextDrawSetOutline(CrateTD[0], 0);
  294.     TextDrawFont(CrateTD[0], 0);
  295.  
  296.     CrateTD[1] = TextDrawCreate(408.222137, 118.975555, "usebox");
  297.     TextDrawLetterSize(CrateTD[1], 0.000000, 31.752471);
  298.     TextDrawTextSize(CrateTD[1], 97.111106, 0.000000);
  299.     TextDrawAlignment(CrateTD[1], 1);
  300.     TextDrawColor(CrateTD[1], 0);
  301.     TextDrawUseBox(CrateTD[1], true);
  302.     TextDrawBoxColor(CrateTD[1], 758198783);
  303.     TextDrawSetShadow(CrateTD[1], 0);
  304.     TextDrawSetOutline(CrateTD[1], 0);
  305.     TextDrawFont(CrateTD[1], 0);
  306.  
  307.     CrateTD[2] = TextDrawCreate(103.111114, 122.453338, "LD_SPAC:white");
  308.     TextDrawLetterSize(CrateTD[2], 0.000000, 0.000000);
  309.     TextDrawTextSize(CrateTD[2], 91.999984, 80.639999);
  310.     TextDrawAlignment(CrateTD[2], 1);
  311.     TextDrawColor(CrateTD[2], -16776961);
  312.     TextDrawUseBox(CrateTD[2], true);
  313.     TextDrawBoxColor(CrateTD[2], 112);
  314.     TextDrawSetShadow(CrateTD[2], 0);
  315.     TextDrawSetOutline(CrateTD[2], 0);
  316.     TextDrawFont(CrateTD[2], 5);
  317.     TextDrawSetPreviewModel(CrateTD[2], 1224);
  318.     TextDrawSetPreviewRot(CrateTD[2], 150.000000, 0.000000, 135.000000, 1.000000);
  319.     TextDrawSetSelectable(CrateTD[2], true);
  320.  
  321.     CrateTD[3] = TextDrawCreate(208.000000, 122.453330, "LD_SPAC:white");
  322.     TextDrawLetterSize(CrateTD[3], 0.000000, 0.000000);
  323.     TextDrawTextSize(CrateTD[3], 91.999984, 81.137771);
  324.     TextDrawAlignment(CrateTD[3], 1);
  325.     TextDrawColor(CrateTD[3], 16711935);
  326.     TextDrawUseBox(CrateTD[3], true);
  327.     TextDrawBoxColor(CrateTD[3], 0);
  328.     TextDrawSetShadow(CrateTD[3], 0);
  329.     TextDrawSetOutline(CrateTD[3], 0);
  330.     TextDrawFont(CrateTD[3], 5);
  331.     TextDrawSetPreviewModel(CrateTD[3], 1224);
  332.     TextDrawSetPreviewRot(CrateTD[3], 150.000000, 0.000000, 135.000000, 1.000000);
  333.     TextDrawSetSelectable(CrateTD[3], true);
  334.  
  335.     CrateTD[4] = TextDrawCreate(309.777954, 122.951126, "LD_SPAC:white");
  336.     TextDrawLetterSize(CrateTD[4], 0.000000, 0.000000);
  337.     TextDrawTextSize(CrateTD[4], 91.999984, 80.639999);
  338.     TextDrawAlignment(CrateTD[4], 1);
  339.     TextDrawColor(CrateTD[4], 16777215);
  340.     TextDrawUseBox(CrateTD[4], true);
  341.     TextDrawBoxColor(CrateTD[4], 0);
  342.     TextDrawSetShadow(CrateTD[4], 0);
  343.     TextDrawSetOutline(CrateTD[4], 0);
  344.     TextDrawFont(CrateTD[4], 5);
  345.     TextDrawSetPreviewModel(CrateTD[4], 1224);
  346.     TextDrawSetPreviewRot(CrateTD[4], 150.000000, 0.000000, 135.000000, 1.000000);
  347.     TextDrawSetSelectable(CrateTD[4], true);
  348.  
  349.     CrateTD[5] = TextDrawCreate(103.555549, 217.528793, "LD_SPAC:white");
  350.     TextDrawLetterSize(CrateTD[5], 0.000000, 0.000000);
  351.     TextDrawTextSize(CrateTD[5], 92.000007, 79.644447);
  352.     TextDrawAlignment(CrateTD[5], 1);
  353.     TextDrawColor(CrateTD[5], -65281);
  354.     TextDrawUseBox(CrateTD[5], true);
  355.     TextDrawBoxColor(CrateTD[5], 0);
  356.     TextDrawSetShadow(CrateTD[5], 0);
  357.     TextDrawSetOutline(CrateTD[5], 0);
  358.     TextDrawFont(CrateTD[5], 5);
  359.     TextDrawSetPreviewModel(CrateTD[5], 1224);
  360.     TextDrawSetPreviewRot(CrateTD[5], 150.000000, 0.000000, 135.000000, 1.000000);
  361.     TextDrawSetSelectable(CrateTD[5], true);
  362.  
  363.     CrateTD[6] = TextDrawCreate(208.444458, 218.026641, "LD_SPAC:white");
  364.     TextDrawLetterSize(CrateTD[6], 0.000000, 0.000000);
  365.     TextDrawTextSize(CrateTD[6], 91.999984, 80.142227);
  366.     TextDrawAlignment(CrateTD[6], 1);
  367.     TextDrawColor(CrateTD[6], -16711681);
  368.     TextDrawUseBox(CrateTD[6], true);
  369.     TextDrawBoxColor(CrateTD[6], 0);
  370.     TextDrawSetShadow(CrateTD[6], 0);
  371.     TextDrawSetOutline(CrateTD[6], 0);
  372.     TextDrawFont(CrateTD[6], 5);
  373.     TextDrawSetPreviewModel(CrateTD[6], 1224);
  374.     TextDrawSetPreviewRot(CrateTD[6], 150.000000, 0.000000, 135.000000, 1.000000);
  375.     TextDrawSetSelectable(CrateTD[6], true);
  376.  
  377.     CrateTD[7] = TextDrawCreate(310.666564, 218.524459, "LD_SPAC:white");
  378.     TextDrawLetterSize(CrateTD[7], 0.000000, 0.000000);
  379.     TextDrawTextSize(CrateTD[7], 92.000000, 80.142211);
  380.     TextDrawAlignment(CrateTD[7], 1);
  381.     TextDrawColor(CrateTD[7], -1);
  382.     TextDrawUseBox(CrateTD[7], true);
  383.     TextDrawBoxColor(CrateTD[7], 0);
  384.     TextDrawSetShadow(CrateTD[7], 0);
  385.     TextDrawSetOutline(CrateTD[7], 0);
  386.     TextDrawFont(CrateTD[7], 5);
  387.     TextDrawSetPreviewModel(CrateTD[7], 1224);
  388.     TextDrawSetPreviewRot(CrateTD[7], 150.000000, 0.000000, 135.000000, 1.000000);
  389.     TextDrawSetSelectable(CrateTD[7], true);
  390.  
  391.     CrateTD[8] = TextDrawCreate(103.555549, 310.115600, "LD_SPAC:white");
  392.     TextDrawLetterSize(CrateTD[8], 0.000000, 0.000000);
  393.     TextDrawTextSize(CrateTD[8], 92.888885, 79.644424);
  394.     TextDrawAlignment(CrateTD[8], 1);
  395.     TextDrawColor(CrateTD[8], 65535);
  396.     TextDrawUseBox(CrateTD[8], true);
  397.     TextDrawBoxColor(CrateTD[8], 0);
  398.     TextDrawSetShadow(CrateTD[8], 0);
  399.     TextDrawSetOutline(CrateTD[8], 0);
  400.     TextDrawFont(CrateTD[8], 5);
  401.     TextDrawSetPreviewModel(CrateTD[8], 1224);
  402.     TextDrawSetPreviewRot(CrateTD[8], 150.000000, 0.000000, 135.000000, 1.000000);
  403.     TextDrawSetSelectable(CrateTD[8], true);
  404.  
  405.     CrateTD[9] = TextDrawCreate(209.333328, 310.613311, "LD_SPAC:white");
  406.     TextDrawLetterSize(CrateTD[9], 0.000000, 0.000000);
  407.     TextDrawTextSize(CrateTD[9], 91.111099, 79.146667);
  408.     TextDrawAlignment(CrateTD[9], 1);
  409.     TextDrawColor(CrateTD[9], -1061241089);
  410.     TextDrawUseBox(CrateTD[9], true);
  411.     TextDrawBoxColor(CrateTD[9], 0);
  412.     TextDrawSetShadow(CrateTD[9], 0);
  413.     TextDrawSetOutline(CrateTD[9], 0);
  414.     TextDrawFont(CrateTD[9], 5);
  415.     TextDrawSetPreviewModel(CrateTD[9], 1224);
  416.     TextDrawSetPreviewRot(CrateTD[9], 150.000000, 0.000000, 135.000000, 1.000000);
  417.     TextDrawSetSelectable(CrateTD[9], true);
  418.  
  419.     CrateTD[10] = TextDrawCreate(310.222137, 310.613311, "LD_SPAC:white");
  420.     TextDrawLetterSize(CrateTD[10], 0.000000, 0.000000);
  421.     TextDrawTextSize(CrateTD[10], 92.444427, 80.640014);
  422.     TextDrawAlignment(CrateTD[10], 1);
  423.     TextDrawColor(CrateTD[10], -1565978369);
  424.     TextDrawUseBox(CrateTD[10], true);
  425.     TextDrawBoxColor(CrateTD[10], 0);
  426.     TextDrawSetShadow(CrateTD[10], 0);
  427.     TextDrawSetOutline(CrateTD[10], 0);
  428.     TextDrawFont(CrateTD[10], 5);
  429.     TextDrawSetPreviewModel(CrateTD[10], 1224);
  430.     TextDrawSetPreviewRot(CrateTD[10], 150.000000, 0.000000, 135.000000, 1.000000);
  431.     TextDrawSetSelectable(CrateTD[10], true);
  432.  
  433.     CrateTD[11] = TextDrawCreate(198.000000, 124.948928, "usebox");
  434.     TextDrawLetterSize(CrateTD[11], 0.000000, 8.588026);
  435.     TextDrawTextSize(CrateTD[11], 102.000000, 0.000000);
  436.     TextDrawAlignment(CrateTD[11], 1);
  437.     TextDrawColor(CrateTD[11], 0);
  438.     TextDrawUseBox(CrateTD[11], true);
  439.     TextDrawBoxColor(CrateTD[11], 112);
  440.     TextDrawSetShadow(CrateTD[11], 0);
  441.     TextDrawSetOutline(CrateTD[11], 0);
  442.     TextDrawFont(CrateTD[11], 1);
  443.  
  444.     CrateTD[12] = TextDrawCreate(302.000061, 124.948905, "usebox");
  445.     TextDrawLetterSize(CrateTD[12], 0.000000, 8.643332);
  446.     TextDrawTextSize(CrateTD[12], 206.444396, 0.000000);
  447.     TextDrawAlignment(CrateTD[12], 1);
  448.     TextDrawColor(CrateTD[12], 0);
  449.     TextDrawUseBox(CrateTD[12], true);
  450.     TextDrawBoxColor(CrateTD[12], 102);
  451.     TextDrawSetShadow(CrateTD[12], 0);
  452.     TextDrawSetOutline(CrateTD[12], 0);
  453.     TextDrawFont(CrateTD[12], 0);
  454.  
  455.     CrateTD[13] = TextDrawCreate(403.333404, 124.948875, "usebox");
  456.     TextDrawLetterSize(CrateTD[13], 0.000000, 8.698643);
  457.     TextDrawTextSize(CrateTD[13], 308.666687, 0.000000);
  458.     TextDrawAlignment(CrateTD[13], 1);
  459.     TextDrawColor(CrateTD[13], 0);
  460.     TextDrawUseBox(CrateTD[13], true);
  461.     TextDrawBoxColor(CrateTD[13], 102);
  462.     TextDrawSetShadow(CrateTD[13], 0);
  463.     TextDrawSetOutline(CrateTD[13], 0);
  464.     TextDrawFont(CrateTD[13], 0);
  465.  
  466.     CrateTD[14] = TextDrawCreate(198.000000, 219.028884, "usebox");
  467.     TextDrawLetterSize(CrateTD[14], 0.000000, 8.588026);
  468.     TextDrawTextSize(CrateTD[14], 100.666664, 0.000000);
  469.     TextDrawAlignment(CrateTD[14], 1);
  470.     TextDrawColor(CrateTD[14], 0);
  471.     TextDrawUseBox(CrateTD[14], true);
  472.     TextDrawBoxColor(CrateTD[14], 102);
  473.     TextDrawSetShadow(CrateTD[14], 0);
  474.     TextDrawSetOutline(CrateTD[14], 0);
  475.     TextDrawFont(CrateTD[14], 0);
  476.  
  477.     CrateTD[15] = TextDrawCreate(302.444458, 219.526672, "usebox");
  478.     TextDrawLetterSize(CrateTD[15], 0.000000, 8.532715);
  479.     TextDrawTextSize(CrateTD[15], 205.555557, 0.000000);
  480.     TextDrawAlignment(CrateTD[15], 1);
  481.     TextDrawColor(CrateTD[15], 0);
  482.     TextDrawUseBox(CrateTD[15], true);
  483.     TextDrawBoxColor(CrateTD[15], 102);
  484.     TextDrawSetShadow(CrateTD[15], 0);
  485.     TextDrawSetOutline(CrateTD[15], 0);
  486.     TextDrawFont(CrateTD[15], 0);
  487.  
  488.     CrateTD[16] = TextDrawCreate(404.222229, 220.024444, "usebox");
  489.     TextDrawLetterSize(CrateTD[16], 0.000000, 8.643331);
  490.     TextDrawTextSize(CrateTD[16], 308.666687, 0.000000);
  491.     TextDrawAlignment(CrateTD[16], 1);
  492.     TextDrawColor(CrateTD[16], 0);
  493.     TextDrawUseBox(CrateTD[16], true);
  494.     TextDrawBoxColor(CrateTD[16], 102);
  495.     TextDrawSetShadow(CrateTD[16], 0);
  496.     TextDrawSetOutline(CrateTD[16], 0);
  497.     TextDrawFont(CrateTD[16], 0);
  498.  
  499.     CrateTD[17] = TextDrawCreate(198.000000, 311.117767, "usebox");
  500.     TextDrawLetterSize(CrateTD[17], 0.000000, 8.532719);
  501.     TextDrawTextSize(CrateTD[17], 101.555557, 0.000000);
  502.     TextDrawAlignment(CrateTD[17], 1);
  503.     TextDrawColor(CrateTD[17], 0);
  504.     TextDrawUseBox(CrateTD[17], true);
  505.     TextDrawBoxColor(CrateTD[17], 102);
  506.     TextDrawSetShadow(CrateTD[17], 0);
  507.     TextDrawSetOutline(CrateTD[17], 0);
  508.     TextDrawFont(CrateTD[17], 0);
  509.  
  510.     CrateTD[18] = TextDrawCreate(302.888885, 311.615570, "usebox");
  511.     TextDrawLetterSize(CrateTD[18], 0.000000, 8.422096);
  512.     TextDrawTextSize(CrateTD[18], 207.333328, 0.000000);
  513.     TextDrawAlignment(CrateTD[18], 1);
  514.     TextDrawColor(CrateTD[18], 0);
  515.     TextDrawUseBox(CrateTD[18], true);
  516.     TextDrawBoxColor(CrateTD[18], 102);
  517.     TextDrawSetShadow(CrateTD[18], 0);
  518.     TextDrawSetOutline(CrateTD[18], 0);
  519.     TextDrawFont(CrateTD[18], 0);
  520.  
  521.     CrateTD[19] = TextDrawCreate(405.111114, 311.615570, "usebox");
  522.     TextDrawLetterSize(CrateTD[19], 0.000000, 8.698639);
  523.     TextDrawTextSize(CrateTD[19], 307.333312, 0.000000);
  524.     TextDrawAlignment(CrateTD[19], 1);
  525.     TextDrawColor(CrateTD[19], 0);
  526.     TextDrawUseBox(CrateTD[19], true);
  527.     TextDrawBoxColor(CrateTD[19], 102);
  528.     TextDrawSetShadow(CrateTD[19], 0);
  529.     TextDrawSetOutline(CrateTD[19], 0);
  530.     TextDrawFont(CrateTD[19], 0);
  531.  
  532.     CrateTD[20] = TextDrawCreate(346.222229, 86.613327, "LD_SPAC:white");
  533.     TextDrawLetterSize(CrateTD[20], 0.000000, 0.000000);
  534.     TextDrawTextSize(CrateTD[20], 193.333312, 26.880004);
  535.     TextDrawAlignment(CrateTD[20], 1);
  536.     TextDrawColor(CrateTD[20], 255);
  537.     TextDrawSetShadow(CrateTD[20], 0);
  538.     TextDrawSetOutline(CrateTD[20], 0);
  539.     TextDrawFont(CrateTD[20], 4);
  540.     return 1;
  541. }
  542.  
  543. enum
  544. {
  545.     DIALOG_REGISTER,
  546.     DIALOG_LOGIN,
  547.     DIALOG_AGE,
  548.     DIALOG_SEX,
  549.     DIALOG_EMAIL,
  550.     DIALOG_CRATES,
  551.     DIALOG_BUYCRATE
  552. };
  553. enum pInfo
  554. {
  555.     pID,
  556.     pPassword,
  557.     pAdmin,
  558.     pMoney,
  559.     pHelper,
  560.     pCrates[10],
  561.     pMP, pGold
  562. };
  563.  
  564. new PlayerInfo[MAX_PLAYERS][pInfo];
  565. new MySQL:g_Sql;
  566.  
  567. main()
  568. {
  569.     print("\n--------------------------------------");
  570.     print(" Crates System By Dennis12");
  571.     print(" PAWNO.RO | SA-MP.RO ");
  572.     print("--------------------------------------\n");
  573. }
  574.  
  575. public OnPlayerClickMap(playerid, Float:fX, Float:fY, Float:fZ) {
  576.     if (GetPlayerState(playerid) == 2) SetVehiclePos(GetPlayerVehicleID(playerid), fX, fY, fZ+5);
  577.     else SetPlayerPosFindZ(playerid, fX, fY, fZ+5);
  578. }
  579. forward Update(playerid, type);
  580. public Update(playerid, type) {
  581.     new var[ 256 ];
  582.     switch(type) {
  583.         case pAdminx: format(var, sizeof(var), "UPDATE `users` SET `Admin`='%d' WHERE `ID`='%d'",PlayerInfo[playerid][pAdmin], PlayerInfo[playerid][pID]);
  584.         case pCratesRedx: format(var, sizeof(var), "UPDATE `users` SET `CratesRed`='%d' WHERE `ID`='%d'",PlayerInfo[playerid][pCrates][0], PlayerInfo[playerid][pID]);
  585.         case pCratesGreenx: format(var, sizeof(var), "UPDATE `users` SET `CratesGreen`='%d' WHERE `ID`='%d'",PlayerInfo[playerid][pCrates][1], PlayerInfo[playerid][pID]);
  586.         case pCratesCyanx: format(var, sizeof(var), "UPDATE `users` SET `CratesCyan`='%d' WHERE `ID`='%d''", PlayerInfo[playerid][pCrates][2], PlayerInfo[playerid][pID]);
  587.         case pCratesYellowx: format(var, sizeof(var), "UPDATE `users` SET `CratesYellow`='%d' WHERE `ID`='%d''", PlayerInfo[playerid][pCrates][3], PlayerInfo[playerid][pID]);
  588.         case pCratesPurplex: format(var, sizeof(var), "UPDATE `users` SET `CratesPurple`='%d' WHERE `ID`='%d'", PlayerInfo[playerid][pCrates][4], PlayerInfo[playerid][pID]);
  589.         case pCratesSilverx: format(var, sizeof(var), "UPDATE `users` SET `CratesSilver`='%d' WHERE `ID`='%d'", PlayerInfo[playerid][pCrates][5], PlayerInfo[playerid][pID]);
  590.         case pCratesBluex: format(var, sizeof(var), "UPDATE `users` SET `CratesBlue`='%d' WHERE `ID`='%d'", PlayerInfo[playerid][pCrates][6], PlayerInfo[playerid][pID]);
  591.         case pCratesWhitex: format(var, sizeof(var), "UPDATE `users` SET `CratesWhite`='%d', WHERE `ID`='%d'",PlayerInfo[playerid][pCrates][7], PlayerInfo[playerid][pID]);
  592.         case pCratesOlivex: format(var, sizeof(var), "UPDATE `users` SET `CratesOlive`='%d', WHERE `ID`='%d'",PlayerInfo[playerid][pCrates][8], PlayerInfo[playerid][pID]);
  593.         case pGoldx: format(var, sizeof(var), "UPDATE `users` SET `Gold`='%d', WHERE `ID`='%d'",PlayerInfo[playerid][pGold], PlayerInfo[playerid][pID]);
  594.         case pMPx: format(var, sizeof(var), "UPDATE `users` SET `MP`='%d', WHERE `ID`='%d'",PlayerInfo[playerid][pMP], PlayerInfo[playerid][pID]);
  595.     }
  596.     mysql_query(g_Sql ,var);
  597.     return 1;
  598. }
  599.  
  600. public OnGameModeInit()
  601. {
  602.     MySQLConnect();
  603.     SetGameModeText("GM v0.1");
  604.     AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
  605.     Create3DTextLabel("Apasa tasta 'N' pentru a accesa meniul de 'Crates Buy'.",0xFFFFFFFF,-2255.1516,-1721.0339,479.8412,10.0, 0, 1);
  606.     CrateTextdraws();
  607.     return 1;
  608. }
  609.  
  610. public OnGameModeExit()
  611. {
  612.     mysql_close( g_Sql );
  613.     return 1;
  614. }
  615.  
  616. public OnPlayerClickPlayerTextDraw(playerid, PlayerText:playertextid)
  617. {
  618.     if(playertextid == CrateTDP[2][playerid]) {
  619.         HideCratesTD(playerid);
  620.         new FormatCrate[ 128 ];
  621.         format(FormatCrate, 128, "Price: %d MP / %d G", CratePrice[SelectedCrate[playerid]][1], CratePrice[SelectedCrate[playerid]][0]);
  622.         ShowPlayerDialog(playerid, DIALOG_BUYCRATE, DIALOG_STYLE_MSGBOX, "Crate Shop", FormatCrate, "MP", "Gold");
  623.     }
  624.     return 1;
  625. }
  626. public OnPlayerClickTextDraw(playerid, Text:clickedid)
  627. {
  628.     if(clickedid == Text:INVALID_TEXT_DRAW) if(InCrate[playerid] == 1) HideCratesTD(playerid)
  629.     if(clickedid == Text: CrateTD[2]) {
  630.         SelectedCrate[playerid] = 0;
  631.         PlayerTextDrawSetString(playerid, CrateTDP[0][playerid], "Red Crate");
  632.         PlayerTextDrawShow(playerid, CrateTDP[0][playerid]);
  633.         PlayerTextDrawSetString(playerid, CrateTDP[1][playerid], "$1.000.000~n~1 Hidden Color~n~20 Gold Points");
  634.         PlayerTextDrawShow(playerid, CrateTDP[1][playerid]);
  635.         PlayerTextDrawShow(playerid, CrateTDP[2][playerid]);
  636.         new str[ 128 ];
  637.         format(str, 128, "~Y~%dG~w~ /~Y~ %dMP", CratePrice[SelectedCrate[playerid]][0], CratePrice[SelectedCrate[playerid]][1]);
  638.         PlayerTextDrawSetString(playerid, CrateTDP[4][playerid], str);
  639.         PlayerTextDrawShow(playerid, CrateTDP[4][playerid]);
  640.     }
  641.     if(clickedid == Text: CrateTD[3]) {
  642.         SelectedCrate[playerid] = 1;
  643.         PlayerTextDrawSetString(playerid, CrateTDP[0][playerid], "Green Crate");
  644.         PlayerTextDrawShow(playerid, CrateTDP[0][playerid]);
  645.         PlayerTextDrawSetString(playerid, CrateTDP[1][playerid], "$2.000.000~n~3 Hidden Color~n~50 Gold Points");
  646.         PlayerTextDrawShow(playerid, CrateTDP[1][playerid]);
  647.         PlayerTextDrawShow(playerid, CrateTDP[2][playerid]);
  648.         new str[ 128 ];
  649.         format(str, 128, "~Y~%dG~w~ /~Y~ %dMP", CratePrice[SelectedCrate[playerid]][0], CratePrice[SelectedCrate[playerid]][1]);
  650.         PlayerTextDrawSetString(playerid, CrateTDP[4][playerid], str);
  651.         PlayerTextDrawShow(playerid, CrateTDP[4][playerid]);
  652.     }
  653.     if(clickedid == Text: CrateTD[4]) {
  654.         SelectedCrate[playerid] = 2;
  655.         PlayerTextDrawSetString(playerid, CrateTDP[0][playerid], "Cyan Crate");
  656.         PlayerTextDrawShow(playerid, CrateTDP[0][playerid]);
  657.         PlayerTextDrawSetString(playerid, CrateTDP[1][playerid], "$3.000.000~n~4 Hidden Color~n~70 Gold Points");
  658.         PlayerTextDrawShow(playerid, CrateTDP[1][playerid]);
  659.         PlayerTextDrawShow(playerid, CrateTDP[2][playerid]);
  660.         new str[ 128 ];
  661.         format(str, 128, "~Y~%dG~w~ /~Y~ %dMP", CratePrice[SelectedCrate[playerid]][0], CratePrice[SelectedCrate[playerid]][1]);
  662.         PlayerTextDrawSetString(playerid, CrateTDP[4][playerid], str);
  663.         PlayerTextDrawShow(playerid, CrateTDP[4][playerid]);
  664.     }
  665.     if(clickedid == Text: CrateTD[5]) {
  666.         SelectedCrate[playerid] = 3;
  667.         PlayerTextDrawSetString(playerid, CrateTDP[0][playerid], "Yellow Crate");
  668.         PlayerTextDrawShow(playerid, CrateTDP[0][playerid]);
  669.         PlayerTextDrawSetString(playerid, CrateTDP[1][playerid], "$4.000.000~n~5 Hidden Color~n~90 Gold Points");
  670.         PlayerTextDrawShow(playerid, CrateTDP[1][playerid]);
  671.         PlayerTextDrawShow(playerid, CrateTDP[2][playerid]);
  672.         new str[ 128 ];
  673.         format(str, 128, "~Y~%dG~w~ /~Y~ %dMP", CratePrice[SelectedCrate[playerid]][0], CratePrice[SelectedCrate[playerid]][1]);
  674.         PlayerTextDrawSetString(playerid, CrateTDP[4][playerid], str);
  675.         PlayerTextDrawShow(playerid, CrateTDP[4][playerid]);
  676.     }
  677.     if(clickedid == Text: CrateTD[6]) {
  678.         SelectedCrate[playerid] = 4;
  679.         PlayerTextDrawSetString(playerid, CrateTDP[0][playerid], "Purple Crate");
  680.         PlayerTextDrawShow(playerid, CrateTDP[0][playerid]);
  681.         PlayerTextDrawSetString(playerid, CrateTDP[1][playerid], "$5.000.000~n~10 Hidden Color~n~100 Gold Points");
  682.         PlayerTextDrawShow(playerid, CrateTDP[1][playerid]);
  683.         PlayerTextDrawShow(playerid, CrateTDP[2][playerid]);
  684.         new str[ 128 ];
  685.         format(str, 128, "~Y~%dG~w~ /~Y~ %dMP", CratePrice[SelectedCrate[playerid]][0], CratePrice[SelectedCrate[playerid]][1]);
  686.         PlayerTextDrawSetString(playerid, CrateTDP[4][playerid], str);
  687.         PlayerTextDrawShow(playerid, CrateTDP[4][playerid]);
  688.     }
  689.     if(clickedid == Text: CrateTD[7]) {
  690.         SelectedCrate[playerid] = 5;
  691.         PlayerTextDrawSetString(playerid, CrateTDP[0][playerid], "Silver Crate");
  692.         PlayerTextDrawShow(playerid, CrateTDP[0][playerid]);
  693.         PlayerTextDrawSetString(playerid, CrateTDP[1][playerid], "$6.000.000~n~20 Hidden Color~n~150 Gold Points");
  694.         PlayerTextDrawShow(playerid, CrateTDP[1][playerid]);
  695.         PlayerTextDrawShow(playerid, CrateTDP[2][playerid]);
  696.         new str[ 128 ];
  697.         format(str, 128, "~Y~%dG~w~ /~Y~ %dMP", CratePrice[SelectedCrate[playerid]][0], CratePrice[SelectedCrate[playerid]][1]);
  698.         PlayerTextDrawSetString(playerid, CrateTDP[4][playerid], str);
  699.         PlayerTextDrawShow(playerid, CrateTDP[4][playerid]);
  700.     }
  701.     if(clickedid == Text: CrateTD[8]) {
  702.         SelectedCrate[playerid] = 6;
  703.         PlayerTextDrawSetString(playerid, CrateTDP[0][playerid], "Blue Crate");
  704.         PlayerTextDrawShow(playerid, CrateTDP[0][playerid]);
  705.         PlayerTextDrawSetString(playerid, CrateTDP[1][playerid], "$7.000.000~n~27 Hidden Color~n~140 Gold Points");
  706.         PlayerTextDrawShow(playerid, CrateTDP[1][playerid]);
  707.         PlayerTextDrawShow(playerid, CrateTDP[2][playerid]);
  708.         new str[ 128 ];
  709.         format(str, 128, "~Y~%dG~w~ /~Y~ %dMP", CratePrice[SelectedCrate[playerid]][0], CratePrice[SelectedCrate[playerid]][1]);
  710.         PlayerTextDrawSetString(playerid, CrateTDP[4][playerid], str);
  711.         PlayerTextDrawShow(playerid, CrateTDP[4][playerid]);
  712.     }
  713.     if(clickedid == Text: CrateTD[9]) {
  714.         SelectedCrate[playerid] = 7;
  715.         PlayerTextDrawSetString(playerid, CrateTDP[0][playerid],"White Crate");
  716.         PlayerTextDrawShow(playerid, CrateTDP[0][playerid]);
  717.         PlayerTextDrawSetString(playerid, CrateTDP[1][playerid], "$8.000.000~n~30 Hidden Color~n~100 Gold Points");
  718.         PlayerTextDrawShow(playerid, CrateTDP[1][playerid]);
  719.         PlayerTextDrawShow(playerid, CrateTDP[2][playerid]);
  720.         new str[ 128 ];
  721.         format(str, 128, "~Y~%dG~w~ /~Y~ %dMP", CratePrice[SelectedCrate[playerid]][0], CratePrice[SelectedCrate[playerid]][1]);
  722.         PlayerTextDrawSetString(playerid, CrateTDP[4][playerid], str);
  723.         PlayerTextDrawShow(playerid, CrateTDP[4][playerid]);
  724.     }
  725.     if(clickedid == Text: CrateTD[10]) {
  726.         SelectedCrate[playerid] = 8;
  727.         PlayerTextDrawSetString(playerid, CrateTDP[0][playerid], "Olive Crate");
  728.         PlayerTextDrawShow(playerid, CrateTDP[0][playerid]);
  729.         PlayerTextDrawSetString(playerid, CrateTDP[1][playerid], "$10.000.000~n~40 Hidden Color~n~200 Gold Points");
  730.         PlayerTextDrawShow(playerid, CrateTDP[1][playerid]);
  731.         PlayerTextDrawShow(playerid, CrateTDP[2][playerid]);
  732.         new str[ 128 ];
  733.         format(str, 128, "~Y~%dG~w~ /~Y~ %dMP", CratePrice[SelectedCrate[playerid]][0], CratePrice[SelectedCrate[playerid]][1]);
  734.         PlayerTextDrawSetString(playerid, CrateTDP[4][playerid], str);
  735.         PlayerTextDrawShow(playerid, CrateTDP[4][playerid]);
  736.     }
  737.     return 1;
  738. }
  739. public OnPlayerCommandPerformed(playerid, cmdtext[], success)
  740. {
  741.     if(success)
  742.     {
  743.         return 1;
  744.     }
  745.     if(!success) return SendClientMessage(playerid, COLOR_WHITE, "SERVER: Unknown command.");
  746.     return 1;
  747. }
  748. CMD:gotocrates(playerid, params[]) {
  749.     SetPlayerPos(playerid, -2255.1516,-1721.0339,479.8412);
  750.     SCM(playerid, COLOR_WHITE, "Ai fost teleportat la locatia de unde poti cumpara cutii.");
  751.     return 1;
  752. }
  753. CMD:destroyredcrate(playerid, params[]) {
  754.     DestroyObject(CrateObject[playerid]);
  755.     Delete3DTextLabel(CrateLabel);
  756.     InCrateObject[playerid] = 0;
  757.     return 1;
  758. }
  759. CMD:givegold(playerid, params[]) {
  760.     PlayerInfo[playerid][pGold] += 100;
  761.     SCM(playerid, COLOR_WHITE, "Ai primit 100 gold.");
  762.     return 1;
  763. }
  764. CMD:givemp(playerid, params[]) {
  765.     PlayerInfo[playerid][pMP] += 100;
  766.     SCM(playerid, COLOR_WHITE, "Ai primit 100 MP.");
  767.     return 1;
  768. }
  769. CMD:crates(playerid, params[]) {
  770.     new Info[ 256 ];
  771.     format(Info, 256, "Nume\tAmount\nRed\t%d\nGreen\t%d\nCyan\t%d\nYellow\t%d\nPurple\t%d\nSilver\t%d\nBlue\t%d\nWhite\t%d\nOlive\t%d", PlayerInfo[playerid][pCrates][0], PlayerInfo[playerid][pCrates][1], PlayerInfo[playerid][pCrates][2],PlayerInfo[playerid][pCrates][3], PlayerInfo[playerid][pCrates][4], PlayerInfo[playerid][pCrates][5],
  772.     PlayerInfo[playerid][pCrates][6], PlayerInfo[playerid][pCrates][7], PlayerInfo[playerid][pCrates][8]);
  773.     ShowPlayerDialog(playerid, DIALOG_CRATES, DIALOG_STYLE_TABLIST_HEADERS, "Crate list", Info, "Search", "Cancel");
  774.     return 1;
  775. }
  776. public OnPlayerRequestClass(playerid, classid)
  777. {
  778.     SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
  779.     SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
  780.     SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
  781.     return 1;
  782. }
  783.  
  784. public OnPlayerConnect(playerid)
  785. {
  786.     new query[100];
  787.     mysql_format(g_Sql, query, sizeof(query), "SELECT * FROM users WHERE Name = '%s'", GetName(playerid));
  788.     mysql_tquery(g_Sql, query, "OnPlayerLogin", "i", playerid);
  789.  
  790.     CrateTextdrawsP(playerid);
  791.     return 1;
  792. }
  793.  
  794. public OnPlayerDisconnect(playerid, reason)
  795. {
  796.     return 1;
  797. }
  798.  
  799. public OnPlayerSpawn(playerid)
  800. {
  801.     return 1;
  802. }
  803.  
  804. public OnPlayerDeath(playerid, killerid, reason)
  805. {
  806.     return 1;
  807. }
  808.  
  809. public OnVehicleSpawn(vehicleid)
  810. {
  811.     return 1;
  812. }
  813.  
  814. public OnVehicleDeath(vehicleid, killerid)
  815. {
  816.     return 1;
  817. }
  818.  
  819. public OnPlayerText(playerid, text[])
  820. {
  821.     return 1;
  822. }
  823.  
  824. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  825. {
  826.     return 1;
  827. }
  828.  
  829. public OnPlayerExitVehicle(playerid, vehicleid)
  830. {
  831.     return 1;
  832. }
  833.  
  834. public OnPlayerStateChange(playerid, newstate, oldstate)
  835. {
  836.     return 1;
  837. }
  838.  
  839. public OnPlayerEnterCheckpoint(playerid)
  840. {
  841.     if(CP[playerid] == 1) {
  842.         DisablePlayerCheckpoint(playerid);
  843.         CP[playerid] = 0;
  844.     }
  845.     return 1;
  846. }
  847.  
  848. public OnPlayerLeaveCheckpoint(playerid)
  849. {
  850.     return 1;
  851. }
  852.  
  853. public OnPlayerEnterRaceCheckpoint(playerid)
  854. {
  855.     return 1;
  856. }
  857.  
  858. public OnPlayerLeaveRaceCheckpoint(playerid)
  859. {
  860.     return 1;
  861. }
  862.  
  863. public OnRconCommand(cmd[])
  864. {
  865.     return 1;
  866. }
  867.  
  868. public OnPlayerRequestSpawn(playerid)
  869. {
  870.     return 1;
  871. }
  872.  
  873. public OnObjectMoved(objectid)
  874. {
  875.     return 1;
  876. }
  877.  
  878. public OnPlayerObjectMoved(playerid, objectid)
  879. {
  880.     return 1;
  881. }
  882.  
  883. public OnPlayerPickUpPickup(playerid, pickupid)
  884. {
  885.     return 1;
  886. }
  887.  
  888. public OnVehicleMod(playerid, vehicleid, componentid)
  889. {
  890.     return 1;
  891. }
  892.  
  893. public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
  894. {
  895.     return 1;
  896. }
  897.  
  898. public OnVehicleRespray(playerid, vehicleid, color1, color2)
  899. {
  900.     return 1;
  901. }
  902.  
  903. public OnPlayerSelectedMenuRow(playerid, row)
  904. {
  905.     return 1;
  906. }
  907.  
  908. public OnPlayerExitedMenu(playerid)
  909. {
  910.     return 1;
  911. }
  912.  
  913. public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
  914. {
  915.     return 1;
  916. }
  917. function ShowCratesTD(playerid) {
  918.     for(new i; i < 21; i++) TextDrawShowForPlayer(playerid, CrateTD[i]);
  919.     SelectTextDraw(playerid, 0xFFFFFFFF);
  920.     InCrate[playerid] = 1;
  921.     new str[ 128 ];
  922.     format(str, 128, "BALANCE: ~Y~%d~W~MP/~Y~%d~W~GOLD", PlayerInfo[playerid][pMP], PlayerInfo[playerid][pGold]);
  923.     PlayerTextDrawSetString(playerid, CrateTDP[3][playerid], str);
  924.     PlayerTextDrawShow(playerid, CrateTDP[3][playerid]);
  925.     return 1;
  926. }
  927. function HideCratesTD(playerid) {
  928.     for(new i; i < 21; i++) TextDrawHideForPlayer(playerid, CrateTD[i]);
  929.     for(new x; x < 5; x++) PlayerTextDrawHide(playerid, CrateTDP[x][playerid]);
  930.     CancelSelectTextDraw(playerid);
  931.     InCrate[playerid] = 0;
  932.     return 1;
  933. }
  934. function HideCrateOpening(playerid) {
  935.     for(new i; i < 15; i++) PlayerTextDrawHide(playerid, OpenCrate[i][playerid]);
  936.     return 1;
  937. }
  938. function ShowCrateOpening(playerid) {
  939.     DestroyObject(CrateObject[playerid]);
  940.     Delete3DTextLabel(CrateLabel);
  941.     InCrateObject[playerid] = 0;
  942.     switch(InOpeningCrate[playerid]) {
  943.         case 0: return 1;
  944.         case 1: {
  945.             PlayerTextDrawSetString(playerid, OpenCrate[1][playerid], "Red Crate");
  946.             PlayerTextDrawShow(playerid, OpenCrate[1][playerid]);
  947.             PlayerTextDrawSetString(playerid, OpenCrate[7][playerid], "$500.000");
  948.             PlayerTextDrawShow(playerid, OpenCrate[7][playerid]);
  949.             PlayerTextDrawSetString(playerid, OpenCrate[9][playerid], "$1.000.000");
  950.             PlayerTextDrawShow(playerid, OpenCrate[9][playerid]);
  951.         }
  952.     }
  953.     return 1;
  954. }
  955. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  956. {
  957.     new randspawnred = random(sizeof(RedCratePos));
  958.     new randspawngreen = random(sizeof(GreenCratePos));
  959.     new randspawncyan = random(sizeof(CyanCratePos));
  960.     new randspawnyellow = random(sizeof(YellowCratePos));
  961.     new randspawnpurple = random(sizeof(PurpleCratePos));
  962.     new randspawnsilver = random(sizeof(SilverCratePos));
  963.     new randspawnblue = random(sizeof(BlueCratePos));
  964.     new randspawnwhite = random(sizeof(WhiteCratePos));
  965.     new randspawnolive = random(sizeof(OliveCratePos));
  966.     if(IsPlayerInRangeOfPoint(playerid, 3.0, -2255.1516,-1721.0339,479.8412)) if(newkeys == KEY_NO) ShowCratesTD(playerid);
  967.     if(IsPlayerInRangeOfPoint(playerid, 4.0, RedCratePos[randspawnred][0], RedCratePos[randspawnred][1], RedCratePos[randspawnred][2])) if(newkeys == KEY_YES) ShowCrateOpening(playerid), InOpeningCrate[playerid] = 1;
  968.     if(IsPlayerInRangeOfPoint(playerid, 4.0, GreenCratePos[randspawngreen][0], GreenCratePos[randspawngreen][1], GreenCratePos[randspawngreen][2])) if(newkeys == KEY_YES) ShowCrateOpening(playerid), InOpeningCrate[playerid] = 2;
  969.     if(IsPlayerInRangeOfPoint(playerid, 4.0, CyanCratePos[randspawncyan][0], CyanCratePos[randspawncyan][1], CyanCratePos[randspawncyan][2])) if(newkeys == KEY_YES) ShowCrateOpening(playerid), InOpeningCrate[playerid] = 3;
  970.     if(IsPlayerInRangeOfPoint(playerid, 4.0, YellowCratePos[randspawnyellow][0],YellowCratePos[randspawnyellow][1], YellowCratePos[randspawnyellow][2])) if(newkeys == KEY_YES) ShowCrateOpening(playerid), InOpeningCrate[playerid] = 4;
  971.     if(IsPlayerInRangeOfPoint(playerid, 4.0, PurpleCratePos[randspawnpurple][0],PurpleCratePos[randspawnpurple][1],PurpleCratePos[randspawnpurple][2])) if(newkeys == KEY_YES) ShowCrateOpening(playerid), InOpeningCrate[playerid] = 5;
  972.     if(IsPlayerInRangeOfPoint(playerid, 4.0, SilverCratePos[randspawnsilver][0],SilverCratePos[randspawnsilver][1],SilverCratePos[randspawnsilver][2])) if(newkeys == KEY_YES) ShowCrateOpening(playerid), InOpeningCrate[playerid] = 6;
  973.     if(IsPlayerInRangeOfPoint(playerid, 4.0, BlueCratePos[randspawnblue][0],BlueCratePos[randspawnblue][1],BlueCratePos[randspawnblue][2])) if(newkeys == KEY_YES) ShowCrateOpening(playerid), InOpeningCrate[playerid] = 7;
  974.     if(IsPlayerInRangeOfPoint(playerid, 4.0, WhiteCratePos[randspawnwhite][0], WhiteCratePos[randspawnwhite][1], WhiteCratePos[randspawnwhite][2])) if(newkeys == KEY_YES) ShowCrateOpening(playerid), InOpeningCrate[playerid] = 8;
  975.     if(IsPlayerInRangeOfPoint(playerid, 4.0, OliveCratePos[randspawnolive][0], OliveCratePos[randspawnolive][1], OliveCratePos[randspawnwhite][2])) if(newkeys == KEY_YES) ShowCrateOpening(playerid), InOpeningCrate[playerid] = 9;
  976.     return 1;
  977. }
  978. CMD:kill(playerid, params[]) {
  979.     SetPlayerHealth(playerid, 0);
  980.     return 1;
  981. }
  982.  
  983. public OnRconLoginAttempt(ip[], password[], success)
  984. {
  985.     return 1;
  986. }
  987.  
  988. public OnPlayerUpdate(playerid)
  989. {
  990.     return 1;
  991. }
  992.  
  993. public OnPlayerStreamIn(playerid, forplayerid)
  994. {
  995.     return 1;
  996. }
  997.  
  998. public OnPlayerStreamOut(playerid, forplayerid)
  999. {
  1000.     return 1;
  1001. }
  1002.  
  1003. public OnVehicleStreamIn(vehicleid, forplayerid)
  1004. {
  1005.     return 1;
  1006. }
  1007.  
  1008. public OnVehicleStreamOut(vehicleid, forplayerid)
  1009. {
  1010.     return 1;
  1011. }
  1012.  
  1013. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  1014. {
  1015.     new query[128], ip[25];
  1016.     switch(dialogid)
  1017.     {
  1018.         case DIALOG_REGISTER:
  1019.         {
  1020.             if(!response) return Kick(playerid);
  1021.             if(response)
  1022.             {
  1023.                 if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD, "Parola Incorecta!", "Introdu-ti o parola pentru a te  inregistra pe server!", "Inregistreaza", "Exit");
  1024.                 GetPlayerIp(playerid, ip, sizeof(ip));
  1025.                 SCM(playerid, -1, "Te rog sa-ti introduci varsta.");
  1026.                 mysql_format(g_Sql, query, sizeof(query), "INSERT INTO users (Name, Password, IP, Admin, Helper, Money) VALUES ('%s', '%e', '%s', '0','0','1500')", GetName(playerid), inputtext, ip);
  1027.                 mysql_query(g_Sql, query);
  1028.                 ShowPlayerDialog(playerid, DIALOG_AGE, DIALOG_STYLE_INPUT, "Varsta!", "Te rog sa-ti introduci mai jos varsta.", "Continua", "Exit");
  1029.             }
  1030.             return 1;
  1031.         }
  1032.         case DIALOG_LOGIN:
  1033.         {
  1034.             if(!response) return Kick(playerid);
  1035.             if(response)
  1036.             {
  1037.                 if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "Parola Incorecta!", "Te rog sa-ti introduci parola corecta mai jos\nDaca ai uitat parola o poti recupera pe panel.", "Login", "Exit");
  1038.                 mysql_format(g_Sql, query, sizeof(query), "SELECT * FROM `users` WHERE `Name`='%e' AND `Password`='%s'", GetName(playerid), inputtext);
  1039.                 mysql_tquery(g_Sql, query, "OnLogin", "i", playerid);
  1040.             }
  1041.             return 1;
  1042.         }
  1043.         case DIALOG_AGE:
  1044.         {
  1045.             if(!response) return ShowPlayerDialog(playerid, DIALOG_AGE, DIALOG_STYLE_INPUT, "Varsta!", "Te rog sa-ti introduci mai jos varsta.", "Continua", "Exit");
  1046.             if(response)
  1047.             {
  1048.                 if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_AGE, DIALOG_STYLE_INPUT, "Varsta!", "Te rog sa-ti introduci mai jos varsta.", "Continua", "Exit");
  1049.                 SCM(playerid, -1, "Te rog sa-ti introduci email-ul, pentru contact si a pentru a-ti putea recupera contul.");
  1050.                 mysql_format(g_Sql, query, sizeof(query), "UPDATE `users` SET `Age`='%e' WHERE `Name`='%e'", inputtext, GetName(playerid));
  1051.                 mysql_query(g_Sql, query);
  1052.                 ShowPlayerDialog(playerid, DIALOG_EMAIL, DIALOG_STYLE_INPUT, "Ëmail", "Te rog sa-ti introduci email-ul mai jos.", "Continua", "Exit");
  1053.             }
  1054.             return 1;
  1055.         }
  1056.         case DIALOG_EMAIL:
  1057.         {
  1058.             if(!response) return ShowPlayerDialog(playerid, DIALOG_EMAIL, DIALOG_STYLE_INPUT, "Ëmail", "Te rog sa-ti introduci email-ul mai jos.", "Continua", "Exit");
  1059.             if(response)
  1060.             {
  1061.                 if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_EMAIL, DIALOG_STYLE_INPUT, "Ëmail", "Te rog sa-ti introduci email-ul mai jos.", "Continua", "Exit");
  1062.                 SCM(playerid, -1, "Te rog sa-ti alegi sexul.");
  1063.                 mysql_format(g_Sql, query, sizeof(query), "UPDATE `users` SET `Email`='%e' WHERE `Name`='%e'", inputtext, GetName(playerid));
  1064.                 mysql_query(g_Sql, query);
  1065.                 ShowPlayerDialog(playerid, DIALOG_SEX, DIALOG_STYLE_MSGBOX, "Gen", "Te rog sa-ti alegi genul de mai jos.", "Masculin", "Feminin");
  1066.             }
  1067.             return 1;
  1068.         }
  1069.         case DIALOG_SEX:
  1070.         {
  1071.             if(response)
  1072.             {
  1073.                 mysql_format(g_Sql, query, sizeof(query), "UPDATE `users` SET `Sex`='1' WHERE `Name`='%e'", GetName(playerid));
  1074.                 mysql_query(g_Sql, query);
  1075.                 SCM(playerid, -1, "Inregistrarea a fost un succes!");
  1076.                 ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "Logheaza-te!", "Te rog sa-ti introduci parola mai jos", "Login", "Exit");
  1077.             }
  1078.             if(!response)
  1079.             {
  1080.                 mysql_format(g_Sql, query, sizeof(query), "UPDATE `users` SET `Sex`='0' WHERE `Name`='%e'", GetName(playerid));
  1081.                 mysql_query(g_Sql, query);
  1082.                 SCM(playerid, -1, "Inregistrarea a fost un succes!");
  1083.                 ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "Logheaza-te!", "Te rog sa-ti introduci parola mai jos", "Login", "Exit");
  1084.             }
  1085.             return 1;
  1086.         }
  1087.         case DIALOG_CRATES: {
  1088.             switch(listitem) {
  1089.                 case 0: {
  1090.                     if(InCrateObject[playerid] >= 1) return SCM(playerid, COLOR_WHITE, "Ai selectat deja o cutie pentru deschidere.");
  1091.                     new randspawnred = random(sizeof(RedCratePos));
  1092.                     if(PlayerInfo[playerid][pCrates][0] < 1) return SCM(playerid, COLOR_WHITE, "Nu detii o cutie rosie !");
  1093.                     CrateObject[playerid] = CreateObject(1224, RedCratePos[randspawnred][0],RedCratePos[randspawnred][1], RedCratePos[randspawnred][2], 0.0, 0.0, 96.0, 300.0);
  1094.                     CrateLabel = Create3DTextLabel("{ff0000}Red Crate\n{ffffff}Apasa tasta 'Y' pentru a deschide aceasta cutie.",0xFFFFFFFF,RedCratePos[randspawnred][0],RedCratePos[randspawnred][1],RedCratePos[randspawnred][2], 50.0, 0, 0);
  1095.                     SetPlayerCheckpoint(playerid, RedCratePos[randspawnred][0], RedCratePos[randspawnred][1], RedCratePos[randspawnred][2], 3.0);
  1096.                     CP[playerid] = 1;
  1097.                     InCrateObject[playerid] = 1;
  1098.                 }
  1099.                 case 1: {
  1100.                     if(InCrateObject[playerid] >= 1) return SCM(playerid, COLOR_WHITE, "Ai selectat deja o cutie pentru deschidere.");
  1101.                     new randspawngreen = random(sizeof(GreenCratePos));
  1102.                     if(PlayerInfo[playerid][pCrates][1] < 1) return SCM(playerid, COLOR_WHITE, "Nu detii o cutie verde !");
  1103.                     CrateObject[playerid] = CreateObject(1224, GreenCratePos[randspawngreen][0],GreenCratePos[randspawngreen][1], GreenCratePos[randspawngreen][2], 0.0, 0.0, 96.0, 300.0);
  1104.                     CrateLabel = Create3DTextLabel("{00ff00}Green Crate\n{ffffff}Apasa tasta 'Y' pentru a deschide aceasta cutie.",0xFFFFFFFF,GreenCratePos[randspawngreen][0],GreenCratePos[randspawngreen][1],GreenCratePos[randspawngreen][2], 50.0, 0, 0);
  1105.                     SetPlayerCheckpoint(playerid, GreenCratePos[randspawngreen][0], GreenCratePos[randspawngreen][1], GreenCratePos[randspawngreen][2], 3.0);
  1106.                     CP[playerid] = 1;
  1107.                     InCrateObject[playerid] = 1;
  1108.                 }
  1109.                 case 2: {
  1110.                     if(InCrateObject[playerid] >= 1) return SCM(playerid, COLOR_WHITE, "Ai selectat deja o cutie pentru deschidere.");
  1111.                     new randspawncyan = random(sizeof(CyanCratePos));
  1112.                     if(PlayerInfo[playerid][pCrates][2] < 1) return SCM(playerid, COLOR_WHITE, "Nu detii o cutie 'Cyan' !");
  1113.                     CrateObject[playerid] = CreateObject(1224, CyanCratePos[randspawncyan][0],CyanCratePos[randspawncyan][1], CyanCratePos[randspawncyan][2], 0.0, 0.0, 96.0, 300.0);
  1114.                     CrateLabel = Create3DTextLabel("{66CCFF}Cyan Crate\n{ffffff}Apasa tasta 'Y' pentru a deschide aceasta cutie.",0xFFFFFFFF,CyanCratePos[randspawncyan][0],CyanCratePos[randspawncyan][1],CyanCratePos[randspawncyan][2], 50.0, 0, 0);
  1115.                     SetPlayerCheckpoint(playerid, CyanCratePos[randspawncyan][0], CyanCratePos[randspawncyan][1], CyanCratePos[randspawncyan][2], 3.0);
  1116.                     CP[playerid] = 1;
  1117.                     InCrateObject[playerid] = 1;
  1118.                 }
  1119.                 case 3: {
  1120.                     if(InCrateObject[playerid] >= 1) return SCM(playerid, COLOR_WHITE, "Ai selectat deja o cutie pentru deschidere.");
  1121.                     new randspawnyellow = random(sizeof(YellowCratePos));
  1122.                     if(PlayerInfo[playerid][pCrates][3] < 1) return SCM(playerid, COLOR_WHITE, "Nu detii o cutie 'Yellow' !");
  1123.                     CrateObject[playerid] = CreateObject(1224, YellowCratePos[randspawnyellow][0],YellowCratePos[randspawnyellow][1], YellowCratePos[randspawnyellow][2], 0.0, 0.0, 96.0, 300.0);
  1124.                     CrateLabel = Create3DTextLabel("{FFDE00}Yellow Crate\n{ffffff}Apasa tasta 'Y' pentru a deschide aceasta cutie.",0xFFFFFFFF,YellowCratePos[randspawnyellow][0],YellowCratePos[randspawnyellow][1],YellowCratePos[randspawnyellow][2], 50.0, 0, 0);
  1125.                     SetPlayerCheckpoint(playerid, YellowCratePos[randspawnyellow][0], YellowCratePos[randspawnyellow][1], YellowCratePos[randspawnyellow][2], 3.0);
  1126.                     CP[playerid] = 1;
  1127.                     InCrateObject[playerid] = 1;
  1128.                 }
  1129.                 case 4: {
  1130.                     if(InCrateObject[playerid] >= 1) return SCM(playerid, COLOR_WHITE, "Ai selectat deja o cutie pentru deschidere.");
  1131.                     new randspawnpurple = random(sizeof(PurpleCratePos));
  1132.                     if(PlayerInfo[playerid][pCrates][4] < 1) return SCM(playerid, COLOR_WHITE, "Nu detii o cutie 'Purple' !");
  1133.                     CrateObject[playerid] = CreateObject(1224, PurpleCratePos[randspawnpurple][0],PurpleCratePos[randspawnpurple][1], PurpleCratePos[randspawnpurple][2], 0.0, 0.0, 96.0, 300.0);
  1134.                     CrateLabel = Create3DTextLabel("{660099}Purple Crate\n{ffffff}Apasa tasta 'Y' pentru a deschide aceasta cutie.",0xFFFFFFFF,PurpleCratePos[randspawnpurple][0],PurpleCratePos[randspawnpurple][1],PurpleCratePos[randspawnpurple][2], 50.0, 0, 0);
  1135.                     SetPlayerCheckpoint(playerid, PurpleCratePos[randspawnpurple][0], PurpleCratePos[randspawnpurple][1], PurpleCratePos[randspawnpurple][2], 3.0);
  1136.                     CP[playerid] = 1;
  1137.                     InCrateObject[playerid] = 1;
  1138.                 }
  1139.                 case 5: {
  1140.                     if(InCrateObject[playerid] >= 1) return SCM(playerid, COLOR_WHITE, "Ai selectat deja o cutie pentru deschidere.");
  1141.                     new randspawnsilver = random(sizeof(SilverCratePos));
  1142.                     if(PlayerInfo[playerid][pCrates][5] < 1) return SCM(playerid, COLOR_WHITE, "Nu detii o cutie 'Silver' !");
  1143.                     CrateObject[playerid] = CreateObject(1224, SilverCratePos[randspawnsilver][0],SilverCratePos[randspawnsilver][1], SilverCratePos[randspawnsilver][2], 0.0, 0.0, 96.0, 300.0);
  1144.                     CrateLabel = Create3DTextLabel("{C0C0C0}Silver Crate\n{ffffff}Apasa tasta 'Y' pentru a deschide aceasta cutie.",0xFFFFFFFF,SilverCratePos[randspawnsilver][0],SilverCratePos[randspawnsilver][1],SilverCratePos[randspawnsilver][2], 50.0, 0, 0);
  1145.                     SetPlayerCheckpoint(playerid, SilverCratePos[randspawnsilver][0], SilverCratePos[randspawnsilver][1], SilverCratePos[randspawnsilver][2], 3.0);
  1146.                     CP[playerid] = 1;
  1147.                     InCrateObject[playerid] = 1;
  1148.                 }
  1149.                 case 6: {
  1150.                     if(InCrateObject[playerid] >= 1) return SCM(playerid, COLOR_WHITE, "Ai selectat deja o cutie pentru deschidere.");
  1151.                     new randspawnblue = random(sizeof(BlueCratePos));
  1152.                     if(PlayerInfo[playerid][pCrates][6] < 1) return SCM(playerid, COLOR_WHITE, "Nu detii o cutie 'Blue' !");
  1153.                     CrateObject[playerid] = CreateObject(1224, BlueCratePos[randspawnblue][0],BlueCratePos[randspawnblue][1], BlueCratePos[randspawnblue][2], 0.0, 0.0, 96.0, 300.0);
  1154.                     CrateLabel = Create3DTextLabel("{000080}Blue Crate\n{ffffff}Apasa tasta 'Y' pentru a deschide aceasta cutie.",0xFFFFFFFF,BlueCratePos[randspawnblue][0],BlueCratePos[randspawnblue][1],BlueCratePos[randspawnblue][2], 50.0, 0, 0);
  1155.                     SetPlayerCheckpoint(playerid, BlueCratePos[randspawnblue][0], BlueCratePos[randspawnblue][1], BlueCratePos[randspawnblue][2], 3.0);
  1156.                     CP[playerid] = 1;
  1157.                     InCrateObject[playerid] = 1;
  1158.                 }
  1159.                 case 7: {
  1160.                     if(InCrateObject[playerid] >= 1) return SCM(playerid, COLOR_WHITE, "Ai selectat deja o cutie pentru deschidere.");
  1161.                     new randspawnwhite = random(sizeof(WhiteCratePos));
  1162.                     if(PlayerInfo[playerid][pCrates][7] < 1) return SCM(playerid, COLOR_WHITE, "Nu detii o cutie 'White' !");
  1163.                     CrateObject[playerid] = CreateObject(1224, WhiteCratePos[randspawnwhite][0],WhiteCratePos[randspawnwhite][1], WhiteCratePos[randspawnwhite][2], 0.0, 0.0, 96.0, 300.0);
  1164.                     CrateLabel = Create3DTextLabel("{ffffff}White Crate\n{ffffff}Apasa tasta 'Y' pentru a deschide aceasta cutie.",0xFFFFFFFF,WhiteCratePos[randspawnwhite][0],WhiteCratePos[randspawnwhite][1],WhiteCratePos[randspawnwhite][2], 50.0, 0, 0);
  1165.                     SetPlayerCheckpoint(playerid, WhiteCratePos[randspawnwhite][0], WhiteCratePos[randspawnwhite][1], WhiteCratePos[randspawnwhite][2], 3.0);
  1166.                     CP[playerid] = 1;
  1167.                     InCrateObject[playerid] = 1;
  1168.                 }
  1169.                 case 8: {
  1170.                     if(InCrateObject[playerid] >= 1) return SCM(playerid, COLOR_WHITE, "Ai selectat deja o cutie pentru deschidere.");
  1171.                     new randspawnolive = random(sizeof(OliveCratePos));
  1172.                     if(PlayerInfo[playerid][pCrates][8] < 1) return SCM(playerid, COLOR_WHITE, "Nu detii o cutie 'White' !");
  1173.                     CrateObject[playerid] = CreateObject(1224, OliveCratePos[randspawnolive][0],OliveCratePos[randspawnolive][1], OliveCratePos[randspawnolive][2], 0.0, 0.0, 96.0, 300.0);
  1174.                     CrateLabel = Create3DTextLabel("{FF9C00}Olive Crate\n{ffffff}Apasa tasta 'Y' pentru a deschide aceasta cutie.",0xFFFFFFFF,OliveCratePos[randspawnolive][0],OliveCratePos[randspawnolive][1],OliveCratePos[randspawnolive][2], 50.0, 0, 0);
  1175.                     SetPlayerCheckpoint(playerid, OliveCratePos[randspawnolive][0], OliveCratePos[randspawnolive][1], OliveCratePos[randspawnolive][2], 3.0);
  1176.                     CP[playerid] = 1;
  1177.                     InCrateObject[playerid] = 1;
  1178.                 }
  1179.             }
  1180.         }
  1181.         case DIALOG_BUYCRATE: {
  1182.             switch(response) { 
  1183.                 case 0: {  
  1184.                     if(PlayerInfo[playerid][pGold] < CratePrice[SelectedCrate[playerid]][0]) return SCM(playerid, COLOR_WHITE, "Nu ai destule GP-uri pentru a cumpara aceasta cutie.");
  1185.                     {  
  1186.                         switch(SelectedCrate[playerid]) {
  1187.                             case 0: PlayerInfo[playerid][pCrates][0] += 1, Update(playerid, pCratesRedx), SCM(playerid,COLOR_YELLOW2, "Ai cumparat o cutie rosie. Tasteaza comanda [/crates] pentru a o deschide."), PlayerInfo[playerid][pGold] -= CratePrice[SelectedCrate[playerid]][0], Update(playerid, pGoldx);
  1188.                             case 1: PlayerInfo[playerid][pCrates][1] += 1, Update(playerid, pCratesGreenx), SCM(playerid, COLOR_YELLOW2, "Ai cumparat o cutie verde. Tasteaza comanda [/crates] pentru a o deschide."), PlayerInfo[playerid][pGold] -= CratePrice[SelectedCrate[playerid]][0], Update(playerid, pGoldx);
  1189.                             case 2: PlayerInfo[playerid][pCrates][2] += 1, Update(playerid, pCratesCyanx), SCM(playerid, COLOR_YELLOW2, "Ai cumparat o cutie Cyan. Tasteaza comanda [/crates] pentru a o deschide."), PlayerInfo[playerid][pGold] -= CratePrice[SelectedCrate[playerid]][0], Update(playerid, pGoldx);
  1190.                             case 3: PlayerInfo[playerid][pCrates][3] += 1, Update(playerid, pCratesYellowx), SCM(playerid, COLOR_YELLOW2, "Ai cumparat o cutie Yellow. Tasteaza comanda [/crates] pentru a o deschide."), PlayerInfo[playerid][pGold] -= CratePrice[SelectedCrate[playerid]][0], Update(playerid, pGoldx);
  1191.                             case 4: PlayerInfo[playerid][pCrates][4] += 1, Update(playerid, pCratesPurplex), SCM(playerid, COLOR_YELLOW2, "Ai cumparat o cutie 'Pink'. Tasteaza comanda [/crates] pentru a o deschide."), PlayerInfo[playerid][pGold] -= CratePrice[SelectedCrate[playerid]][0], Update(playerid, pGoldx);
  1192.                             case 5: PlayerInfo[playerid][pCrates][5] += 1, Update(playerid, pCratesSilverx), SCM(playerid, COLOR_YELLOW2, "Ai cumparat o cutie 'Silver'. Tasteaza comanda [/crates] pentru a o deschide."), PlayerInfo[playerid][pGold] -= CratePrice[SelectedCrate[playerid]][0], Update(playerid, pGoldx);
  1193.                             case 6: PlayerInfo[playerid][pCrates][6] += 1, Update(playerid, pCratesBluex), SCM(playerid, COLOR_YELLOW2, "Ai cumparat o cutie 'Blue'. Tasteaza comanda [/crates] pentru a o deschide."), PlayerInfo[playerid][pGold] -= CratePrice[SelectedCrate[playerid]][0], Update(playerid, pGoldx);
  1194.                             case 7: PlayerInfo[playerid][pCrates][7] += 1, Update(playerid, pCratesWhitex), SCM(playerid, COLOR_YELLOW2, "Ai cumparat o cutie 'White'. Tasteaza comanda [/crates] pentru a o deschide."), PlayerInfo[playerid][pGold] -= CratePrice[SelectedCrate[playerid]][0], Update(playerid, pGoldx);
  1195.                             case 8: PlayerInfo[playerid][pCrates][8] += 1, Update(playerid, pCratesOlivex), SCM(playerid, COLOR_YELLOW2, "Ai cumparat o cutie 'Olive'. Tasteaza comanda [/crates] pentru a o deschide."), PlayerInfo[playerid][pGold] -= CratePrice[SelectedCrate[playerid]][0], Update(playerid, pGoldx);
  1196.                         }
  1197.                     }
  1198.                 }
  1199.                 case 1: {
  1200.                     if(PlayerInfo[playerid][pMP] < CratePrice[SelectedCrate[playerid]][1]) return SCM(playerid, COLOR_WHITE, "Nu ai destule MP-uri pentru a cumpara aceasta cutie.");
  1201.                     {  
  1202.                         switch(SelectedCrate[playerid]) {
  1203.                             case 0: PlayerInfo[playerid][pCrates][0] += 1, Update(playerid, pCratesRedx), SCM(playerid,COLOR_YELLOW2, "Ai cumparat o cutie rosie. Tasteaza comanda [/crates] pentru a o deschide."), PlayerInfo[playerid][pMP] -= CratePrice[SelectedCrate[playerid]][1], Update(playerid, pMPx);
  1204.                             case 1: PlayerInfo[playerid][pCrates][1] += 1, Update(playerid, pCratesGreenx), SCM(playerid, COLOR_YELLOW2, "Ai cumparat o cutie verde. Tasteaza comanda [/crates] pentru a o deschide."), PlayerInfo[playerid][pMP] -= CratePrice[SelectedCrate[playerid]][1], Update(playerid, pMPx);
  1205.                             case 2: PlayerInfo[playerid][pCrates][2] += 1, Update(playerid, pCratesCyanx), SCM(playerid, COLOR_YELLOW2, "Ai cumparat o cutie Cyan. Tasteaza comanda [/crates] pentru a o deschide."), PlayerInfo[playerid][pMP] -= CratePrice[SelectedCrate[playerid]][1], Update(playerid, pMPx);
  1206.                             case 3: PlayerInfo[playerid][pCrates][3] += 1, Update(playerid, pCratesYellowx), SCM(playerid, COLOR_YELLOW2, "Ai cumparat o cutie Yellow. Tasteaza comanda [/crates] pentru a o deschide."), PlayerInfo[playerid][pMP] -= CratePrice[SelectedCrate[playerid]][1], Update(playerid, pMPx);
  1207.                             case 4: PlayerInfo[playerid][pCrates][4] += 1, Update(playerid, pCratesPurplex), SCM(playerid, COLOR_YELLOW2, "Ai cumparat o cutie 'Pink'. Tasteaza comanda [/crates] pentru a o deschide."), PlayerInfo[playerid][pMP] -= CratePrice[SelectedCrate[playerid]][1], Update(playerid, pMPx);
  1208.                             case 5: PlayerInfo[playerid][pCrates][5] += 1, Update(playerid, pCratesSilverx), SCM(playerid, COLOR_YELLOW2, "Ai cumparat o cutie 'Silver'. Tasteaza comanda [/crates] pentru a o deschide."), PlayerInfo[playerid][pMP] -= CratePrice[SelectedCrate[playerid]][1], Update(playerid, pMPx);
  1209.                             case 6: PlayerInfo[playerid][pCrates][6] += 1, Update(playerid, pCratesBluex), SCM(playerid, COLOR_YELLOW2, "Ai cumparat o cutie 'Blue'. Tasteaza comanda [/crates] pentru a o deschide."), PlayerInfo[playerid][pMP] -= CratePrice[SelectedCrate[playerid]][1], Update(playerid, pMPx);
  1210.                             case 7: PlayerInfo[playerid][pCrates][7] += 1, Update(playerid, pCratesWhitex), SCM(playerid, COLOR_YELLOW2, "Ai cumparat o cutie 'White'. Tasteaza comanda [/crates] pentru a o deschide."), PlayerInfo[playerid][pMP] -= CratePrice[SelectedCrate[playerid]][1], Update(playerid, pMPx);
  1211.                             case 8: PlayerInfo[playerid][pCrates][8] += 1, Update(playerid, pCratesOlivex), SCM(playerid, COLOR_YELLOW2, "Ai cumparat o cutie 'Olive'. Tasteaza comanda [/crates] pentru a o deschide."), PlayerInfo[playerid][pMP] -= CratePrice[SelectedCrate[playerid]][1], Update(playerid, pMPx);
  1212.                         }
  1213.                     }
  1214.                 }
  1215.             }
  1216.             return 1;
  1217.         }
  1218.     }
  1219.     return 1;
  1220. }
  1221.  
  1222. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  1223. {
  1224.     return 1;
  1225. }
  1226.  
  1227. forward MySQLConnect();
  1228. public MySQLConnect()
  1229. {
  1230.     g_Sql = mysql_connect("localhost", "root", "", "database");
  1231.     if(mysql_errno() != 0)
  1232.     {
  1233.         printf("Connexiunea la baza de date '%s' nu a reusit", mysql_db);
  1234.         SendRconCommand("exit");
  1235.     }
  1236.     else
  1237.     {
  1238.         printf("Conexiunea la baza de date '%s' a reusit", mysql_db, mysql_user);
  1239.     }
  1240.     return 1;
  1241. }
  1242.  
  1243.  
  1244. stock GetName(playerid)
  1245. {
  1246.     new Name[MAX_PLAYER_NAME];
  1247.     GetPlayerName(playerid, Name, sizeof(Name));
  1248.     return Name;
  1249. }
  1250.  
  1251. forward OnPlayerLogin(playerid);
  1252. public OnPlayerLogin(playerid)
  1253. {
  1254.     new rows, fields;
  1255.     cache_get_row_count(rows);
  1256.     cache_get_field_count(fields);
  1257.     if(rows)
  1258.     {
  1259.         ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "Logheaza-te!", "Te rog sa-ti introduci parola mai jos", "Login", "Exit");
  1260.     }
  1261.     else
  1262.     {
  1263.         ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_PASSWORD, "Inregistrare", "Trebuie sa iti creezi un cont pentru a juca pe server. \nTasteaza mai jos o paorla pentru a te inregistra.", "Inregistrare", "Exit");
  1264.     }
  1265.     return 1;
  1266. }
  1267.  
  1268. forward OnLogin(playerid);
  1269. public OnLogin(playerid)
  1270. {
  1271.     new rows, fields, temporar[200];
  1272.     cache_get_row_count(rows);
  1273.     cache_get_field_count(fields);
  1274.     if(rows)
  1275.     {
  1276.         PlayerInfo[playerid][pPassword] = cache_get_value_name(0, "Password", temporar);
  1277.         PlayerInfo[playerid][pID] = cache_get_value_name(0, "ID", temporar);
  1278.         cache_get_value_int(0, "Money", PlayerInfo[playerid][pMoney]);
  1279.         SpawnPlayer(playerid);
  1280.     }
  1281.     else
  1282.     {
  1283.         ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "Parola Incorecta!", "Te rog sa-ti introduci parola corecta mai jos\nDaca ai uitat parola o poti recupera pe panel.", "Login", "Exit");
  1284.     }
  1285.     GivePlayerMoney(playerid, PlayerInfo[playerid][pMoney]);
  1286.     return 1;
  1287. }
  1288.  
  1289. /* Copyright (c) Dennis12 */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement