Advertisement
EOussama

[EO] VIP v1.8

Jul 13th, 2017
211
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 72.00 KB | None | 0 0
  1. /*=======================================================================================================================================================
  2. ==========================================================================================================================================================
  3.  
  4.  
  5.  
  6.                                                             oooooooooooo   .oooooo.
  7.                                                             `888'     `8  d8P'  `Y8b
  8.                                                              888         888      888
  9.                                                              888oooo8    888      888
  10.                                                              888    "    888      888
  11.                                                              888       o `88b    d88'
  12.                                                             o888ooooood8  `Y8bood8P'
  13.  
  14.                                                              VIP SYSTEM Filterscript
  15.                                                             by Oussama .aka. Compton
  16.  
  17.  
  18.  
  19. NOTE: If you're going to use this filterscript, please keep the credits!
  20.  
  21. ============================================================================================================================================================
  22. ==========================================================================================================================================================*/
  23.  
  24. #define PRESSED(%0) (((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))
  25.  
  26. //**Colors----------------------------------------------------------------------------------------------------------------------------------
  27. #define VIPCOLOR_WHITE      0xFFFFFFFF
  28. #define VIPCOLOR_RED        0xF22222AA
  29. #define VIPCOLOR_BLUE       0x1C80EBAA
  30. #define VIPCOLOR_GREEN      0x36C936AA
  31. #define VIPCOLOR_YELLOW     0xF7F70FAA
  32. #define VIPCOLOR_ORANGE     0xF09A1AAA
  33.  
  34. #define VIPCOL_WHITE        "{FFFFFF}"
  35. #define VIPCOL_RED          "{F22222}"
  36. #define VIPCOL_BLUE         "{1C80EB}"
  37. #define VIPCOL_GREEN        "{36C936}"
  38. #define VIPCOL_YELLOW       "{F7F70F}"
  39. #define VIPCOL_ORANGE       "{F09A1A}"
  40.  
  41. //**Includes---------------------------------------------------------------------------------------------------------------------------------
  42. #include <a_samp>                   // by SA_MP team
  43. #include <a_mysql>                  // by BlueG                 >   github.com/pBlueG/SA-MP-MySQL/releases/tag/R41-2
  44. #include <streamer>                 // by incognito             >   github.com/samp-incognito/samp-streamer-plugin/releases/tag/v2.9.1
  45. #include <sscanf2>                  // by Y_Less                >   github.com/maddinat0r/sscanf/releases/tag/v2.8.2
  46. #include <iZCMD>                    // by Zeex and Yashas       >   github.com/YashasSamaga/I-ZCMD
  47. #include <YSI\y_timers>             // by Y_Less and Misiur     >   github.com/Misiur/YSI
  48. #include <eovip>                    // by Oussama
  49.  
  50. //**MySQL Connection------------------------------------------------------------------------------------------------------------------------
  51. #define MySQL_HOST "127.0.0.1"
  52. #define MySQL_USER "root"
  53. #define MySQL_PASS ""
  54. #define MySQL_DATABASE "eo_vipdb"
  55.  
  56. //**Global Variables------------------------------------------------------------------------------------------------------------------------
  57. new
  58.     MySQL:g_SQL,
  59.  
  60.     gPlayerBone[18][] = {
  61.         "Spine",
  62.         "Head",
  63.         "Left upper arm",
  64.         "Right upper arm",
  65.         "Left hand",
  66.         "Right hand",
  67.         "Left thigh",
  68.         "Right thigh",
  69.         "Left foot",
  70.         "Right foot",
  71.         "Right calf",
  72.         "Left calf",
  73.         "Left forearm",
  74.         "Right forearm",
  75.         "Left clavicle",
  76.         "Right clavicle",
  77.         "Neck",
  78.         "Jaw"
  79.     },
  80.  
  81.     gVIPToys[22][] = {
  82.         "Fishing Rod",
  83.         "Wrench",
  84.         "Hammer",
  85.         "Hardhat",
  86.         "Afro",
  87.         "Phone",
  88.         "Briefcase",
  89.         "Red Glasses",
  90.         "Orange Glasses",
  91.         "Dark Glasses",
  92.         "Yellow Glasses",
  93.         "Green Glasses",
  94.         "Bass Guitar",
  95.         "Flying Guitar",
  96.         "Clukin Bell Hat",
  97.         "Burger Shot Hat",
  98.         "Zoro Mask",
  99.         "Biker Helmet",
  100.         "Parrot",
  101.         "Cowboy Hat",
  102.         "Xmax Hat",
  103.         "Watch"
  104.     }
  105. ;
  106.  
  107.  
  108. //**DIALOGs---------------------------------------------------------------------------------------------------------------------------------
  109. #define DIALOG_MSG                  5000
  110. #define DIALOG_VIPBASESPAWN         5001
  111. #define DIALOG_VIPSKINS             5002
  112. #define DIALOG_VIPGPPRESETCREATE    5003
  113. #define DIALOG_VIPGPPRESETEDIT      5004
  114. #define DIALOG_TOYS                 5005
  115. #define DIALOG_TOYSINDEX            5006
  116. #define DIALOG_TOYSLIST             5007
  117. #define DIALOG_PRESETGUNLIST        5008
  118. #define DIALOG_GUNLISTMELEE         5009
  119. #define DIALOG_GUNLISTPISTOL        5010
  120. #define DIALOG_GUNLISTSHOTGUN       5011
  121. #define DIALOG_GUNLISTSUBMACHINE    5012
  122. #define DIALOG_GUNLISTASSAULT       5013
  123. #define DIALOG_GUNLISTRIFLE         5014
  124. #define DIALOG_VIPGPPRESETDELETE    5015
  125. #define DIALOG_TOYSMANAGE           5016
  126.  
  127.    
  128. //**Forwards--------------------------------------------------------------------------------------------------------------------------------
  129. forward OnVIPAccountCheck(playerid);
  130. forward OnVIPExpiredCheck(playerid);
  131.  
  132.  
  133. //**Functions-------------------------------------------------------------------------------------------------------------------------------
  134. GetPlayerNameEx(playerid)
  135. {
  136.     new
  137.         pName[MAX_PLAYER_NAME];
  138.  
  139.     GetPlayerName(playerid, pName, MAX_PLAYER_NAME);
  140.     return pName;
  141. }
  142.  
  143.  
  144. //VIP RANDOM MSG----------------------------------------------------------------------------------------------------------------------------
  145. new VIPTips[][] = {
  146.     "[EO_VIP TIP]: "VIPCOL_YELLOW"Use "VIPCOL_WHITE"/vipcmds "VIPCOL_WHITE"to check few useful VIP Commands.",
  147.     "[EO_VIP TIP]: "VIPCOL_YELLOW"Stay updated with your VIP Level information via "VIPCOL_WHITE"/viphelp .",
  148.     "[EO_VIP TIP]: "VIPCOL_YELLOW"Check your VIP Level stats via "VIPCOL_WHITE"/vipaccount .",
  149.     "[EO_VIP TIP]: "VIPCOL_YELLOW"Use "VIPCOL_WHITE"/vipbs "VIPCOL_WHITE"to enable/disable spawning in VIP Base."
  150. };
  151.  
  152.  
  153.  
  154. #define FILTERSCRIPT
  155.  
  156. #if defined FILTERSCRIPT
  157.  
  158. public OnFilterScriptInit()
  159. {
  160.     new MySQLOpt:sqlOption = mysql_init_options(), _query[800];
  161.  
  162.     //MySQL Connection
  163.     g_SQL = mysql_connect(MySQL_HOST, MySQL_USER, MySQL_PASS, MySQL_DATABASE);
  164.     if(mysql_errno(g_SQL) == 0 && g_SQL){
  165.  
  166.         printf("[MySQL]: Connection to "#MySQL_DATABASE" was successful!");
  167.         mysql_set_option(sqlOption, AUTO_RECONNECT, true);
  168.         mysql_log(ALL);
  169.  
  170.         _query = "CREATE TABLE IF NOT EXISTS `VIPs`(`ID` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,\
  171.             `Username` VARCHAR(24) NOT NULL,\
  172.             `VIPLevel` TINYINT(1) UNSIGNED NOT NULL DEFAULT 0,\
  173.             `Timestamp` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,\
  174.             `SpawnInBase` TINYINT(1) UNSIGNED NOT NULL DEFAULT 0,\
  175.             `WeaponPreset` TINYINT(1) UNSIGNED NOT NULL DEFAULT 0,";
  176.         strcat(_query, "`WeaponMeleeSlot` TINYINT(1) UNSIGNED NOT NULL DEFAULT 0,\
  177.             `WeaponPistolSlot` TINYINT(1) UNSIGNED NOT NULL DEFAULT 0,\
  178.             `WeaponShotgunSlot` TINYINT(1) UNSIGNED NOT NULL DEFAULT 0,\
  179.             `WeaponSubMachineSlot` TINYINT(1) UNSIGNED NOT NULL DEFAULT 0,\
  180.             `WeaponAssaultSlot` TINYINT(1) UNSIGNED NOT NULL DEFAULT 0,\
  181.             `WeaponRifleSlot` TINYINT(1) UNSIGNED NOT NULL DEFAULT 0)");
  182.        
  183.         mysql_tquery(g_SQL, _query);
  184.  
  185.         print("\n--------------------------------------");
  186.         print(" [EO] VIP system by Oussama .a.k.a Compton");
  187.         print(" Filterscript version: 1.8");
  188.         print(" Credits must be included");
  189.         print("--------------------------------------\n");
  190.  
  191.         SetGameModeText("[EO] VIP System by Oussama a.k.a Compton");
  192.  
  193.         //VIP Lounge Map
  194.         CreateVIPBase();
  195.  
  196.         //VIP vehicles
  197.         CreateVIPVehicles();
  198.  
  199.     }
  200.     else{
  201.  
  202.         printf("[MySQL]: Connection to "#MySQL_DATABASE" failed!");
  203.         SendRconCommand("unloadfs EOVIP");
  204.  
  205.     }
  206.  
  207.     return 1;
  208. }
  209.  
  210. public OnFilterScriptExit()
  211. {
  212.     printf("[MySQL]: Connection to "#MySQL_DATABASE" was terminated!");
  213.     SendRconCommand("unloadfs EO_VIP");
  214.     mysql_close(g_SQL);
  215.     return 1;
  216. }
  217.  
  218. #endif
  219.  
  220.  
  221. public OnPlayerConnect(playerid)
  222. {
  223.     new _query[179];
  224.     SetGameModeText("[EO VIP]: {FF00CC}VIP System by "VIPCOL_YELLOW"Oussama");
  225.  
  226.     mysql_format(g_SQL, _query, sizeof(_query), "SELECT TIMESTAMPDIFF(HOUR, NOW(), DATE_ADD(`Timestamp`, INTERVAL 30*24 HOUR)) AS `daysLeft` FROM `vips` WHERE `Username` = '%e' AND `VIPLevel` > 0 LIMIT 1", GetPlayerNameEx(playerid));
  227.     mysql_tquery(g_SQL, _query, "OnVIPExpiredCheck", "d", playerid);
  228.  
  229.     return 1;
  230. }
  231.  
  232. public OnVIPExpiredCheck(playerid){
  233.  
  234.     if(cache_num_rows()){
  235.         new _query[276], _daysLeft;
  236.         cache_get_value_name_int(0, "daysLeft", _daysLeft);
  237.  
  238.         if(_daysLeft <= 0){
  239.             mysql_format(g_SQL, _query, sizeof(_query), "UPDATE `VIPs` SET `VIPLevel` = 0, `SpawnInBase` = 0, `WeaponPreset` = 0, `WeaponMeleeSlot` = 0, `WeaponPistolSlot` = 0, `WeaponShotgunSlot` = 0, `WeaponSubMachineSlot` = 0, `WeaponAssaultSlot` = 0, `WeaponRifleSlot` = 0 WHERE `Username` = '%e' LIMIT 1", GetPlayerNameEx(playerid));
  240.             mysql_tquery(g_SQL, _query);
  241.             SendClientMessage(playerid, VIPCOLOR_RED, "[EO_VIP] Your VIP status has expired!");
  242.         }
  243.            
  244.         mysql_format(g_SQL, _query, sizeof(_query), "SELECT * FROM `VIPs` WHERE `Username` = '%e' LIMIT 1", GetPlayerNameEx(playerid));
  245.         mysql_tquery(g_SQL, _query, "OnVIPAccountCheck", "d", playerid);
  246.     }
  247.  
  248. }
  249.  
  250. public OnVIPAccountCheck(playerid){
  251.  
  252.     if(cache_num_rows()){
  253.         new _vip_level;
  254.  
  255.         VIPInfo[playerid][e_VIPToysSlots][0] = false;
  256.         VIPInfo[playerid][e_VIPToysSlots][1] = false;
  257.         VIPInfo[playerid][e_VIPToysSlots][2] = false;
  258.         VIPInfo[playerid][e_VIPToysSlots][3] = false;
  259.         VIPInfo[playerid][e_VIPToysSlots][4] = false;
  260.         VIPInfo[playerid][e_VIPToysSlots][5] = false;
  261.         VIPInfo[playerid][e_VIPToysSlots][6] = false;
  262.         VIPInfo[playerid][e_VIPToysSlots][7] = false;
  263.         VIPInfo[playerid][e_VIPToysSlots][8] = false;
  264.         VIPInfo[playerid][e_VIPToysSlots][9] = false;
  265.  
  266.         cache_get_value_name_int(0, "VIPLevel", _vip_level);
  267.         cache_get_value_name_int(0, "SpawnInBase", VIPInfo[playerid][e_VIPBaseSpawn]);
  268.         cache_get_value_name_int(0, "WeaponPreset", VIPInfo[playerid][e_VIPGunPackPreset]);
  269.         cache_get_value_name_int(0, "WeaponMeleeSlot", VIPInfo[playerid][e_VIPGPMelee]);
  270.         cache_get_value_name_int(0, "WeaponPistolSlot", VIPInfo[playerid][e_VIPGPPistol]);
  271.         cache_get_value_name_int(0, "WeaponShotgunSlot", VIPInfo[playerid][e_VIPGPShotgun]);
  272.         cache_get_value_name_int(0, "WeaponSubMachineSlot", VIPInfo[playerid][e_VIPGPSubMachine]);
  273.         cache_get_value_name_int(0, "WeaponAssaultSlot", VIPInfo[playerid][e_VIPGPAssault]);
  274.         cache_get_value_name_int(0, "WeaponRifleSlot", VIPInfo[playerid][e_VIPGPRifle]);
  275.  
  276.         SetPlayerVIPLevel(playerid, _vip_level);
  277.         VIPInfo[playerid][e_VIPGunPackCoolDown] = 0;
  278.         VIPInfo[playerid][e_VIPBaseTeleportCoolDown] = 0;
  279.         VIPInfo[playerid][e_VIPSelectedBone] = -1;
  280.         VIPInfo[playerid][e_VIPFirstSpawn] = true;
  281.     }
  282.     else{
  283.         new _query[69];
  284.  
  285.         mysql_format(g_SQL, _query, sizeof(_query), "INSERT INTO `VIPs` (`Username`) VALUES('%e')", GetPlayerNameEx(playerid));
  286.         mysql_tquery(g_SQL, _query);
  287.     }
  288. }
  289.  
  290. public OnPlayerDisconnect(playerid, reason)
  291. {
  292.     new _query[300];
  293.  
  294.     DestroyDynamic3DTextLabel(VIPInfo[playerid][e_VIPTagID]);
  295.  
  296.     mysql_format(g_SQL, _query, sizeof(_query), "UPDATE `VIPs` SET \
  297.         `VIPLevel` = %d, \
  298.         `SpawnInBase` = %d, \
  299.         `WeaponPreset` = %d, \
  300.         `WeaponMeleeSlot` = %d, \
  301.         `WeaponPistolSlot` = %d, \
  302.         `WeaponShotgunSlot` = %d, \
  303.         `WeaponSubMachineSlot` = %d, \
  304.         `WeaponAssaultSlot` = %d, \
  305.         `WeaponRifleSlot` = %d WHERE `Username` = '%e'",
  306.         GetPlayerVIPLevel(playerid),
  307.         VIPInfo[playerid][e_VIPBaseSpawn],
  308.         VIPInfo[playerid][e_VIPGunPackPreset],
  309.         VIPInfo[playerid][e_VIPGPMelee],
  310.         VIPInfo[playerid][e_VIPGPPistol],
  311.         VIPInfo[playerid][e_VIPGPShotgun],
  312.         VIPInfo[playerid][e_VIPGPSubMachine],
  313.         VIPInfo[playerid][e_VIPGPAssault],
  314.         VIPInfo[playerid][e_VIPGPRifle],
  315.         GetPlayerNameEx(playerid));
  316.     mysql_tquery(g_SQL, _query);
  317.  
  318.     //Stats reset
  319.     SetPlayerVIPLevel(playerid, 0);
  320.     VIPInfo[playerid][e_VIPBaseSpawn] = false;
  321.     VIPInfo[playerid][e_VIPGunPackPreset] = false;
  322.     VIPInfo[playerid][e_VIPGPMelee] = -1;
  323.     VIPInfo[playerid][e_VIPGPPistol] = -1;
  324.     VIPInfo[playerid][e_VIPGPShotgun] = -1;
  325.     VIPInfo[playerid][e_VIPGPSubMachine] = -1;
  326.     VIPInfo[playerid][e_VIPGPAssault] = -1;
  327.     VIPInfo[playerid][e_VIPGPRifle] = -1;
  328.     VIPInfo[playerid][e_VIPFirstSpawn] = false;
  329.     VIPInfo[playerid][e_IsVIPInLounge] = false;
  330.     VIPInfo[playerid][e_VIPToysSlots][0] = false;
  331.     VIPInfo[playerid][e_VIPToysSlots][1] = false;
  332.     VIPInfo[playerid][e_VIPToysSlots][2] = false;
  333.     VIPInfo[playerid][e_VIPToysSlots][3] = false;
  334.     VIPInfo[playerid][e_VIPToysSlots][4] = false;
  335.     VIPInfo[playerid][e_VIPToysSlots][5] = false;
  336.     VIPInfo[playerid][e_VIPToysSlots][6] = false;
  337.     VIPInfo[playerid][e_VIPToysSlots][7] = false;
  338.     VIPInfo[playerid][e_VIPToysSlots][8] = false;
  339.     VIPInfo[playerid][e_VIPToysSlots][9] = false;
  340.     VIPInfo[playerid][e_VIPSelectedBone] = false;
  341.  
  342.     return 1;
  343. }
  344.  
  345. public OnPlayerSpawn(playerid)
  346. {
  347.     new str[128];
  348.     if(IsPlayerVIP(playerid)){
  349.         if(VIPInfo[playerid][e_VIPFirstSpawn]){
  350.             format(str, sizeof(str), "Welcome "VIPCOL_WHITE"%s "VIPCOL_YELLOW", your VIP level is "VIPCOL_WHITE"%i "VIPCOL_YELLOW"|| account type: "VIPCOL_WHITE"%s", GetPlayerNameEx(playerid), GetPlayerVIPLevel(playerid), GetPlayerVIPName(playerid));
  351.             SendClientMessage(playerid, VIPCOLOR_YELLOW, str);
  352.             SendClientMessage(playerid, VIPCOLOR_ORANGE, "[EO_VIP]: "VIPCOL_YELLOW"Use "VIPCOL_WHITE"/vipcmds "VIPCOL_YELLOW"to display a useful collection of VIP commands, for information help use "VIPCOL_WHITE"/viphelp");
  353.             VIPInfo[playerid][e_VIPFirstSpawn] = false;
  354.         }
  355.    
  356.         if(GetPlayerVIPLevel(playerid) == EOVIP_VIPLEVEL_3){
  357.             SendClientMessage(playerid, VIPCOLOR_ORANGE, "[EO_VIP]: "VIPCOL_YELLOW"Your Armour has been set to "VIPCOL_WHITE"40%\%");
  358.             SetPlayerArmour(playerid, 40);
  359.         }
  360.         else if(GetPlayerVIPLevel(playerid) == EOVIP_VIPLEVEL_4){
  361.             SendClientMessage(playerid, VIPCOLOR_ORANGE, "[EO_VIP]: "VIPCOL_YELLOW"Your Armour has been set to "VIPCOL_WHITE"90%\%");
  362.             SetPlayerArmour(playerid, 90);
  363.         }
  364.  
  365.     }
  366.     if(VIPInfo[playerid][e_VIPBaseSpawn]){
  367.         SendClientMessage(playerid, VIPCOLOR_ORANGE, "[EO_VIP]: "VIPCOL_YELLOW"You have spawned at VIP Base, you can change this option via "VIPCOL_WHITE"/vipbs");
  368.         TogglePlayerControllable(playerid, false);
  369.         SetPlayerPos(playerid, 3049.6392,-668.2963,2.8086);
  370.         defer VIPBaseTeleportTimer(playerid);
  371.     }
  372.    
  373.     return 1;
  374. }
  375.  
  376. public OnPlayerStateChange(playerid, newstate, oldstate)
  377. {
  378.     new VehID = GetPlayerVehicleID(playerid);
  379.     if(newstate == PLAYER_STATE_DRIVER && IsVIPVehicle(VehID)) {
  380.         if(IsPlayerVIP(playerid))
  381.             SendClientMessage(playerid, VIPCOLOR_ORANGE, "[EO_VIP]: "VIPCOL_YELLOW"Welcome to VIP Vehicle");
  382.         else{
  383.             RemovePlayerFromVehicle(playerid);
  384.             SendClientMessage(playerid, VIPCOLOR_RED, "[EO_VIP]: You cannot drive a VIP vehicle!");
  385.         }
  386.  
  387.     }
  388.     return 1;
  389. }
  390.  
  391. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  392. {
  393.     if(PRESSED(KEY_NO)){
  394.         new Float:X, Float:Y, Float:Z, str[96];
  395.         GetPlayerPos(playerid, X, Y, Z);
  396.         if(IsPlayerInRangeOfPoint(playerid, 4, 3002.3396, -683.2094, 1.9951)){
  397.             if(!IsPlayerVIP(playerid)) return 0;
  398.             if(!IsVIPGateOpened()){
  399.                 if(IsDynamicObjectMoving(VIPGate[e_Gate1]))
  400.                     return SendClientMessage(playerid, VIPCOLOR_RED, "[EO_VIP]: Wait for the gate to fully close!");
  401.                 ControllVIPGate(VIPGATE_OPEN);
  402.                 SendClientMessage(playerid, VIPCOLOR_GREEN, "[EO_VIP]: VIP Base gate is opening!");
  403.             }
  404.             else{
  405.                 if(IsDynamicObjectMoving(VIPGate[e_Gate1]))
  406.                     return SendClientMessage(playerid, VIPCOLOR_RED, "[EO_VIP]: Wait for the gate to fully open!");
  407.                 ControllVIPGate(VIPGATE_CLOSE);
  408.                 SendClientMessage(playerid, VIPCOLOR_GREEN, "[EO_VIP]: VIP Base gate is closing!");
  409.             }
  410.         }
  411.  
  412.         else if(IsPlayerInRangeOfPoint(playerid, 2, 3024.9241, -692.5798, 3.3770)){
  413.  
  414.             if(!IsPlayerVIP(playerid)) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You are not a VIP, you cannot enter this lounge!");
  415.             if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You cannot enter the lounge while being in a vehicle!");
  416.             format(str, sizeof(str), "[VIP Lounge]: "VIPCOL_YELLOW"VIP "VIPCOL_WHITE"%s"VIPCOL_YELLOW" has entered The VIP Lounge", GetPlayerNameEx(playerid));
  417.             foreach(new i : VIPS){
  418.                 if(IsPlayerVIP(i) && VIPInfo[i][e_IsVIPInLounge])
  419.                     SendClientMessage(i, VIPCOLOR_ORANGE, str);
  420.             }
  421.             SetPlayerInterior(playerid, 3);
  422.             SetPlayerPos(playerid, 942.171997, -16.542755, 1000.929687);
  423.             SendClientMessage(playerid, VIPCOLOR_ORANGE, "[EO_VIP]: "VIPCOL_YELLOW"press "VIPCOL_WHITE"N "VIPCOL_YELLOW"to get outside");
  424.             SendClientMessage(playerid, VIPCOLOR_ORANGE, "[EO_VIP]: "VIPCOL_YELLOW"Welcome to the VIP Lounge");
  425.             VIPInfo[playerid][e_IsVIPInLounge] = true;
  426.         }
  427.  
  428.         else if(IsPlayerInRangeOfPoint(playerid, 2, 942.1549,-16.8236,1000.9297)){
  429.  
  430.             format(str, sizeof(str), "[VIP Lounge]: "VIPCOL_ORANGE"VIP "VIPCOL_WHITE"%s "VIPCOL_ORANGE"has left The VIP Lounge", GetPlayerNameEx(playerid));
  431.             VIPInfo[playerid][e_IsVIPInLounge] = false;
  432.             foreach(new i : VIPS){
  433.             if(IsPlayerVIP(i) && VIPInfo[i][e_IsVIPInLounge])
  434.                 SendClientMessage(i, VIPCOLOR_ORANGE, str);
  435.             }
  436.             SetPlayerInterior(playerid, 0);
  437.             SetPlayerPos(playerid, 3024.9241, -692.5798, 3.3770);
  438.             TogglePlayerControllable(playerid, false);
  439.             SendClientMessage(playerid, VIPCOLOR_ORANGE, "[EO_VIP]: You have been temporarily frozen, please wait for the environment to lead!");
  440.             defer VIPBaseTeleportTimer(playerid);
  441.         }
  442.     }
  443.  
  444.     return 1;
  445. }
  446.  
  447. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  448. {
  449.  
  450.     switch(dialogid){
  451.  
  452.         case DIALOG_VIPSKINS:{
  453.             if(!response) return 0;
  454.             switch(listitem){
  455.                 case 0: SetPlayerSkin(playerid, 2), SendClientMessage(playerid, VIPCOLOR_ORANGE, "[EO_VIP]: "VIPCOL_YELLOW"You have changed your skin to "VIPCOL_WHITE"Maccer");
  456.                 case 1: SetPlayerSkin(playerid, 3), SendClientMessage(playerid, VIPCOLOR_ORANGE, "[EO_VIP]: "VIPCOL_YELLOW"You have changed your skin to "VIPCOL_WHITE"Andre");
  457.                 case 2: SetPlayerSkin(playerid, 12), SendClientMessage(playerid, VIPCOLOR_ORANGE, "[EO_VIP]: "VIPCOL_YELLOW"You have changed your skin to "VIPCOL_WHITE"Rich Woman");
  458.                 case 3: SetPlayerSkin(playerid, 0), SendClientMessage(playerid, VIPCOLOR_ORANGE, "[EO_VIP]: "VIPCOL_YELLOW"You have changed your skin to "VIPCOL_WHITE"CJ");
  459.                 case 4: SetPlayerSkin(playerid, 45), SendClientMessage(playerid, VIPCOLOR_ORANGE, "[EO_VIP]: "VIPCOL_YELLOW"You have changed your skin to "VIPCOL_WHITE"Stunter");
  460.                 case 5: SetPlayerSkin(playerid, 86), SendClientMessage(playerid, VIPCOLOR_ORANGE, "[EO_VIP]: "VIPCOL_YELLOW"You have changed your skin to "VIPCOL_WHITE"Ryder");
  461.                 case 6: SetPlayerSkin(playerid, 120), SendClientMessage(playerid, VIPCOLOR_ORANGE, "[EO_VIP]: "VIPCOL_YELLOW"You have changed your skin to "VIPCOL_WHITE"Triad Boss");
  462.                 case 7: SetPlayerSkin(playerid, 269), SendClientMessage(playerid, VIPCOLOR_ORANGE, "[EO_VIP]: "VIPCOL_YELLOW"You have changed your skin to "VIPCOL_WHITE"Big Smoke");
  463.                 case 8: SetPlayerSkin(playerid, 167), SendClientMessage(playerid, VIPCOLOR_ORANGE, "[EO_VIP]: "VIPCOL_YELLOW"You have changed your skin to "VIPCOL_WHITE"Cluckin' bell worker");
  464.                 case 9: SetPlayerSkin(playerid, 192), SendClientMessage(playerid, VIPCOLOR_ORANGE, "[EO_VIP]: "VIPCOL_YELLOW"You have changed your skin to "VIPCOL_WHITE"Michelle");
  465.             }
  466.         }
  467.  
  468.         case DIALOG_VIPBASESPAWN:{
  469.             if(!response) return 0;
  470.             if(!VIPInfo[playerid][e_VIPBaseSpawn]){
  471.                 VIPInfo[playerid][e_VIPBaseSpawn] = true;
  472.                 SendClientMessage(playerid, VIPCOLOR_ORANGE, "[EO_VIP]: "VIPCOL_YELLOW"Your spawn position was set to the VIP Base!");
  473.             }
  474.             else{
  475.                 VIPInfo[playerid][e_VIPBaseSpawn] = false;
  476.                 SendClientMessage(playerid, VIPCOLOR_ORANGE, "[EO_VIP]: "VIPCOL_YELLOW"You will not spawn on the VIP Base the next time!");
  477.             }
  478.         }
  479.  
  480.         case DIALOG_VIPGPPRESETCREATE:{
  481.             if(!response) return 0;
  482.             ShowPlayerDialog(playerid, DIALOG_PRESETGUNLIST, DIALOG_STYLE_LIST, "VIP Gunpack Preset - Weapon List", "Melee\nPistol\nShotgun\nSubMachine\nAssault\nRifle\nSave Gunpack Preset", "Select", "Cancel");
  483.         }
  484.         case DIALOG_PRESETGUNLIST:{
  485.             if(!response) return SendClientMessage(playerid, VIPCOLOR_BLUE, "[EO_VIP]: You have canceled Gunpack preset creation!");
  486.             switch(listitem){
  487.                 case 0: ShowPlayerDialog(playerid, DIALOG_GUNLISTMELEE, DIALOG_STYLE_LIST, "Weapon List - Melee", "Knife\nBaseball Bat\nNightStick\nDildo\nGolf Club\nShovel\nKatana", "Select", "Cancel");
  488.                 case 1: ShowPlayerDialog(playerid, DIALOG_GUNLISTPISTOL, DIALOG_STYLE_LIST, "Weapon List - Pistol", "9mm Pistol\nSilenced Pistol\nDeagle", "Select", "Cancel");
  489.                 case 2: ShowPlayerDialog(playerid, DIALOG_GUNLISTSHOTGUN, DIALOG_STYLE_LIST, "Weapon List - Shotgun", "Shotgun\nCombat Shotgun\nSwan-off Shotgun", "Select", "Cancel");
  490.                 case 3: ShowPlayerDialog(playerid, DIALOG_GUNLISTSUBMACHINE, DIALOG_STYLE_LIST, "Weapon List - SubMachine", "MP5\nTec-9\nMicro UZI", "Select", "Cancel");
  491.                 case 4: ShowPlayerDialog(playerid, DIALOG_GUNLISTASSAULT, DIALOG_STYLE_LIST, "Weapon List - Assault", "M4\nAK-47", "Select", "Cancel");
  492.                 case 5: ShowPlayerDialog(playerid, DIALOG_GUNLISTRIFLE, DIALOG_STYLE_LIST, "Weapon List - Rifle", "Country Rifle\nSniper Rifle", "Select", "Cancel");
  493.                 case 6:{
  494.                     VIPInfo[playerid][e_VIPGunPackPreset] = true;
  495.                     SendClientMessage(playerid, VIPCOLOR_ORANGE, "[EO_VIP]: "VIPCOL_YELLOW"You have saved your Gunpack preset, next time you use /vipgunpack you will spawn your Gunpack preset!");
  496.                 }
  497.             }
  498.         }
  499.  
  500.         case DIALOG_GUNLISTMELEE:{
  501.             if(!response) return ShowPlayerDialog(playerid, DIALOG_PRESETGUNLIST, DIALOG_STYLE_LIST, "VIP Gunpack Preset - Weapon List", "Melee\nPistol\nShotgun\nSubMachine\nAssault\nRifle\nSave Gunpack Preset", "Select", "Cancel");
  502.             switch(listitem){
  503.                 case 0: VIPInfo[playerid][e_VIPGPMelee] = 4, SendClientMessage(playerid, VIPCOLOR_BLUE, "[EO_VIP]: You have selected \"Knife\"");
  504.                 case 1: VIPInfo[playerid][e_VIPGPMelee] = 5, SendClientMessage(playerid, VIPCOLOR_BLUE, "[EO_VIP]: You have selected \"Baseball Bat\"");
  505.                 case 2: VIPInfo[playerid][e_VIPGPMelee] = 3, SendClientMessage(playerid, VIPCOLOR_BLUE, "[EO_VIP]: You have selected \"NightStick\"");
  506.                 case 3: VIPInfo[playerid][e_VIPGPMelee] = 10, SendClientMessage(playerid, VIPCOLOR_BLUE, "[EO_VIP]: You have selected \"Dildo\"");
  507.                 case 4: VIPInfo[playerid][e_VIPGPMelee] = 2, SendClientMessage(playerid, VIPCOLOR_BLUE, "[EO_VIP]: You have selected \"Golf Club\"");
  508.                 case 5: VIPInfo[playerid][e_VIPGPMelee] = 6, SendClientMessage(playerid, VIPCOLOR_BLUE, "[EO_VIP]: You have selected \"Shovel\"");
  509.                 case 6: VIPInfo[playerid][e_VIPGPMelee] = 8, SendClientMessage(playerid, VIPCOLOR_BLUE, "[EO_VIP]: You have selected \"Katana\"");
  510.             }
  511.             ShowPlayerDialog(playerid, DIALOG_PRESETGUNLIST, DIALOG_STYLE_LIST, "VIP Gunpack Preset - Weapon List", "Melee\nPistol\nShotgun\nSubMachine\nAssault\nRifle\nSave Gunpack Preset", "Select", "Cancel");
  512.         }
  513.  
  514.         case DIALOG_GUNLISTPISTOL:{
  515.             if(!response) return ShowPlayerDialog(playerid, DIALOG_PRESETGUNLIST, DIALOG_STYLE_LIST, "VIP Gunpack Preset - Weapon List", "Melee\nPistol\nShotgun\nSubMachine\nAssault\nRifle\nSave Gunpack Preset", "Select", "Cancel");
  516.             switch(listitem){
  517.                 case 0: VIPInfo[playerid][e_VIPGPPistol] = 22, SendClientMessage(playerid, VIPCOLOR_BLUE, "[EO_VIP]: You have selected \"9mm Pistol\"");
  518.                 case 1: VIPInfo[playerid][e_VIPGPPistol] = 23, SendClientMessage(playerid, VIPCOLOR_BLUE, "[EO_VIP]: You have selected \"Silenced Pistol\"");
  519.                 case 2: VIPInfo[playerid][e_VIPGPPistol] = 24, SendClientMessage(playerid, VIPCOLOR_BLUE, "[EO_VIP]: You have selected \"Deagle\"");
  520.  
  521.             }
  522.             ShowPlayerDialog(playerid, DIALOG_PRESETGUNLIST, DIALOG_STYLE_LIST, "VIP Gunpack Preset - Weapon List", "Melee\nPistol\nShotgun\nSubMachine\nAssault\nRifle\nSave Gunpack Preset", "Select", "Cancel");
  523.         }
  524.  
  525.         case DIALOG_GUNLISTSHOTGUN:{
  526.             if(!response) return ShowPlayerDialog(playerid, DIALOG_PRESETGUNLIST, DIALOG_STYLE_LIST, "VIP Gunpack Preset - Weapon List", "Melee\nPistol\nShotgun\nSubMachine\nAssault\nRifle\nSave Gunpack Preset", "Select", "Cancel");
  527.             switch(listitem){
  528.                 case 0: VIPInfo[playerid][e_VIPGPShotgun] = 25, SendClientMessage(playerid, VIPCOLOR_BLUE, "[EO_VIP]: You have selected \"Shotgun\"");
  529.                 case 1: VIPInfo[playerid][e_VIPGPShotgun] = 27, SendClientMessage(playerid, VIPCOLOR_BLUE, "[EO_VIP]: You have selected \"Combat Shotgun\"");
  530.                 case 2: VIPInfo[playerid][e_VIPGPShotgun] = 26, SendClientMessage(playerid, VIPCOLOR_BLUE, "[EO_VIP]: You have selected \"Swan-off Shotgun\"");
  531.  
  532.             }
  533.             ShowPlayerDialog(playerid, DIALOG_PRESETGUNLIST, DIALOG_STYLE_LIST, "VIP Gunpack Preset - Weapon List", "Melee\nPistol\nShotgun\nSubMachine\nAssault\nRifle\nSave Gunpack Preset", "Select", "Cancel");
  534.         }
  535.  
  536.         case DIALOG_GUNLISTSUBMACHINE:{
  537.             if(!response) return ShowPlayerDialog(playerid, DIALOG_PRESETGUNLIST, DIALOG_STYLE_LIST, "VIP Gunpack Preset - Weapon List", "Melee\nPistol\nShotgun\nSubMachine\nAssault\nRifle\nSave Gunpack Preset", "Select", "Cancel");
  538.             switch(listitem){
  539.                 case 0: VIPInfo[playerid][e_VIPGPSubMachine] = 29, SendClientMessage(playerid, VIPCOLOR_BLUE, "[EO_VIP]: You have selected \"MP5\"");
  540.                 case 1: VIPInfo[playerid][e_VIPGPSubMachine] = 32, SendClientMessage(playerid, VIPCOLOR_BLUE, "[EO_VIP]: You have selected \"Tec-9\"");
  541.                 case 2: VIPInfo[playerid][e_VIPGPSubMachine] = 28, SendClientMessage(playerid, VIPCOLOR_BLUE, "[EO_VIP]: You have selected \"Micro UZI\"");
  542.  
  543.             }
  544.             ShowPlayerDialog(playerid, DIALOG_PRESETGUNLIST, DIALOG_STYLE_LIST, "VIP Gunpack Preset - Weapon List", "Melee\nPistol\nShotgun\nSubMachine\nAssault\nRifle\nSave Gunpack Preset", "Select", "Cancel");
  545.         }
  546.  
  547.         case DIALOG_GUNLISTASSAULT:{
  548.             if(!response) return ShowPlayerDialog(playerid, DIALOG_PRESETGUNLIST, DIALOG_STYLE_LIST, "VIP Gunpack Preset - Weapon List", "Melee\nPistol\nShotgun\nSubMachine\nAssault\nRifle\nSave Gunpack Preset", "Select", "Cancel");
  549.             switch(listitem){
  550.                 case 0: VIPInfo[playerid][e_VIPGPAssault] = 31, SendClientMessage(playerid, VIPCOLOR_BLUE, "[EO_VIP]: You have selected \"M4\"");
  551.                 case 1: VIPInfo[playerid][e_VIPGPAssault] = 30, SendClientMessage(playerid, VIPCOLOR_BLUE, "[EO_VIP]: You have selected \"AK-47\"");
  552.  
  553.             }
  554.             ShowPlayerDialog(playerid, DIALOG_PRESETGUNLIST, DIALOG_STYLE_LIST, "VIP Gunpack Preset - Weapon List", "Melee\nPistol\nShotgun\nSubMachine\nAssault\nRifle\nSave Gunpack Preset", "Select", "Cancel");
  555.         }
  556.  
  557.         case DIALOG_GUNLISTRIFLE:{
  558.             if(!response) return ShowPlayerDialog(playerid, DIALOG_PRESETGUNLIST, DIALOG_STYLE_LIST, "VIP Gunpack Preset - Weapon List", "Melee\nPistol\nShotgun\nSubMachine\nAssault\nRifle\nSave Gunpack Preset", "Select", "Cancel");
  559.             switch(listitem){
  560.                 case 0: VIPInfo[playerid][e_VIPGPRifle] = 33, SendClientMessage(playerid, VIPCOLOR_BLUE, "[EO_VIP]: You have selected \"Country Rifle\"");
  561.                 case 1: VIPInfo[playerid][e_VIPGPRifle] = 34, SendClientMessage(playerid, VIPCOLOR_BLUE, "[EO_VIP]: You have selected \"Sniper Rifle\"");
  562.  
  563.             }
  564.             ShowPlayerDialog(playerid, DIALOG_PRESETGUNLIST, DIALOG_STYLE_LIST, "VIP Gunpack Preset - Weapon List", "Melee\nPistol\nShotgun\nSubMachine\nAssault\nRifle\nSave Gunpack Preset", "Select", "Cancel");
  565.         }
  566.  
  567.         case DIALOG_VIPGPPRESETEDIT:{
  568.             if(!response) return 0;
  569.             switch(listitem){
  570.                 case 0: ShowPlayerDialog(playerid, DIALOG_PRESETGUNLIST, DIALOG_STYLE_LIST, "VIP Gunpack Preset - Weapon List", "Melee\nPistol\nShotgun\nSubMachine\nAssault\nRifle\nSave Gunpack Preset", "Select", "Cancel");
  571.                 case 1: ShowPlayerDialog(playerid, DIALOG_VIPGPPRESETDELETE, DIALOG_STYLE_MSGBOX, "VIP Gunpack Preset", "Are you sure you want to delete your Gunpack preset?\n"VIPCOL_YELLOW"you can create another one anytime via "VIPCOL_WHITE"/vipgppreset", "Yes", "No");
  572.             }
  573.         }
  574.  
  575.         case DIALOG_VIPGPPRESETDELETE:{
  576.             if(!response) return 0;
  577.             VIPInfo[playerid][e_VIPGunPackPreset] = false;
  578.             VIPInfo[playerid][e_VIPGPMelee] = -1;
  579.             VIPInfo[playerid][e_VIPGPPistol] = -1;
  580.             VIPInfo[playerid][e_VIPGPShotgun] = -1;
  581.             VIPInfo[playerid][e_VIPGPSubMachine] = -1;
  582.             VIPInfo[playerid][e_VIPGPAssault] = -1;
  583.             VIPInfo[playerid][e_VIPGPRifle] = -1;
  584.             SendClientMessage(playerid, VIPCOLOR_BLUE, "[EO_VIP]: You have deleted your Gunpack preset!");
  585.         }
  586.  
  587.         case DIALOG_TOYS:{
  588.             if(!response) return 0;
  589.  
  590.             VIPInfo[playerid][e_VIPToysIndex] = listitem;
  591.             if(VIPInfo[playerid][e_VIPToysSlots][listitem]){
  592.                 SendClientMessage(playerid, VIPCOLOR_BLUE, "[EO_VIP] "VIPCOL_BLUE"Please chose an option!");
  593.                 ShowPlayerDialog(playerid, DIALOG_TOYSMANAGE, DIALOG_STYLE_LIST, "VIP Attachments - Management", "Edit Toy\nDelete Toy", "Select", "Cancel");
  594.             }
  595.             else{
  596.                 new _content[500];
  597.                 for(new i; i<sizeof(gPlayerBone); i++){
  598.                     format(_content, sizeof(_content), "%s%s\n" ,_content, gPlayerBone[i]);
  599.                 }
  600.  
  601.                 SendClientMessage(playerid, VIPCOLOR_BLUE, "[EO_VIP] "VIPCOL_BLUE"Please select a bone to stick the toy at!");
  602.                 ShowPlayerDialog(playerid, DIALOG_TOYSINDEX, DIALOG_STYLE_LIST, "VIP Attachments - Bone Selection", _content, "Select", "Cancel");
  603.             }
  604.         }
  605.  
  606.         case DIALOG_TOYSINDEX:{
  607.             if(!response) return 0;
  608.             new _VIPToys[300];
  609.             SendClientMessage(playerid, VIPCOLOR_BLUE, "[EO_VIP] "VIPCOL_BLUE"Please select a toy to attach!");
  610.             for(new i; i<sizeof(gVIPToys); i++)
  611.                 format(_VIPToys, sizeof(_VIPToys), "%s%s\n", _VIPToys, gVIPToys[i]);
  612.             switch(listitem){
  613.                 case 0: ShowPlayerDialog(playerid, DIALOG_TOYSLIST, DIALOG_STYLE_LIST, "VIP Toys - Toy selection", _VIPToys, "Select", "Cancel"), VIPInfo[playerid][e_VIPSelectedBone] = 1;
  614.                 case 1: ShowPlayerDialog(playerid, DIALOG_TOYSLIST, DIALOG_STYLE_LIST, "VIP Toys - Toy selection", _VIPToys, "Select", "Cancel"), VIPInfo[playerid][e_VIPSelectedBone] = 2;
  615.                 case 2: ShowPlayerDialog(playerid, DIALOG_TOYSLIST, DIALOG_STYLE_LIST, "VIP Toys - Toy selection", _VIPToys, "Select", "Cancel"), VIPInfo[playerid][e_VIPSelectedBone] = 3;
  616.                 case 3: ShowPlayerDialog(playerid, DIALOG_TOYSLIST, DIALOG_STYLE_LIST, "VIP Toys - Toy selection", _VIPToys, "Select", "Cancel"), VIPInfo[playerid][e_VIPSelectedBone] = 4;
  617.                 case 4: ShowPlayerDialog(playerid, DIALOG_TOYSLIST, DIALOG_STYLE_LIST, "VIP Toys - Toy selection", _VIPToys, "Select", "Cancel"), VIPInfo[playerid][e_VIPSelectedBone] = 5;
  618.                 case 5: ShowPlayerDialog(playerid, DIALOG_TOYSLIST, DIALOG_STYLE_LIST, "VIP Toys - Toy selection", _VIPToys, "Select", "Cancel"), VIPInfo[playerid][e_VIPSelectedBone] = 6;
  619.                 case 6: ShowPlayerDialog(playerid, DIALOG_TOYSLIST, DIALOG_STYLE_LIST, "VIP Toys - Toy selection", _VIPToys, "Select", "Cancel"), VIPInfo[playerid][e_VIPSelectedBone] = 7;
  620.                 case 7: ShowPlayerDialog(playerid, DIALOG_TOYSLIST, DIALOG_STYLE_LIST, "VIP Toys - Toy selection", _VIPToys, "Select", "Cancel"), VIPInfo[playerid][e_VIPSelectedBone] = 8;
  621.                 case 8: ShowPlayerDialog(playerid, DIALOG_TOYSLIST, DIALOG_STYLE_LIST, "VIP Toys - Toy selection", _VIPToys, "Select", "Cancel"), VIPInfo[playerid][e_VIPSelectedBone] = 9;
  622.                 case 9: ShowPlayerDialog(playerid, DIALOG_TOYSLIST, DIALOG_STYLE_LIST, "VIP Toys - Toy selection", _VIPToys, "Select", "Cancel"), VIPInfo[playerid][e_VIPSelectedBone] = 10;
  623.                 case 10: ShowPlayerDialog(playerid, DIALOG_TOYSLIST, DIALOG_STYLE_LIST, "VIP Toys - Toy selection", _VIPToys, "Select", "Cancel"), VIPInfo[playerid][e_VIPSelectedBone] = 11;
  624.                 case 11: ShowPlayerDialog(playerid, DIALOG_TOYSLIST, DIALOG_STYLE_LIST, "VIP Toys - Toy selection", _VIPToys, "Select", "Cancel"), VIPInfo[playerid][e_VIPSelectedBone] = 12;
  625.                 case 12: ShowPlayerDialog(playerid, DIALOG_TOYSLIST, DIALOG_STYLE_LIST, "VIP Toys - Toy selection", _VIPToys, "Select", "Cancel"), VIPInfo[playerid][e_VIPSelectedBone] = 13;
  626.                 case 13: ShowPlayerDialog(playerid, DIALOG_TOYSLIST, DIALOG_STYLE_LIST, "VIP Toys - Toy selection", _VIPToys, "Select", "Cancel"), VIPInfo[playerid][e_VIPSelectedBone] = 14;
  627.                 case 14: ShowPlayerDialog(playerid, DIALOG_TOYSLIST, DIALOG_STYLE_LIST, "VIP Toys - Toy selection", _VIPToys, "Select", "Cancel"), VIPInfo[playerid][e_VIPSelectedBone] = 15;
  628.                 case 15: ShowPlayerDialog(playerid, DIALOG_TOYSLIST, DIALOG_STYLE_LIST, "VIP Toys - Toy selection", _VIPToys, "Select", "Cancel"), VIPInfo[playerid][e_VIPSelectedBone] = 16;
  629.                 case 16: ShowPlayerDialog(playerid, DIALOG_TOYSLIST, DIALOG_STYLE_LIST, "VIP Toys - Toy selection", _VIPToys, "Select", "Cancel"), VIPInfo[playerid][e_VIPSelectedBone] = 17;
  630.                 case 17: ShowPlayerDialog(playerid, DIALOG_TOYSLIST, DIALOG_STYLE_LIST, "VIP Toys - Toy selection", _VIPToys, "Select", "Cancel"), VIPInfo[playerid][e_VIPSelectedBone] = 18;
  631.             }
  632.         }
  633.  
  634.         case DIALOG_TOYSLIST:{
  635.             if(!response) return 0;
  636.  
  637.             switch(listitem){
  638.                 case 0: SetPlayerAttachedObject(playerid, VIPInfo[playerid][e_VIPToysIndex], 18632, VIPInfo[playerid][e_VIPSelectedBone], 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
  639.                 case 1: SetPlayerAttachedObject(playerid, VIPInfo[playerid][e_VIPToysIndex], 18633, VIPInfo[playerid][e_VIPSelectedBone], 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
  640.                 case 2: SetPlayerAttachedObject(playerid, VIPInfo[playerid][e_VIPToysIndex], 18635, VIPInfo[playerid][e_VIPSelectedBone], 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
  641.                 case 3: SetPlayerAttachedObject(playerid, VIPInfo[playerid][e_VIPToysIndex], 18638, VIPInfo[playerid][e_VIPSelectedBone], 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
  642.                 case 4: SetPlayerAttachedObject(playerid, VIPInfo[playerid][e_VIPToysIndex], 19077, VIPInfo[playerid][e_VIPSelectedBone], 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
  643.                 case 5: SetPlayerAttachedObject(playerid, VIPInfo[playerid][e_VIPToysIndex], 18871, VIPInfo[playerid][e_VIPSelectedBone], 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
  644.                 case 6: SetPlayerAttachedObject(playerid, VIPInfo[playerid][e_VIPToysIndex], 1210, VIPInfo[playerid][e_VIPSelectedBone], 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
  645.                 case 7: SetPlayerAttachedObject(playerid, VIPInfo[playerid][e_VIPToysIndex], 19026, VIPInfo[playerid][e_VIPSelectedBone], 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
  646.                 case 8: SetPlayerAttachedObject(playerid, VIPInfo[playerid][e_VIPToysIndex], 19007, VIPInfo[playerid][e_VIPSelectedBone], 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
  647.                 case 9: SetPlayerAttachedObject(playerid, VIPInfo[playerid][e_VIPToysIndex], 19138, VIPInfo[playerid][e_VIPSelectedBone], 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
  648.                 case 10: SetPlayerAttachedObject(playerid, VIPInfo[playerid][e_VIPToysIndex], 19028, VIPInfo[playerid][e_VIPSelectedBone], 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
  649.                 case 11: SetPlayerAttachedObject(playerid, VIPInfo[playerid][e_VIPToysIndex], 19029, VIPInfo[playerid][e_VIPSelectedBone], 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
  650.                 case 12: SetPlayerAttachedObject(playerid, VIPInfo[playerid][e_VIPToysIndex], 19317, VIPInfo[playerid][e_VIPSelectedBone], 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
  651.                 case 13: SetPlayerAttachedObject(playerid, VIPInfo[playerid][e_VIPToysIndex], 19318, VIPInfo[playerid][e_VIPSelectedBone], 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
  652.                 case 14: SetPlayerAttachedObject(playerid, VIPInfo[playerid][e_VIPToysIndex], 19137, VIPInfo[playerid][e_VIPSelectedBone], 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
  653.                 case 15: SetPlayerAttachedObject(playerid, VIPInfo[playerid][e_VIPToysIndex], 19094, VIPInfo[playerid][e_VIPSelectedBone], 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
  654.                 case 16: SetPlayerAttachedObject(playerid, VIPInfo[playerid][e_VIPToysIndex], 18974, VIPInfo[playerid][e_VIPSelectedBone], 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
  655.                 case 17: SetPlayerAttachedObject(playerid, VIPInfo[playerid][e_VIPToysIndex], 18977, VIPInfo[playerid][e_VIPSelectedBone], 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
  656.                 case 18: SetPlayerAttachedObject(playerid, VIPInfo[playerid][e_VIPToysIndex], 19078, VIPInfo[playerid][e_VIPSelectedBone], 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
  657.                 case 19: SetPlayerAttachedObject(playerid, VIPInfo[playerid][e_VIPToysIndex], 18962, VIPInfo[playerid][e_VIPSelectedBone], 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
  658.                 case 20: SetPlayerAttachedObject(playerid, VIPInfo[playerid][e_VIPToysIndex], 19066, VIPInfo[playerid][e_VIPSelectedBone], 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
  659.                 case 21: SetPlayerAttachedObject(playerid, VIPInfo[playerid][e_VIPToysIndex], 19039, VIPInfo[playerid][e_VIPSelectedBone], 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
  660.             }
  661.             SendClientMessage(playerid, VIPCOLOR_BLUE, "[EO_VIP] "VIPCOL_BLUE"Use the X,Y,Z axes to move/rotate/expand the toy!");
  662.             EditAttachedObject(playerid, VIPInfo[playerid][e_VIPToysIndex]);
  663.         }
  664.  
  665.         case DIALOG_TOYSMANAGE:{
  666.             if(!response) return 0;
  667.  
  668.             switch(listitem){
  669.                 case 0: EditAttachedObject(playerid, VIPInfo[playerid][e_VIPToysIndex]);
  670.                 case 1: RemovePlayerAttachedObject(playerid, VIPInfo[playerid][e_VIPToysIndex]);
  671.             }
  672.         }
  673.     }
  674.  
  675.     return 0;
  676. }
  677.  
  678. public OnPlayerEditAttachedObject(playerid, response, index, modelid, boneid, Float:fOffsetX, Float:fOffsetY, Float:fOffsetZ, Float:fRotX, Float:fRotY, Float:fRotZ, Float:fScaleX, Float:fScaleY, Float:fScaleZ ){
  679.  
  680.     if(response == EDIT_RESPONSE_FINAL){
  681.         SendClientMessage(playerid, VIPCOLOR_BLUE, "[EO_VIP] "VIPCOL_BLUE"Toy was saved successfully!");
  682.         VIPInfo[playerid][e_VIPToysSlots][VIPInfo[playerid][e_VIPToysIndex]] = true;
  683.         VIPInfo[playerid][e_VIPToysIndex] = -1;
  684.         VIPInfo[playerid][e_VIPSelectedBone] = -1;
  685.     }
  686.  
  687.     return 1;
  688. }
  689.  
  690. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  691. {
  692.     new _header[54];
  693.     if(IsPlayerVIP(clickedplayerid)){
  694.         new _content[76];
  695.         format(_header, sizeof(_header), ""VIPCOL_BLUE"%s"VIPCOL_WHITE"'s VIP Info", GetPlayerNameEx(clickedplayerid));
  696.         format(_content, sizeof(_content), ""VIPCOL_WHITE"VIP Level: "VIPCOL_YELLOW"%d\n"VIPCOL_WHITE"Account Type: "VIPCOL_YELLOW"%s\n", GetPlayerVIPLevel(clickedplayerid), GetPlayerVIPName(clickedplayerid));
  697.         ShowPlayerDialog(playerid, DIALOG_MSG, DIALOG_STYLE_MSGBOX, _header, _content, "Close", "");
  698.     }
  699.     else{
  700.         format(_header, sizeof(_header), ""VIPCOL_BLUE"%s"VIPCOL_WHITE"'s VIP Info", GetPlayerNameEx(clickedplayerid));
  701.         ShowPlayerDialog(playerid, DIALOG_MSG, DIALOG_STYLE_MSGBOX, _header, ""VIPCOL_RED"This player is not a VIP", "Close", "");
  702.     }
  703.     return 1;
  704. }
  705.  
  706. //**Commands---------------------------------------------------------------------------------------------------------------------------------
  707.  
  708. //VIP Admin Commands
  709. CMD:vipcount(playerid){
  710.     if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You are not authorized to use this command!");
  711.     new str[60];
  712.     format(str, sizeof(str), "");
  713.     mysql_tquery(g_SQL, "SELECT `ID` FROM `VIPs`");
  714.    
  715.     format(str, sizeof(str), ""VIPCOL_WHITE"There is a total of "VIPCOL_YELLOW"%d "VIPCOL_WHITE"VIPs", cache_num_rows());
  716.     ShowPlayerDialog(playerid, DIALOG_MSG, DIALOG_STYLE_MSGBOX, "VIP information", str, "Close", "");
  717.  
  718.     return 1;
  719. }
  720.  
  721. CMD:setvip(playerid, params[]) {
  722.  
  723.     if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You are not authorized to use this command!");
  724.     new _string[128], _query[145], level, targetid;
  725.     if(sscanf(params, "ud", targetid, level)){
  726.         SendClientMessage(playerid, VIPCOLOR_GREEN, "[USAGE]: /setvip [playerid] [level]");
  727.         SendClientMessage(playerid, VIPCOLOR_GREEN, "[FUNCTION]: Set someone's VIP status");
  728.         return 1;
  729.     }
  730.     if(level < 0 || level > 4) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You have entered an invalid VIP level, Valid levels: [1-4]!");
  731.     if(!IsPlayerConnected(targetid)) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: This player is not connected!");
  732.     if(level == GetPlayerVIPLevel(targetid)) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: This player already has this VIP level!");
  733.  
  734.     if(GetPlayerVIPLevel(targetid) > level){       
  735.  
  736.         format(_string, sizeof(_string), "[INFO]: You have been demoted from VIP level "VIPCOL_WHITE"%d "VIPCOL_RED"to VIP level "VIPCOL_WHITE"%d!", GetPlayerVIPLevel(targetid), level);
  737.         SendClientMessage(targetid, VIPCOLOR_RED, _string);
  738.  
  739.         GameTextForPlayer(playerid, "~r~Demoted", 2000, 0);
  740.  
  741.         format(_string, sizeof(_string), "[INFO]: You have demoted %s from VIP level "VIPCOL_WHITE"%d "VIPCOL_ORANGE"to VIP level "VIPCOL_WHITE"%d!", GetPlayerNameEx(targetid), GetPlayerVIPLevel(targetid), level);
  742.         SendClientMessage(playerid, VIPCOLOR_ORANGE, _string);
  743.     }
  744.     else{
  745.  
  746.         format(_string, sizeof(_string), "[INFO]: You have been promoted from VIP level "VIPCOL_WHITE"%d "VIPCOL_YELLOW"to VIP level "VIPCOL_WHITE"%d!", GetPlayerVIPLevel(targetid), level);
  747.         SendClientMessage(targetid, VIPCOLOR_YELLOW, _string);
  748.  
  749.         GameTextForPlayer(playerid, "~g~Promoted~n~~y~Congratulations", 2000, 0);
  750.  
  751.         format(_string, sizeof(_string), "[INFO]: You have promoted %s from VIP level "VIPCOL_WHITE"%d "VIPCOL_ORANGE"to VIP level "VIPCOL_WHITE"%d!", GetPlayerNameEx(targetid), GetPlayerVIPLevel(targetid), level);
  752.         SendClientMessage(playerid, VIPCOLOR_ORANGE, _string);
  753.     }
  754.  
  755.     format(_string, sizeof(_string), "[INFO]: Administrator %s has given VIP level %d to %s", GetPlayerNameEx(playerid), level, GetPlayerNameEx(targetid));
  756.     SendClientMessageToAll(VIPCOLOR_ORANGE, _string);
  757.  
  758.     SetPlayerVIPLevel(targetid, level);
  759.  
  760.     mysql_format(g_SQL, _query, sizeof(_query), "UPDATE `VIPs` SET `VIPLevel` = %d, `Timestamp` = CURRENT_TIMESTAMP WHERE `Username` = '%e'", GetPlayerVIPLevel(playerid), GetPlayerNameEx(playerid));
  761.     mysql_tquery(g_SQL, _query);
  762.  
  763.     return 1;
  764. }
  765.  
  766.  
  767.  
  768. //vip level 0 Commands
  769. CMD:isvip(playerid, params[]){
  770.    
  771.     new tid, _header[54];
  772.     if(sscanf(params, "u", tid)){
  773.         SendClientMessage(playerid, VIPCOLOR_GREEN, "[USAGE]: /isvip [playerid]");
  774.         SendClientMessage(playerid, VIPCOLOR_GREEN, "[FUNCTION]: Check if player is a VIP");
  775.         return 1;
  776.     }
  777.     if(!IsPlayerConnected(tid)) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: This player is not connected");
  778.    
  779.     if(IsPlayerVIP(tid)){
  780.         new _content[76];
  781.         format(_header, sizeof(_header), ""VIPCOL_BLUE"%s"VIPCOL_WHITE"'s VIP Info", GetPlayerNameEx(tid));
  782.         format(_content, sizeof(_content), ""VIPCOL_WHITE"VIP Level: "VIPCOL_YELLOW"%d\n"VIPCOL_WHITE"Account Type: "VIPCOL_YELLOW"%s\n", GetPlayerVIPLevel(tid), GetPlayerVIPName(tid));
  783.         ShowPlayerDialog(playerid, DIALOG_MSG, DIALOG_STYLE_MSGBOX, _header, _content, "Close", "");
  784.     }
  785.     else{
  786.         format(_header, sizeof(_header), ""VIPCOL_BLUE"%s"VIPCOL_WHITE"'s VIP Info", GetPlayerNameEx(tid));
  787.         ShowPlayerDialog(playerid, DIALOG_MSG, DIALOG_STYLE_MSGBOX, _header, ""VIPCOL_RED"This player is not a VIP", "Close", "");
  788.     }
  789.  
  790.     return 1;
  791. }
  792.  
  793. CMD:vips(playerid) {
  794.     new _header[50], _content[3000], _count;
  795.  
  796.     foreach(new i : VIPS){
  797.         if(IsPlayerVIP(i)){
  798.             format(_content, sizeof(_content), "%s[%s : level %d] %s\n", _content, GetPlayerVIPName(i), GetPlayerVIPLevel(i), GetPlayerNameEx(i));
  799.             _count++;
  800.         }
  801.  
  802.     }
  803.  
  804.     if(_count){
  805.         format(_header, sizeof(_header), ""VIPCOL_WHITE"VIPs Online ["VIPCOL_GREEN"%d"VIPCOL_WHITE"]", _count);
  806.         ShowPlayerDialog(playerid, DIALOG_MSG, DIALOG_STYLE_MSGBOX, _header, _content, "Close", "");
  807.     }
  808.     else{
  809.         format(_header, sizeof(_header), ""VIPCOL_WHITE"VIPs Online ["VIPCOL_GREEN"%d"VIPCOL_WHITE"]", _count);
  810.         ShowPlayerDialog(playerid, DIALOG_MSG, DIALOG_STYLE_MSGBOX, ""VIPCOL_WHITE"VIPs Online ["VIPCOL_RED"0"VIPCOL_WHITE"]", ""VIPCOL_RED"There are no VIPs online!", "Close", "");
  811.     }
  812.  
  813.     return 1;
  814. }
  815.  
  816.  
  817. //VIP Level 1 Commands
  818. CMD:vipcmds(playerid) {
  819.  
  820.  
  821.     new _content[1500], _header[32];
  822.     switch(GetPlayerVIPLevel(playerid)){
  823.  
  824.         case EOVIP_VIPLEVEL_0:{
  825.  
  826.             strcat(_content, ""VIPCOL_ORANGE"/isvip - "VIPCOL_WHITE" View if player is a VIP\n");
  827.             strcat(_content, ""VIPCOL_ORANGE"/vips - "VIPCOL_WHITE" View all online VIPs");
  828.  
  829.             strcpy(_header, "VIP Level 0 [None] Commands", sizeof(_header));
  830.         }
  831.  
  832.         case EOVIP_VIPLEVEL_1:{
  833.  
  834.             strcat(_content, ""VIPCOL_ORANGE"/isvip - "VIPCOL_WHITE" View if player is a VIP\n");
  835.             strcat(_content, ""VIPCOL_ORANGE"/vips - "VIPCOL_WHITE" View all online VIPs\n");
  836.             strcat(_content, ""VIPCOL_ORANGE"/vchat - "VIPCOL_WHITE" Chat with other VIPs\n");
  837.             strcat(_content, ""VIPCOL_ORANGE"/vipcmds - "VIPCOL_WHITE" View VIP commands\n");
  838.             strcat(_content, ""VIPCOL_ORANGE"/viphelp - "VIPCOL_WHITE" View VIP help panel\n");
  839.             strcat(_content, ""VIPCOL_ORANGE"/vipaccount - "VIPCOL_WHITE" View you're VIP account information\n");
  840.             strcat(_content, ""VIPCOL_ORANGE"/viptag - "VIPCOL_WHITE" Toggle VIP tag on you\n");
  841.             strcat(_content, ""VIPCOL_ORANGE"/vipgunpack - "VIPCOL_WHITE" Spawn VIP gun pack\n");
  842.             strcat(_content, ""VIPCOL_ORANGE"/viptoys - "VIPCOL_WHITE" Manage VIP toys\n");
  843.             strcat(_content, ""VIPCOL_ORANGE"/viptime - "VIPCOL_WHITE" Change the time\n");
  844.             strcat(_content, ""VIPCOL_ORANGE"/vipweather - "VIPCOL_WHITE" Change the weather\n");
  845.             strcat(_content, ""VIPCOL_ORANGE"/weatherids - "VIPCOL_WHITE" View weather IDs\n");
  846.             strcat(_content, ""VIPCOL_ORANGE"/vipbs - "VIPCOL_WHITE" Manage VIP bane spawn\n");
  847.             strcat(_content, ""VIPCOL_ORANGE"/vipvehflip - "VIPCOL_WHITE" Flip up your vehicle");
  848.  
  849.             strcpy(_header, "VIP Level 1 [Silver] Commands", sizeof(_header));
  850.         }
  851.         case EOVIP_VIPLEVEL_2:{
  852.  
  853.             strcat(_content, ""VIPCOL_ORANGE"/isvip - "VIPCOL_WHITE" View if player is a VIP\n");
  854.             strcat(_content, ""VIPCOL_ORANGE"/vips - "VIPCOL_WHITE" View all online VIPs\n");
  855.             strcat(_content, ""VIPCOL_ORANGE"/vchat - "VIPCOL_WHITE" Chat with other VIPs\n");
  856.             strcat(_content, ""VIPCOL_ORANGE"/vipcmds - "VIPCOL_WHITE" View VIP commands\n");
  857.             strcat(_content, ""VIPCOL_ORANGE"/viphelp - "VIPCOL_WHITE" View VIP help panel\n");
  858.             strcat(_content, ""VIPCOL_ORANGE"/vipaccount - "VIPCOL_WHITE" View you're VIP account information\n");
  859.             strcat(_content, ""VIPCOL_ORANGE"/viptag - "VIPCOL_WHITE" Toggle VIP tag on you\n");
  860.             strcat(_content, ""VIPCOL_ORANGE"/vipgunpack - "VIPCOL_WHITE" Spawn VIP gun pack\n");
  861.             strcat(_content, ""VIPCOL_ORANGE"/viptoys - "VIPCOL_WHITE" Manage VIP toys\n");
  862.             strcat(_content, ""VIPCOL_ORANGE"/viptime - "VIPCOL_WHITE" Change the time\n");
  863.             strcat(_content, ""VIPCOL_ORANGE"/vipweather - "VIPCOL_WHITE" Change the weather\n");
  864.             strcat(_content, ""VIPCOL_ORANGE"/weatherids - "VIPCOL_WHITE" View weather IDs\n");
  865.             strcat(_content, ""VIPCOL_ORANGE"/vipbs - "VIPCOL_WHITE" Manage VIP bane spawn\n");
  866.             strcat(_content, ""VIPCOL_ORANGE"/vipvehflip - "VIPCOL_WHITE" Flip up your vehicle\n");
  867.             strcat(_content, ""VIPCOL_ORANGE"/changevehcolor - "VIPCOL_WHITE" Change your vehicle's color\n");
  868.             strcat(_content, ""VIPCOL_ORANGE"/vipnos - "VIPCOL_WHITE" Add nitrous to your vehicle\n");
  869.             strcat(_content, ""VIPCOL_ORANGE"/vipenginefix - "VIPCOL_WHITE" Fix your vehicle's engine\n");
  870.             strcat(_content, ""VIPCOL_ORANGE"/vipbodyfix - "VIPCOL_WHITE" Fix your vehicle's body\n");
  871.             strcat(_content, ""VIPCOL_ORANGE"/vipbasetp - "VIPCOL_WHITE" Teleport to the VIP base");
  872.  
  873.             strcpy(_header, "VIP Level 2 [Gold] Commands", sizeof(_header));
  874.         }
  875.         case EOVIP_VIPLEVEL_3:{
  876.  
  877.             strcat(_content, ""VIPCOL_ORANGE"/isvip - "VIPCOL_WHITE" View if player is a VIP\n");
  878.             strcat(_content, ""VIPCOL_ORANGE"/vips - "VIPCOL_WHITE" View all online VIPs\n");
  879.             strcat(_content, ""VIPCOL_ORANGE"/vchat - "VIPCOL_WHITE" Chat with other VIPs\n");
  880.             strcat(_content, ""VIPCOL_ORANGE"/vipcmds - "VIPCOL_WHITE" View VIP commands\n");
  881.             strcat(_content, ""VIPCOL_ORANGE"/viphelp - "VIPCOL_WHITE" View VIP help panel\n");
  882.             strcat(_content, ""VIPCOL_ORANGE"/vipaccount - "VIPCOL_WHITE" View you're VIP account information\n");
  883.             strcat(_content, ""VIPCOL_ORANGE"/viptag - "VIPCOL_WHITE" Toggle VIP tag on you\n");
  884.             strcat(_content, ""VIPCOL_ORANGE"/vipgunpack - "VIPCOL_WHITE" Spawn VIP gun pack\n");
  885.             strcat(_content, ""VIPCOL_ORANGE"/viptoys - "VIPCOL_WHITE" Manage VIP toys\n");
  886.             strcat(_content, ""VIPCOL_ORANGE"/viptime - "VIPCOL_WHITE" Change the time\n");
  887.             strcat(_content, ""VIPCOL_ORANGE"/vipweather - "VIPCOL_WHITE" Change the weather\n");
  888.             strcat(_content, ""VIPCOL_ORANGE"/weatherids - "VIPCOL_WHITE" View weather IDs\n");
  889.             strcat(_content, ""VIPCOL_ORANGE"/vipbs - "VIPCOL_WHITE" Manage VIP bane spawn\n");
  890.             strcat(_content, ""VIPCOL_ORANGE"/vipvehflip - "VIPCOL_WHITE" Flip up your vehicle\n");
  891.             strcat(_content, ""VIPCOL_ORANGE"/changevehcolor - "VIPCOL_WHITE" Change your vehicle's color\n");
  892.             strcat(_content, ""VIPCOL_ORANGE"/vipnos - "VIPCOL_WHITE" Add nitrous to your vehicle\n");
  893.             strcat(_content, ""VIPCOL_ORANGE"/vipenginefix - "VIPCOL_WHITE" Fix your vehicle's engine\n");
  894.             strcat(_content, ""VIPCOL_ORANGE"/vipbodyfix - "VIPCOL_WHITE" Fix your vehicle's body\n");
  895.             strcat(_content, ""VIPCOL_ORANGE"/vipbasetp - "VIPCOL_WHITE" Teleport to the VIP base\n");
  896.             strcat(_content, ""VIPCOL_ORANGE"/vipgppreset - "VIPCOL_WHITE" Manage your gun pack preset\n");
  897.             strcat(_content, ""VIPCOL_ORANGE"/vipskin - "VIPCOL_WHITE" Change your skin");
  898.  
  899.             strcpy(_header, "VIP Level 3 [Diamond] Commands", sizeof(_header));
  900.         }
  901.         case EOVIP_VIPLEVEL_4:{
  902.  
  903.             strcat(_content, ""VIPCOL_ORANGE"/isvip - "VIPCOL_WHITE" View if player is a VIP\n");
  904.             strcat(_content, ""VIPCOL_ORANGE"/vips - "VIPCOL_WHITE" View all online VIPs\n");
  905.             strcat(_content, ""VIPCOL_ORANGE"/vchat - "VIPCOL_WHITE" Chat with other VIPs\n");
  906.             strcat(_content, ""VIPCOL_ORANGE"/vipcmds - "VIPCOL_WHITE" View VIP commands\n");
  907.             strcat(_content, ""VIPCOL_ORANGE"/viphelp - "VIPCOL_WHITE" View VIP help panel\n");
  908.             strcat(_content, ""VIPCOL_ORANGE"/vipaccount - "VIPCOL_WHITE" View you're VIP account information\n");
  909.             strcat(_content, ""VIPCOL_ORANGE"/viptag - "VIPCOL_WHITE" Toggle VIP tag on you\n");
  910.             strcat(_content, ""VIPCOL_ORANGE"/vipgunpack - "VIPCOL_WHITE" Spawn VIP gun pack\n");
  911.             strcat(_content, ""VIPCOL_ORANGE"/viptoys - "VIPCOL_WHITE" Manage VIP toys\n");
  912.             strcat(_content, ""VIPCOL_ORANGE"/viptime - "VIPCOL_WHITE" Change the time\n");
  913.             strcat(_content, ""VIPCOL_ORANGE"/vipweather - "VIPCOL_WHITE" Change the weather\n");
  914.             strcat(_content, ""VIPCOL_ORANGE"/weatherids - "VIPCOL_WHITE" View weather IDs\n");
  915.             strcat(_content, ""VIPCOL_ORANGE"/vipbs - "VIPCOL_WHITE" Manage VIP bane spawn\n");
  916.             strcat(_content, ""VIPCOL_ORANGE"/vipvehflip - "VIPCOL_WHITE" Flip up your vehicle\n");
  917.             strcat(_content, ""VIPCOL_ORANGE"/changevehcolor - "VIPCOL_WHITE" Change your vehicle's color\n");
  918.             strcat(_content, ""VIPCOL_ORANGE"/vipnos - "VIPCOL_WHITE" Add nitrous to your vehicle\n");
  919.             strcat(_content, ""VIPCOL_ORANGE"/vipenginefix - "VIPCOL_WHITE" Fix your vehicle's engine\n");
  920.             strcat(_content, ""VIPCOL_ORANGE"/vipbodyfix - "VIPCOL_WHITE" Fix your vehicle's body\n");
  921.             strcat(_content, ""VIPCOL_ORANGE"/vipbasetp - "VIPCOL_WHITE" Teleport to the VIP base\n");
  922.             strcat(_content, ""VIPCOL_ORANGE"/vipgppreset - "VIPCOL_WHITE" Manage your gun pack preset\n");
  923.             strcat(_content, ""VIPCOL_ORANGE"/vipskin - "VIPCOL_WHITE" Change your skin");
  924.  
  925.             strcpy(_header, "VIP Level 4 [Platinum] Commands", sizeof(_header));
  926.         }
  927.     }
  928.     ShowPlayerDialog(playerid, DIALOG_MSG, DIALOG_STYLE_LIST, _header, _content, "Close", "");
  929.    
  930.     return 1;
  931. }
  932.  
  933. CMD:vchat(playerid, params[]) {
  934.  
  935.     if(!IsPlayerVIP(playerid)) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You are not a VIP, you cannot use this command!");
  936.     if(isnull(params)){
  937.         SendClientMessage(playerid, VIPCOLOR_GREEN, "[USAGE]: /vchat [message]");
  938.         SendClientMessage(playerid, VIPCOLOR_GREEN, "[FUNCTION]: Chat with other VIPs");
  939.         return 1;
  940.     }
  941.     if(strlen(params) > 79) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: Message given is too long!");
  942.     new message[128];
  943.  
  944.     format(message, sizeof(message), "[VIP CHAT][Level %d]%s: %s", GetPlayerVIPLevel(playerid), GetPlayerNameEx(playerid), params);
  945.     SendClientMessageToAllVIPs(message, VIPCOLOR_BLUE);
  946.     return 1;
  947. }
  948.  
  949. CMD:vipaccount(playerid, params[]) {
  950.     if(!IsPlayerVIP(playerid)) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You are not a VIP, you cannot use this command!");
  951.     new _content[233], _query[186], _daysLeft, _acquired[15], Cache:result;
  952.  
  953.     mysql_format(g_SQL, _query, sizeof(_query), "SELECT DATE(`Timestamp`) AS `Acquired`, TIMESTAMPDIFF(Day, NOW(), DATE_ADD(`Timestamp`, INTERVAL 30 DAY)) AS `daysLeft` FROM `vips` WHERE `Username` = '%e' LIMIT 1", GetPlayerNameEx(playerid));
  954.     result = mysql_query(g_SQL, _query);
  955.     cache_get_value_name(0, "Acquired", _acquired, sizeof(_acquired));
  956.     cache_get_value_name_int(0, "daysLeft", _daysLeft);
  957.     cache_delete(result);
  958.  
  959.     format(_content, sizeof(_content), ""VIPCOL_WHITE"Username: "VIPCOL_YELLOW"%s\n \
  960.         "VIPCOL_WHITE"VIP Level: "VIPCOL_YELLOW"%d\n \
  961.         "VIPCOL_WHITE"Account Type: "VIPCOL_YELLOW"%s\n \
  962.         "VIPCOL_WHITE"VIP Acquired Date: "VIPCOL_YELLOW"%s\n \
  963.         "VIPCOL_WHITE"Days Left: "VIPCOL_YELLOW"%d\n \
  964.         "VIPCOL_WHITE"Spawn in VIP Base: "VIPCOL_YELLOW"%s",
  965.         GetPlayerNameEx(playerid),
  966.         GetPlayerVIPLevel(playerid),
  967.         GetPlayerVIPName(playerid),
  968.         _acquired,
  969.         _daysLeft,
  970.         VIPInfo[playerid][e_VIPBaseSpawn] ? ("YES") : ("NO"));
  971.  
  972.     ShowPlayerDialog(playerid, DIALOG_MSG, DIALOG_STYLE_MSGBOX, "VIP information", _content, "Close", "");
  973.     return 1;
  974. }
  975.  
  976. CMD:viphelp(playerid, params[]) {
  977.     if(!IsPlayerVIP(playerid)) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You are not a VIP, you cannot use this command!");
  978.        
  979.     switch(GetPlayerVIPLevel(playerid)){
  980.  
  981.         case EOVIP_VIPLEVEL_1:{
  982.  
  983.             ShowPlayerDialog(playerid, DIALOG_MSG, DIALOG_STYLE_MSGBOX, "[Silver] VIP Help", "Features:\n\n* You can change up to 2 different weather types.", "Close","");
  984.         }
  985.         case EOVIP_VIPLEVEL_2:{
  986.  
  987.             ShowPlayerDialog(playerid, DIALOG_MSG, DIALOG_STYLE_MSGBOX, "[GOLD] VIP Help", "Features:\n\n* /vipgunpack Gives you 2 weapons.\n\n* You can change up to 3 different weather types.","Close","");
  988.         }
  989.         case EOVIP_VIPLEVEL_3:{
  990.  
  991.             ShowPlayerDialog(playerid, DIALOG_MSG, DIALOG_STYLE_MSGBOX, "[DIAMOND] VIP Help", "Features:\n\n* Spawn with 40% of Armour.\n\n* /vipgunpack Gives you 3 weapons.\n\n* You can change up to 4 different weather types.\n\n* You choose between 5 skin via /vipskin.","Close","");
  992.         }
  993.         case EOVIP_VIPLEVEL_4:{
  994.  
  995.             ShowPlayerDialog(playerid, DIALOG_MSG, DIALOG_STYLE_MSGBOX, "[PLATINUM] VIP Help", "Features:\n\n* Spawn with 90% of Armour.\n\n* /vipgunpack Gives you 4 weapons.\n\n* You can change up to 6 different weather types.\n\n* You choose between 10 skin via /vipskin.","Close","");
  996.         }
  997.     }
  998.  
  999.     return 1;
  1000. }
  1001.  
  1002. CMD:viptag(playerid) {
  1003.  
  1004.     if(!IsPlayerVIP(playerid)) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You are not a VIP, you cannot use this command!");  
  1005.     if(!IsPlayerVIPTagActive(playerid))
  1006.         TogglePlayerVIPTag(playerid, true);
  1007.     else
  1008.         TogglePlayerVIPTag(playerid, false);
  1009.  
  1010.     return 1;
  1011. }
  1012.  
  1013. CMD:vipgunpack(playerid) {
  1014.     if(!IsPlayerVIP(playerid)) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You are not a VIP, you cannot use this command!");
  1015.     if(gettime() - VIPInfo[playerid][e_VIPGunPackCoolDown] < 900) SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You have just used that command, please wait for a 15 mins");
  1016.     if(!VIPInfo[playerid][e_VIPGunPackPreset]){
  1017.         switch(GetPlayerVIPLevel(playerid)){
  1018.  
  1019.             case EOVIP_VIPLEVEL_2:{
  1020.                 GivePlayerWeapon(playerid, 22, 50);
  1021.                 GivePlayerWeapon(playerid, 25, 30);
  1022.             }
  1023.             case EOVIP_VIPLEVEL_3:{
  1024.                 GivePlayerWeapon(playerid, 4, 1);
  1025.                 GivePlayerWeapon(playerid, 24, 10);
  1026.                 GivePlayerWeapon(playerid, 27, 50);
  1027.             }
  1028.             case EOVIP_VIPLEVEL_4:{
  1029.                 GivePlayerWeapon(playerid, 9, 1);
  1030.                 GivePlayerWeapon(playerid, 24, 25);
  1031.                 GivePlayerWeapon(playerid, 26, 30);
  1032.                 GivePlayerWeapon(playerid, 31, 100);
  1033.             }
  1034.         }
  1035.         SendClientMessage(playerid, VIPCOLOR_ORANGE, "[EO_VIP]: "VIPCOL_YELLOW"VIP Weapon pack given");
  1036.         SendClientMessage(playerid, VIPCOLOR_ORANGE, "[EO_VIP]: "VIPCOL_YELLOW"You have loaded the default preset of guns, you can create your customized one via "VIPCOL_WHITE"/vipgppreset");
  1037.  
  1038.     }
  1039.     else{
  1040.  
  1041.         SendClientMessage(playerid, VIPCOLOR_ORANGE, "[EO_VIP]: "VIPCOL_YELLOW"You have loaded customized preset of guns, you can manage it anytime via "VIPCOL_WHITE"/vipgppreset");
  1042.        
  1043.         if(VIPInfo[playerid][e_VIPGPMelee] != -1)
  1044.             GivePlayerWeapon(playerid, VIPInfo[playerid][e_VIPGPMelee], 1);
  1045.         if(VIPInfo[playerid][e_VIPGPPistol] != -1)
  1046.             GivePlayerWeapon(playerid, VIPInfo[playerid][e_VIPGPPistol], 25);
  1047.         if(VIPInfo[playerid][e_VIPGPShotgun] != -1)
  1048.             GivePlayerWeapon(playerid, VIPInfo[playerid][e_VIPGPShotgun], 30);
  1049.         if(VIPInfo[playerid][e_VIPGPSubMachine] != -1)
  1050.             GivePlayerWeapon(playerid, VIPInfo[playerid][e_VIPGPSubMachine], 40);
  1051.         if(VIPInfo[playerid][e_VIPGPAssault] != -1)
  1052.             GivePlayerWeapon(playerid, VIPInfo[playerid][e_VIPGPAssault], 100);
  1053.         if(VIPInfo[playerid][e_VIPGPRifle] != -1)
  1054.             GivePlayerWeapon(playerid, VIPInfo[playerid][e_VIPGPRifle], 15);
  1055.  
  1056.     }
  1057.  
  1058.     VIPInfo[playerid][e_VIPGunPackCoolDown] = gettime();
  1059.  
  1060.     return 1;
  1061. }
  1062.  
  1063. CMD:viptoys(playerid){
  1064.    
  1065.     if(!IsPlayerVIP(playerid)) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You are not a VIP, you cannot use this command!");
  1066.     new _content[350];
  1067.    
  1068.     for(new i; i<MAX_PLAYER_ATTACHED_OBJECTS; i++){
  1069.         format(_content, sizeof(_content), "%sSlot %i"VIPCOL_WHITE"\t\t\t%s\n" ,_content, i+1, IsPlayerAttachedObjectSlotUsed(playerid, i) ? (""VIPCOL_RED"[USED]") : (""VIPCOL_GREEN"[EMPTY]"));
  1070.     }
  1071.    
  1072.     SendClientMessage(playerid, VIPCOLOR_BLUE, "[EO_VIP] "VIPCOL_BLUE"Please select a slot to insert/manage toys in!");
  1073.     ShowPlayerDialog(playerid, DIALOG_TOYS, DIALOG_STYLE_LIST, "VIP Toys", _content, "Select", "Cancel");
  1074.  
  1075.     return 1;
  1076. }
  1077.  
  1078. CMD:viptime(playerid, params[]){
  1079.    
  1080.     new _hour, _minute, str[70];
  1081.     if(!IsPlayerVIP(playerid)) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You are not a VIP, you cannot use this command!");
  1082.     if(sscanf(params, "ii", _hour, _minute)){
  1083.         SendClientMessage(playerid, VIPCOLOR_GREEN ,"[USAGE]: /viptime [Hour] [Minute]");
  1084.         SendClientMessage(playerid, VIPCOLOR_GREEN ,"[FUNCTION]: Change your time");
  1085.         return 1;  
  1086.     }
  1087.     if(_hour > 23 || _hour < 0 || _minute > 59 || _minute < 0) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You have entered an invalid hour/minute value!");
  1088.    
  1089.     format(str, sizeof(str), "[EO_VIP]: You have set your time to "VIPCOL_WHITE"%02d"VIPCOL_ORANGE":"VIPCOL_WHITE"%02d", _hour, _minute);
  1090.     SendClientMessage(playerid, VIPCOLOR_ORANGE, str);
  1091.     SetPlayerTime(playerid, _hour, _minute);
  1092.  
  1093.     return 1;
  1094. }
  1095.  
  1096. CMD:vipbs(playerid){
  1097.    
  1098.     if(!IsPlayerVIP(playerid)) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You are not a VIP, you cannot use this command!");
  1099.        
  1100.     if(!VIPInfo[playerid][e_VIPBaseSpawn])
  1101.         ShowPlayerDialog(playerid, DIALOG_VIPBASESPAWN, DIALOG_STYLE_MSGBOX, "VIP Base Spawn Option", "Do you want to always spawn in VIP Base?\n\nYou can change this this anytime with "VIPCOL_WHITE"/vipbs", "Yes", "No");
  1102.  
  1103.     else
  1104.         ShowPlayerDialog(playerid, DIALOG_VIPBASESPAWN, DIALOG_STYLE_MSGBOX, "VIP Base Spawn Option", "Do you want to disable Spawning in VIP base option?\n\nYou can change this this anytime with "VIPCOL_WHITE"/vipbs", "Yes", "No");
  1105.  
  1106.     return 1;
  1107. }
  1108.  
  1109. CMD:weatherids(playerid) {
  1110.    
  1111.     if(!IsPlayerVIP(playerid)) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You are not a VIP, you cannot use this command!");
  1112.     switch(GetPlayerVIPLevel(playerid)){
  1113.  
  1114.         case EOVIP_VIPLEVEL_1: ShowPlayerDialog(playerid, DIALOG_MSG, DIALOG_STYLE_MSGBOX, "Weather IDs", ""VIPCOL_YELLOW"1- "VIPCOL_WHITE"Sunny\n\n"VIPCOL_YELLOW"2- "VIPCOL_WHITE"Extra Sunny Smog", "Close", "");
  1115.         case EOVIP_VIPLEVEL_2: ShowPlayerDialog(playerid, DIALOG_MSG, DIALOG_STYLE_MSGBOX, "Weather IDs", ""VIPCOL_YELLOW"1- "VIPCOL_WHITE"Sunny\n\n"VIPCOL_YELLOW"2- "VIPCOL_WHITE"Extra Sunny Smog\n\n"VIPCOL_YELLOW"3- "VIPCOL_WHITE"Sunny Smog", "Close", "");
  1116.         case EOVIP_VIPLEVEL_3: ShowPlayerDialog(playerid, DIALOG_MSG, DIALOG_STYLE_MSGBOX, "Weather IDs", ""VIPCOL_YELLOW"1- "VIPCOL_WHITE"Sunny\n\n"VIPCOL_YELLOW"2- "VIPCOL_WHITE"Extra Sunny Smog\n\n"VIPCOL_YELLOW"3- "VIPCOL_WHITE"Sunny Smog\n\n"VIPCOL_YELLOW"4- "VIPCOL_WHITE"Cloudy", "Close", "");
  1117.         case EOVIP_VIPLEVEL_4: ShowPlayerDialog(playerid, DIALOG_MSG, DIALOG_STYLE_MSGBOX, "Weather IDs", ""VIPCOL_YELLOW"1- "VIPCOL_WHITE"Sunny\n\n"VIPCOL_YELLOW"2- "VIPCOL_WHITE"Extra Sunny Smog\n\n"VIPCOL_YELLOW"3- "VIPCOL_WHITE"Sunny Smog\n\n"VIPCOL_YELLOW"4- "VIPCOL_WHITE"Cloudy\n\n"VIPCOL_YELLOW"5- "VIPCOL_WHITE"Summer Sun\n\n"VIPCOL_YELLOW"6- "VIPCOL_WHITE"Summer Extra Sunny", "Close", "");
  1118.     }
  1119.  
  1120.     return 1;
  1121. }
  1122.  
  1123. CMD:vipweather(playerid, params[]) {
  1124.  
  1125.     new wid, str[65];
  1126.     if(!IsPlayerVIP(playerid)) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You are not a VIP, you cannot use this command!");
  1127.     if(sscanf(params, "i", wid)){
  1128.         SendClientMessage(playerid, VIPCOLOR_GREEN ,"[USAGE]: /vipweather [Weather ID] - use /weatherids to view available weather IDs");
  1129.         SendClientMessage(playerid, VIPCOLOR_GREEN ,"[FUNCTION]: Change your weather");
  1130.         return 1;
  1131.     }
  1132.     switch(GetPlayerVIPLevel(playerid)){
  1133.         case EOVIP_VIPLEVEL_1:{
  1134.             if(wid > 2 || wid < 1) return SendClientMessage(playerid, VIPCOLOR_RED,"[ERROR]: You have entered an invalid weather ID, available Weather IDs are {92979C}[1-2]");
  1135.             format(str, sizeof(str), "[EO_VIP]: "VIPCOL_YELLOW"You have set the weather ID to "VIPCOL_WHITE"%i", wid);
  1136.             SendClientMessage(playerid, VIPCOLOR_ORANGE,str);
  1137.             SetPlayerWeather(playerid, wid);
  1138.         }
  1139.         case EOVIP_VIPLEVEL_2:{
  1140.             if(wid > 3 || wid < 1) return SendClientMessage(playerid, VIPCOLOR_RED ,"[ERROR]: You have entered an invalid weather ID, available Weather IDs are {92979C}[1-3]");
  1141.             format(str, sizeof(str), "[EO_VIP]: "VIPCOL_YELLOW"You have set the weather ID to "VIPCOL_WHITE"%i", wid);
  1142.             SendClientMessage(playerid, VIPCOLOR_ORANGE ,str);
  1143.             SetPlayerWeather(playerid, wid);
  1144.         }
  1145.         case EOVIP_VIPLEVEL_3:{
  1146.             if(wid > 4 || wid < 1) return SendClientMessage(playerid, VIPCOLOR_RED,"[ERROR]: You have entered an invalid weather ID, available Weather IDs are {92979C}[1-4]");
  1147.             format(str, sizeof(str), "[EO_VIP]: "VIPCOL_YELLOW"You have set the weather ID to "VIPCOL_WHITE"%i", wid);
  1148.             SendClientMessage(playerid, VIPCOLOR_ORANGE,str);
  1149.             SetPlayerWeather(playerid, wid);
  1150.         }
  1151.         case EOVIP_VIPLEVEL_4:{
  1152.             if(wid > 6 || wid < 1) return SendClientMessage(playerid, VIPCOLOR_RED ,"[ERROR]: You have entered an invalid weather ID, available Weather IDs are {92979C}[1-6]");
  1153.             format(str, sizeof(str), "[EO_VIP]: "VIPCOL_YELLOW"You have set the weather ID to "VIPCOL_WHITE"%i", wid);
  1154.             SendClientMessage(playerid, VIPCOLOR_ORANGE ,str);
  1155.             SetPlayerWeather(playerid, wid);
  1156.  
  1157.         }
  1158.     }
  1159.  
  1160.     return 1;
  1161. }
  1162.  
  1163. CMD:vipvehflip(playerid) {
  1164.    
  1165.     if(!IsPlayerVIP(playerid)) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You are not a VIP, you cannot use this command!");
  1166.     if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You need to be in a vehicle to use this command!");
  1167.    
  1168.     new currentveh = GetPlayerVehicleID(playerid), Float:_angle;
  1169.     GetVehicleZAngle(currentveh, _angle);
  1170.     SetVehicleZAngle(currentveh, _angle);
  1171.     SendClientMessage(playerid, VIPCOLOR_ORANGE, "[EO_VIP]: Your vehicle has been flipped!");
  1172.  
  1173.     return 1;
  1174. }
  1175.  
  1176.  
  1177. //VIP Level 2 Commands
  1178. CMD:changevehcolor(playerid, params[]) {
  1179.    
  1180.     if(!IsPlayerVIP(playerid)) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You are not a VIP, you cannot use this command!");
  1181.     if(GetPlayerVIPLevel(playerid) < 2) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You need to have VIP level 2 or above to use this command!");
  1182.     new str[128], color1, color2;
  1183.     if(sscanf(params, "ii", color1, color2)){
  1184.         SendClientMessage(playerid, VIPCOLOR_GREEN, "[USAGE]: /changevehcolor [color 1] [color 2]");
  1185.         SendClientMessage(playerid, VIPCOLOR_GREEN, "[FUNCTION]: Change a vehicle's color");
  1186.         return 1;
  1187.     }
  1188.     if(color1 > 255 || color1 < 0 || color2 > 255 || color2 < 0) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You have entered an invalid Color ID!");
  1189.     if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You need to be in a vehicle to use this command!");
  1190.    
  1191.     switch(GetPlayerVIPLevel(playerid)){
  1192.  
  1193.         case EOVIP_VIPLEVEL_2:{
  1194.             if(GetPlayerMoney(playerid) < 1000) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You can't afford changing this vehicle's color");
  1195.             GivePlayerMoney(playerid, -1000);
  1196.             format(str, sizeof(str), "[EO_VIP]: "VIPCOL_YELLOW"Vehicle color changed to ( "VIPCOL_YELLOW"%i "VIPCOL_WHITE", "VIPCOL_YELLOW"%i "VIPCOL_WHITE"), you've been charged with "VIPCOL_YELLOW"$1000", color1, color2);
  1197.             SendClientMessage(playerid, VIPCOLOR_ORANGE, str);
  1198.             ChangeVehicleColor(GetPlayerVehicleID(playerid), color1, color2);
  1199.         }
  1200.         case EOVIP_VIPLEVEL_3:{
  1201.             if(GetPlayerMoney(playerid) < 500) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You can't afford changing this vehicle's color");
  1202.             GivePlayerMoney(playerid, -500);
  1203.             format(str, sizeof(str), "[EO_VIP]: "VIPCOL_YELLOW"Vehicle color changed to ( "VIPCOL_YELLOW"%i "VIPCOL_WHITE", "VIPCOL_YELLOW"%i "VIPCOL_WHITE"), you've been charged with "VIPCOL_YELLOW"$500", color1, color2);
  1204.             SendClientMessage(playerid, VIPCOLOR_ORANGE, str);
  1205.             ChangeVehicleColor(GetPlayerVehicleID(playerid), color1, color2);
  1206.         }
  1207.         case EOVIP_VIPLEVEL_4:{
  1208.             if(GetPlayerMoney(playerid) < 250) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You can't afford changing this vehicle's color");
  1209.             GivePlayerMoney(playerid, -250);
  1210.             format(str, sizeof(str), "[EO_VIP]: "VIPCOL_YELLOW"Vehicle color changed to ( "VIPCOL_YELLOW"%i "VIPCOL_WHITE", "VIPCOL_YELLOW"%i "VIPCOL_WHITE"), you've been charged with "VIPCOL_YELLOW"$250", color1, color2);
  1211.             SendClientMessage(playerid, VIPCOLOR_ORANGE, str);
  1212.             ChangeVehicleColor(GetPlayerVehicleID(playerid), color1, color2);
  1213.         }
  1214.     }
  1215.  
  1216.     return 1;
  1217. }
  1218.  
  1219. CMD:vipnos(playerid) {
  1220.     if(!IsPlayerVIP(playerid)) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You are not a VIP, you cannot use this command!");
  1221.     if(GetPlayerVIPLevel(playerid) < 2) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You need to have VIP level 2 or above to use this command!");
  1222.     if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You need to be in a vehicle to use this command!");  
  1223.    
  1224.     switch(GetPlayerVIPLevel(playerid)){
  1225.         case EOVIP_VIPLEVEL_2:{
  1226.             if(GetPlayerMoney(playerid) < 1000) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You can't afford to buy this");
  1227.             GivePlayerMoney(playerid, -1000);
  1228.             SendClientMessage(playerid, VIPCOLOR_ORANGE, "[ERROR]: "VIPCOL_YELLOW"You have added nitrous to this vehicle, you've been charged with "VIPCOL_WHITE"$1000");
  1229.         }
  1230.         case EOVIP_VIPLEVEL_3:{
  1231.             if(GetPlayerMoney(playerid) < 500) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You can't afford to buy this");
  1232.             GivePlayerMoney(playerid, -500);
  1233.             SendClientMessage(playerid, VIPCOLOR_ORANGE, "[EO_VIP]: "VIPCOL_YELLOW"You have added nitrous to this vehicle, you've been charged with "VIPCOL_WHITE"$500");
  1234.         }
  1235.         case EOVIP_VIPLEVEL_4:{
  1236.             if(GetPlayerMoney(playerid) < 150) return  SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You can't afford to buy this");
  1237.             GivePlayerMoney(playerid, -150);
  1238.             SendClientMessage(playerid, VIPCOLOR_ORANGE, "[EO_VIP]: "VIPCOL_YELLOW"You have added nitrous to this vehicle, you've been charged with "VIPCOL_WHITE"$150");
  1239.         }
  1240.     }
  1241.     AddVehicleComponent(GetPlayerVehicleID(playerid), 1010);
  1242.     PlayerPlaySound(playerid, 1133, 0.0, 0.0, 10.0);
  1243.     return 1;
  1244. }
  1245.  
  1246.  
  1247. CMD:vipenginefix(playerid){
  1248.  
  1249.     if(!IsPlayerVIP(playerid)) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You are not a VIP, you cannot use this command!");
  1250.     if(GetPlayerVIPLevel(playerid) < 2) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You need to have VIP level 2 or above to use this command!");
  1251.     if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You need to be in a vehicle to use this command!");  
  1252.    
  1253.     switch(GetPlayerVIPLevel(playerid)){
  1254.         case EOVIP_VIPLEVEL_3:{
  1255.             if(GetPlayerMoney(playerid) < 600)
  1256.             GivePlayerMoney(playerid, -600);
  1257.             SendClientMessage(playerid, VIPCOLOR_ORANGE, "[EO_VIP]: "VIPCOL_YELLOW"vehicle fixed, you've been charged with "VIPCOL_WHITE"$600");
  1258.         }
  1259.         case EOVIP_VIPLEVEL_4:{
  1260.             if(GetPlayerMoney(playerid) < 150)
  1261.             GivePlayerMoney(playerid, -150);
  1262.             SendClientMessage(playerid, VIPCOLOR_ORANGE, "[EO_VIP]: "VIPCOL_YELLOW"vehicle fixed, you've been charged with "VIPCOL_WHITE"$150");
  1263.         }
  1264.     }
  1265.     SetVehicleHealth(GetPlayerVehicleID(playerid), 1000);
  1266.  
  1267.     return 1;
  1268. }
  1269.  
  1270. CMD:vipbodyfix(playerid) {
  1271.    
  1272.     if(!IsPlayerVIP(playerid)) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You are not a VIP, you cannot use this command!");
  1273.     if(GetPlayerVIPLevel(playerid) < 2) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You need to have VIP level 2 or above to use this command!");
  1274.     if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You need to be in a vehicle to use this command!");
  1275.     if(GetPlayerMoney(playerid) < 450) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You can't afford this!");
  1276.  
  1277.     RepairVehicle(GetPlayerVehicleID(playerid));
  1278.     GivePlayerMoney(playerid, -450);
  1279.     SendClientMessage(playerid, VIPCOLOR_ORANGE, "[EO_VIP]: "VIPCOL_YELLOW"vehicle fixed, you've been charged with "VIPCOL_WHITE"$200");
  1280.     PlayerPlaySound(playerid, 1133, 0.0, 0.0, 10.0);
  1281.  
  1282.     return 1;
  1283. }
  1284.  
  1285. CMD:vipbasetp(playerid) {
  1286.    
  1287.     if(!IsPlayerVIP(playerid)) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You are not a VIP, you cannot use this command!");
  1288.     if(GetPlayerVIPLevel(playerid) < 2) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You need to have VIP level 2 or above to use this command!");
  1289.     if(gettime() - VIPInfo[playerid][e_VIPBaseTeleportCoolDown] < 600) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You cannot use this command now, wait for 10 minutes!");
  1290.  
  1291.     VIPInfo[playerid][e_VIPBaseTeleportCoolDown] = gettime();
  1292.     TogglePlayerControllable(playerid, false);
  1293.     SetPlayerPos(playerid, 3024.9241, -692.5798, 3.3770);
  1294.     GameTextForPlayer(playerid, "~y~VIP Base", 2000, 1);
  1295.     SendClientMessage(playerid, VIPCOLOR_ORANGE, "[EO_VIP]: You have teleported to the VIP base!");
  1296.     SendClientMessage(playerid, VIPCOLOR_ORANGE, "[EO_VIP]: You have been temporarily frozen, please wait for the environment to lead!");
  1297.     defer VIPBaseTeleportTimer(playerid);
  1298.  
  1299.     return 1;
  1300. }
  1301.  
  1302.  
  1303. //VIP Level 3 Commands
  1304. CMD:vipgppreset(playerid){
  1305.    
  1306.     if(!IsPlayerVIP(playerid)) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You are not a VIP, you cannot use this command!");
  1307.     if(GetPlayerVIPLevel(playerid) < 3) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You need to have VIP level 3 or above to use this command!");
  1308.    
  1309.     if(!VIPInfo[playerid][e_VIPGunPackPreset])
  1310.         ShowPlayerDialog(playerid, DIALOG_VIPGPPRESETCREATE, DIALOG_STYLE_MSGBOX, "VIP GunPack Preset Option", "Here you can make a new Gunpack set to spawn via "VIPCOL_WHITE"/vipgppreset\n\n"VIPCOL_YELLOW"You Don't have a GunPack Preset yet, do you want to create one?", "Yes", "No");
  1311.     else{
  1312.         ShowPlayerDialog(playerid, DIALOG_VIPGPPRESETEDIT, DIALOG_STYLE_LIST, "VIP GunPack Preset Option",
  1313.         "Edit Gunpack Preset\n\
  1314.         Delete Gunpack Preset\n",
  1315.         "Select", "Cancel");
  1316.     }
  1317.  
  1318.     return 1;
  1319. }
  1320.  
  1321. CMD:vipskin(playerid) {
  1322.  
  1323.     if(!IsPlayerVIP(playerid)) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You are not a VIP, you cannot use this command!");
  1324.     if(GetPlayerVIPLevel(playerid) < 3) return SendClientMessage(playerid, VIPCOLOR_RED, "[ERROR]: You need to have VIP level 3 or above to use this command!");
  1325.     switch(GetPlayerVIPLevel(playerid)){
  1326.  
  1327.         case EOVIP_VIPLEVEL_3:{
  1328.             ShowPlayerDialog(playerid, DIALOG_VIPSKINS, DIALOG_STYLE_LIST, "VIP SKINS SELECTION "VIPCOL_YELLOW"[DIAMOND]",
  1329.             "Maccer\n\
  1330.             Andre\n\
  1331.             Rich Woman\n\
  1332.             CJ\n\
  1333.             Stunner\n",
  1334.             "Select", "Cancel");
  1335.         }
  1336.         case EOVIP_VIPLEVEL_4:{
  1337.             ShowPlayerDialog(playerid, DIALOG_VIPSKINS, DIALOG_STYLE_LIST, "VIP SKINS SELECTION "VIPCOL_YELLOW"[PLATINUM]",
  1338.             "Maccer\n\
  1339.             Andre\n\
  1340.             Rich Woman\n\
  1341.             CJ\n\
  1342.             Stunner\n\
  1343.             Ryder\n\
  1344.             Triad Boss\n\
  1345.             Big Smoke\n\
  1346.             Cluckin' bell worker\n\
  1347.             Michelle\n",
  1348.             "Select", "Cancel");
  1349.         }
  1350.     }
  1351.  
  1352.     return 1;
  1353. }
  1354.  
  1355.  
  1356. //VIP Level 4 Commands
  1357.  
  1358.  
  1359.  
  1360. //**Timers---------------------------------------------------------------------------------------------------------------------------------
  1361. //-VIP un-Freeze
  1362. timer VIPBaseTeleportTimer[2000](playerid){
  1363.     TogglePlayerControllable(playerid, true);
  1364.     SendClientMessage(playerid, VIPCOLOR_ORANGE, "[EO_VIP]: Thanks for your patience, you can now move!");
  1365. }
  1366. //-VIP Advertisement
  1367. task VIPAdvertisementTimer[1800000](){
  1368.     foreach(new i : VIPS){
  1369.         if(!IsPlayerVIP(i))
  1370.             SendClientMessage(i, VIPCOLOR_GREEN, "[EO_VIP]: "VIPCOL_WHITE"Buy one of four different VIP Levels and gain countless awesome features!");
  1371.     }
  1372. }
  1373.  
  1374. //-VIP Messages
  1375. task VIPMessages[900000](){
  1376.  
  1377.     SendClientMessageToAllVIPs(VIPTips[random(sizeof(VIPTips))], -1);
  1378.  
  1379. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement