Advertisement
Angga1sT

jV.I.P

Oct 15th, 2013
146
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 24.76 KB | None | 0 0
  1. /*
  2. Hello guys, this is VIP system created by Jarnu..Called jVIP System.
  3. Don't remove the credits..
  4.  
  5. Version 0.2 is OUT!
  6.  
  7. ChangeLog-
  8.  
  9. -3 more commands
  10. -/vweaps - VIP weapons Level 2
  11. -/vboat - VIP Boat Level 2
  12. -/vsay - Talking with VIP status.. ex: VIP Jarnu (0): hello! :D
  13. -Anti-Vehicle spam Fixed.
  14.  
  15. Version 0.3!!
  16.  
  17. -Converted saving system to Y_INI.
  18. */
  19. #define FILTERSCRIPT
  20.  
  21. #include <a_samp>
  22. #include <YSI/y_ini>
  23. #include <zcmd>
  24. #include <sscanf>
  25. //=================Credits==================DO NOT REMOVE=======================
  26. #define AUTHOR "Jarnu"
  27. #define VERSION "0.2"
  28. //============PlayerInfo enumerator=============================================
  29. enum pInfo
  30. {
  31. pVIP
  32. };
  33. //==============================forwards========================================
  34. forward EnablevBonus(playerid);
  35. forward EnablevHeal(playerid);
  36. forward loadvip_Account(playerid, name[], value[]);
  37. //==============================================================================
  38.  
  39. #define MAX_VIPL 3 // Max VIP level.. can be editted
  40. #define DIALOGCMDS 250 //VMENU dialogid
  41. //===========Colors=============================================================
  42. #define RED 0xFF0000FF
  43. #define PURPLE 0xC2A2DAAA
  44. #define GREEN 0x15FF00AA
  45. #define LIGHTGREEN 0x78FF6CAA
  46. #define BLUE 0x0015FFAA
  47. //========Extra colors==========================================================
  48. #define cred "{E10000}"
  49. #define corange "{FF7E19}"
  50. #define cyellow "{FF9E00}"
  51. #define cblue "{0087FF}"
  52. #define cwhite "{FFFFFF}"
  53. #define cgreen "{00FF28}"
  54. #define cgrey "{969696}"
  55. //==============================================================================
  56. //=============================Variables========================================
  57. new Enablevheal[MAX_PLAYERS]; //-----Disable/Enable vheal command to avoid abuse
  58. new Enablevbonus[MAX_PLAYERS]; //---Disable/Enable vbonus command to avoid abuse
  59. new HasSpawnedCar[MAX_PLAYERS]; //---Will be used to remove the vehicles spawned
  60. //==============================Timers==========================================
  61. enum tInfo
  62. {
  63. vHeal,
  64. vBonus
  65. };
  66. new timer[MAX_PLAYERS][tInfo]; //Time variable----------------------------------
  67. //---------removing warning loose indentation-----------------------------------
  68. #pragma tabsize 0
  69. //------------------------------------------------------------------------------
  70. //============PlayerInfo var===========
  71. new PlayerInfo[MAX_PLAYERS][pInfo];
  72. //=====================================
  73. //=============================STOCKS===========================================
  74. stock PlayerName(playerid)
  75. {
  76. new name[MAX_PLAYER_NAME];
  77. GetPlayerName(playerid, name, sizeof(name));
  78. return name;
  79. }
  80. //===================Account====================================================
  81. stock getACC(playerid)
  82. {
  83. new file[200];
  84. format(file, sizeof(file),"jVIP/%s.ini",PlayerName(playerid));
  85. return file;
  86. }
  87. //============Vip Ranks Can be editted==========================================
  88. stock Rank(playerid)
  89. {
  90. new str[156];
  91. if(PlayerInfo[playerid][pVIP] == 0) str = ("Player");
  92. else if(PlayerInfo[playerid][pVIP] == 1) str = ("Donator Level 1");
  93. else if(PlayerInfo[playerid][pVIP] == 2) str = ("Donator Level 2");
  94. else if(PlayerInfo[playerid][pVIP] == 3) str = ("Donator Level 3");
  95. return str;
  96. }
  97. stock MakeACC(playerid)
  98. {
  99. if(!fexist(getACC(playerid)))
  100. {
  101. new string[125];
  102. format(string, sizeof(string),"%s",Rank(playerid));
  103. new INI:acc = INI_Open(getACC(playerid));
  104. INI_SetTag(acc,"Account");
  105. INI_WriteInt(acc,"Level",0);
  106. INI_WriteString(acc,"Rank",string);
  107. INI_Close(acc);
  108. PlayerInfo[playerid][pVIP] = 0;
  109. }
  110. return 1;
  111. }
  112. //===========Saving the VIP level===============================================
  113. stock SaveLevel(playerid)
  114. {
  115. new INI:file = INI_Open(getACC(playerid));
  116. INI_SetTag(file,"Account");
  117. INI_WriteInt(file,"Level",PlayerInfo[playerid][pVIP]);
  118. INI_WriteString(file,"Rank",Rank(playerid));
  119. INI_Close(file);
  120. SendClientMessage(playerid, LIGHTGREEN,"VIP Level saved in accounts!");
  121. return 1;
  122. }
  123. //=======================Opening the file=======================================
  124. public loadvip_Account(playerid, name[], value[])
  125. {
  126. INI_Int("Level", PlayerInfo[playerid][pVIP]);
  127. return 1;
  128. }
  129. public OnFilterScriptInit()
  130. {
  131. print("\n--------------------------------------");
  132. printf("jVIP V %s by %s has been loaded..", VERSION, AUTHOR); //DO NOT REMOVE CREDITS
  133. print("--------------------------------------\n");
  134. return 1;
  135. }
  136. //==============================================================================
  137. public OnFilterScriptExit()
  138. {
  139. print("\n--------------------------------------");
  140. printf("jVIP V %s by %s has been unloaded..", VERSION, AUTHOR); //DO NOT REMOVE CREDITS
  141. print("--------------------------------------\n");
  142. return 1;
  143. }
  144. //==============================================================================
  145. public OnPlayerConnect(playerid)
  146. {
  147. PlayerInfo[playerid][pVIP] = 0; //Setting the VIP level 0 on player connect-
  148. Enablevheal[playerid] = 1; //Enabling the /vheal command on player connect--
  149. Enablevbonus[playerid] = 1; //Enabling the /vbonus command on player connect
  150. HasSpawnedCar[playerid] = 0;//-Setting the value to 0
  151. //-------------Checking and creating the player account in database---------
  152. if(fexist(getACC(playerid)))
  153. {
  154. INI_ParseFile(getACC(playerid),"loadvip_%s", .bExtra = true, .extra = playerid);
  155. new string[256];
  156. format(string, sizeof(string),"Welcome %s Your VIP level has been successfully loaded [VIP Level: %d][VIP Rank: %s]",PlayerName(playerid),PlayerInfo[playerid][pVIP],Rank(playerid));
  157. print("\n----------------------------------------------------------");
  158. printf("_____[%s] Very Important Player Connected_____", PlayerName(playerid));
  159. print("------------------------------------------------------------\n");
  160. SendClientMessage(playerid, GREEN,string);
  161. }
  162. else
  163. {
  164. MakeACC(playerid); //Creating the account if the account doesn't exists
  165. }
  166. return 1;
  167. }
  168. //Saving PLayer Stats on his disconnect=========================================
  169. public OnPlayerDisconnect(playerid, reason)
  170. {
  171. SaveLevel(playerid);
  172. return 1;
  173. }
  174. //========================================CMDS==================================
  175. CMD:vcmds(playerid, params[])
  176. {
  177. if(PlayerInfo[playerid][pVIP] >= 1)
  178. {
  179. new lstring[2566];
  180. strcat(lstring,""cgreen"VIP Level 1:\n\n"cwhite"/vbike - to spawn nrg\n/vcar - to spawn vip car\n/vheli - to spawn maverick\n/vheal - to heal yourself\n\n\n");
  181. strcat(lstring,""corange"VIP Level 2:\n"cwhite"/vweaps - to get vip weapons\n/vboat - to spawn vip boat\n/vmenu - to access vip menu\n/vplane - to spawn stunt plane for yourself\n/vpbonus - to heal and give 1 ammo of RPG to nearest players\n/vnos to activate nitros\naccess to level 1 vip commands\n\n\n");
  182. strcat(lstring,""cblue"VIP Level 3:\n"cwhite"access to all vip commands\n/vfix - to fix your vehicle\n/vtime - to set your time\n/vskin - to set your skin\n/vjetpack - to spawn jetpack for yourself\n/varmour - to armour yourself\n");
  183. ShowPlayerDialog(playerid, 222,DIALOG_STYLE_MSGBOX,"VIP Commands",lstring,"Close","");
  184. }
  185. else return SendClientMessage(playerid, RED,"[ERROR]: You need to be vip level 1 to use this command!");
  186. return 1;
  187. }
  188. //==========================VIP Level 1 Commands================================
  189. //==============================================================================
  190. CMD:vbike(playerid, params[])
  191. {
  192. if(PlayerInfo[playerid][pVIP] >= 1)
  193. {
  194. if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, RED,"[ERROR]: You already have a vehicle!");
  195. new Float:X, Float:Y, Float:Z;
  196. GetPlayerPos(playerid, X, Y, Z);
  197. PutPlayerInVehicle(playerid, CreateVehicle(522, X, Y, Z, 0.0,0, 1, 60), 0);
  198. SendClientMessage(playerid, BLUE,"Enjoy your new vip bike!");
  199. HasSpawnedCar[playerid] = 1;
  200. }
  201. else return SendClientMessage(playerid, RED,"[ERROR]: You need to be vip level 1 to use this command!");
  202. return 1;
  203. }
  204. //==============================================================================
  205. CMD:vheli(playerid, params[])
  206. {
  207. if(PlayerInfo[playerid][pVIP] >= 1)
  208. {
  209. if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, RED,"[ERROR]: You already have a vehicle!");
  210. new Float:X, Float:Y, Float:Z;
  211. GetPlayerPos(playerid, X, Y, Z);
  212. PutPlayerInVehicle(playerid, CreateVehicle(487, X, Y, Z, 0.0,0, 1, 60), 0);
  213. SendClientMessage(playerid, BLUE,"Enjoy your new vip helicopter!");
  214. HasSpawnedCar[playerid] = 1;
  215. }
  216. else return SendClientMessage(playerid, RED,"[ERROR]: You need to be vip level 1 to use this command!");
  217. return 1;
  218. }
  219. //==============================================================================
  220. CMD:vheal(playerid, params[])
  221. {
  222. if(PlayerInfo[playerid][pVIP] >= 1)
  223. {
  224. if(Enablevheal[playerid] == 1)
  225. {
  226. SetPlayerHealth(playerid, 100.0);
  227. GameTextForPlayer(playerid,"~g~Healed",1500, 3);
  228. PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
  229. Enablevheal[playerid] = 0;
  230. timer[playerid][vHeal] = SetTimer("EnablevHeal", 120*1000,false);
  231. } else return SendClientMessage(playerid, RED,"[ERROR]: You can only use this command in each two minutes");
  232. } else return SendClientMessage(playerid, RED,"[ERROR]: You need to be vip level 1 to use this command!");
  233. return 1;
  234. }
  235. //==============================================================================
  236. CMD:vcar(playerid, params[])
  237. {
  238. if(PlayerInfo[playerid][pVIP] >= 1)
  239. {
  240. if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, RED,"[ERROR]: You already have a vehicle!");
  241. new Float:X, Float:Y, Float:Z;
  242. GetPlayerPos(playerid, X, Y, Z);
  243. PutPlayerInVehicle(playerid, CreateVehicle(415, X, Y, Z, 0.0,0, 1, 60), 0);
  244. SendClientMessage(playerid, BLUE,"Enjoy your vip car");
  245. HasSpawnedCar[playerid] = 1;
  246. }
  247. else return SendClientMessage(playerid, RED,"[ERROR]: You need to be vip level 1 to use this command");
  248. return 1;
  249. }
  250. //==========Extra command=======================================================
  251. CMD:vips(playerid, params[]) {
  252. new count = 0;
  253. new string[256];
  254. new name[MAX_PLAYER_NAME];
  255. SendClientMessage(playerid, GREEN," ");
  256. SendClientMessage(playerid, GREEN,"Currently online very important players (vips)");
  257. for(new i = 0; i < MAX_PLAYERS; i ++) {
  258. if(IsPlayerConnected(i)) {
  259. GetPlayerName(i, name, sizeof(name));
  260. if(PlayerInfo[i][pVIP] >= 1) {
  261. format(string, sizeof(string),"Donator Level - %d: %s ", PlayerInfo[playerid][pVIP],name);
  262. SendClientMessage(playerid, PURPLE, string);
  263. count++;
  264. }
  265. }
  266. }
  267. if(count == 0) {
  268. SendClientMessage(playerid, GREEN,"No vips online right now");
  269. }
  270. return 1;
  271. }
  272. //==========================RCON ADMIN COMMAND==================================
  273. CMD:setvip(playerid, params[])
  274. {
  275. if(IsPlayerAdmin(playerid))
  276. {
  277. new string[125], level, player1;
  278. if(sscanf(params,"dd",player1, level)) return SendClientMessage(playerid, RED,"[USAGE]: /setvip ( playerid ) ( level )");
  279. if(!IsPlayerConnected(playerid) && player1 != INVALID_PLAYER_ID)
  280. {
  281. SendClientMessage(playerid, RED,"[ERROR]: Player is not connected");
  282. }
  283. if(level > MAX_VIPL)
  284. {
  285. SendClientMessage(playerid, RED,"[ERROR]: Incorrect level");
  286. }
  287. else
  288. {
  289. format(string, sizeof(string),""cblue"Administrator "cgreen"'%s' "cblue"has set your vip level to "cgreen"'%d'", PlayerName(playerid),level);
  290. SendClientMessage(player1, PURPLE, string);
  291. PlayerPlaySound(player1,1057,0.0,0.0,0.0);
  292. PlayerInfo[player1][pVIP] = level;
  293. }
  294. }
  295. else return SendClientMessage(playerid, RED,"[ERROR]: You need to be RCON admin to use this command");
  296. return 1;
  297. }
  298. //==============================================================================
  299. //============================FUNCTIONS=========================================
  300. public EnablevBonus(playerid)
  301. {
  302. if(Enablevbonus[playerid] == 0)
  303. {
  304. Enablevbonus[playerid] = 1;
  305. KillTimer(timer[playerid][vBonus]);
  306. }
  307. return 1;
  308. }
  309. public EnablevHeal(playerid)
  310. {
  311. if(Enablevheal[playerid] == 0)
  312. {
  313. Enablevheal[playerid] = 1;
  314. KillTimer(timer[playerid][vHeal]);
  315. }
  316. return 1;
  317. }
  318. //==============================================================================
  319. //==============VIP Level 2 Commands============================================
  320. CMD:vplane(playerid, params[])
  321. {
  322. if(PlayerInfo[playerid][pVIP] >= 2)
  323. {
  324. if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, RED,"[ERROR]: You already have a vehicle!");
  325. new Float:X, Float:Y, Float:Z;
  326. GetPlayerPos(playerid, X, Y, Z);
  327. PutPlayerInVehicle(playerid, CreateVehicle(513, X, Y, Z, 0.0,0, 1, 60), 0);
  328. SendClientMessage(playerid, BLUE,"Enjoy your vip plane");
  329. HasSpawnedCar[playerid] = 1;
  330. }
  331. else return SendClientMessage(playerid, RED,"[ERROR]: You need to be vip level 2 to use this command");
  332. return 1;
  333. }
  334. //=======================================VBONUS=================================
  335. CMD:vpbonus(playerid, params[])
  336. {
  337. if(PlayerInfo[playerid][pVIP] >= 2)
  338. {
  339. if(Enablevbonus[playerid] == 1)
  340. {
  341. for(new i = 0; i < MAX_PLAYERS; i++)
  342. {
  343. if(IsPlayerConnected(i))
  344. {
  345. new Float:x, Float:y, Float:z, Float:health, Float:armour;
  346. GetPlayerHealth(i, health);
  347. GetPlayerArmour(i, armour);
  348. GetPlayerPos(playerid, x, y, z);
  349. if(IsPlayerInRangeOfPoint(i, 20.0, x, y, z))
  350. {
  351. GivePlayerWeapon(i, 35,1);
  352. SetPlayerHealth(i, health + 20);
  353. SetPlayerArmour(i, armour + 10);
  354. Enablevbonus[playerid] = 0;
  355. timer[playerid][vBonus] = SetTimer("EnablevBonus", 120*1000, false);
  356. SendClientMessage(i, GREEN,"[INFO]: VIP near you has used bonus command so you got +1 RPG and some health and armour!");
  357. }
  358. }
  359. }
  360. } else return SendClientMessage(playerid, RED,"[ERROR]: You can only use this command each two minutes");
  361. } else return SendClientMessage(playerid, RED,"[ERROR]: You are not vip level 2");
  362. return 1;
  363. }
  364. //========================================VNOS==================================
  365. CMD:vnos(playerid, params[])
  366. {
  367. if(PlayerInfo[playerid][pVIP] >= 2)
  368. {
  369. if(IsPlayerInAnyVehicle(playerid))
  370. {
  371. switch(GetVehicleModel(GetPlayerVehicleID(playerid)))
  372. {
  373. case 448,461,462,463,468,471,509,510,521,522,523,581,586,449:
  374. return SendClientMessage(playerid,RED,"ERROR: You can not tune this vehicle!");
  375. }
  376. AddVehicleComponent(GetPlayerVehicleID(playerid), 1010);
  377. return PlayerPlaySound(playerid,1133,0.0,0.0,0.0);
  378. }
  379. else return SendClientMessage(playerid,RED,"ERROR: You must be in a vehicle.");
  380. }
  381. else return SendClientMessage(playerid,RED,"ERROR: You are not a high enough level to use this command");
  382. }
  383. //==============================================================================
  384. //=======================NEW VIP Level 2 Commands===============================
  385. CMD:vweaps(playerid, params[])
  386. {
  387. if(PlayerInfo[playerid][pVIP] >= 2)
  388. {
  389. GivePlayerWeapon(playerid,28,1000);
  390. GivePlayerWeapon(playerid,31,1000);
  391. GivePlayerWeapon(playerid,34,1000);
  392. GivePlayerWeapon(playerid,38,1000);
  393. GivePlayerWeapon(playerid,16,1000);
  394. GivePlayerWeapon(playerid,42,1000);
  395. GivePlayerWeapon(playerid,14,1000);
  396. GivePlayerWeapon(playerid,46,1000);
  397. GivePlayerWeapon(playerid,9,1);
  398. GivePlayerWeapon(playerid,24,1000);
  399. GivePlayerWeapon(playerid,26,1000);
  400. SendClientMessage(playerid, GREEN,"[INFO][]: You have spawned all the vip weapons!");
  401. }
  402. else return SendClientMessage(playerid, RED,"[ERROR]: You need to be VIP level 2 to use this command!");
  403. return 1;
  404. }
  405. CMD:vboat(playerid, params[])
  406. {
  407. if(PlayerInfo[playerid][pVIP] >= 2)
  408. {
  409. if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, RED,"[ERROR]: You already have a vehicle!");
  410. new Float:X, Float:Y, Float:Z;
  411. GetPlayerPos(playerid, X, Y, Z);
  412. PutPlayerInVehicle(playerid, CreateVehicle(493, X, Y, Z, 0.0,0, 1, 60), 0);
  413. SendClientMessage(playerid, BLUE,"Enjoy your vip boat");
  414. HasSpawnedCar[playerid] = 1;
  415. }
  416. else return SendClientMessage(playerid, RED,"[ERROR]: You need to be vip level 2 to use this command");
  417. return 1;
  418. }
  419. CMD:vsay(playerid, params[])
  420. {
  421. if(PlayerInfo[playerid][pVIP] >= 1)
  422. {
  423. new text;
  424. if(sscanf(params,"s[125]",text)) return SendClientMessage(playerid, RED,"[USAGE]: /vsay [text");
  425. new string[256], pName[MAX_PLAYER_NAME];
  426. GetPlayerName(playerid, pName,sizeof(pName));
  427. format(string, sizeof(string),"*%s %s: %s",Rank(playerid),pName, text);
  428. SendClientMessageToAll(GetPlayerColor(playerid), string);
  429. }
  430. else return SendClientMessage(playerid, RED,"[ERROR]: You need to be VIP to use this command!");
  431. return 1;
  432. }
  433. //====================VIP LEVEL 3 Commands======================================
  434. CMD:vskin(playerid, params[])
  435. {
  436. if(PlayerInfo[playerid][pVIP] >= 3)
  437. {
  438. new skinid, string[128];
  439. if(sscanf(params, "d", skinid))
  440. {
  441. SendClientMessage(playerid, RED, "USAGE: /skin [skinID].");
  442. }
  443. else
  444. {
  445. if(skinid > 299 || skinid < 0)
  446. {
  447. SendClientMessage(playerid, RED, "[ERROR]: Invalid skin ID.");
  448. }
  449. else
  450. {
  451. SetPlayerSkin(playerid, skinid);
  452. format(string, sizeof(string), "[]VIP INFO[]: You have changed your skin to %d.", skinid);
  453. SendClientMessage(playerid, GREEN, string);
  454. }
  455. }
  456. }
  457. else return SendClientMessage(playerid, RED,"[ERROR]: You need to be vip level 3 to use this command");
  458. return 1;
  459. }
  460. CMD:vfix(playerid, params[])
  461. {
  462. if(PlayerInfo[playerid][pVIP] >= 3)
  463. {
  464. if(IsPlayerInAnyVehicle(playerid))
  465. {
  466. new veh;
  467. veh = GetPlayerVehicleID(playerid);
  468. RepairVehicle(veh);
  469. return SendClientMessage(playerid, GREEN,"[]VIP[]: Your vehicle has been repaired");
  470. }
  471. else return SendClientMessage(playerid, RED,"[ERROR]: You need to be in vehicle to use this command");
  472. }
  473. else return SendClientMessage(playerid, RED,"[ERROR]: You need to be vip level 3 to use this command");
  474. }
  475. CMD:vjetpack(playerid, params[])
  476. {
  477. if(PlayerInfo[playerid][pVIP] >= 3)
  478. {
  479. SetPlayerSpecialAction(playerid, 2);
  480. }
  481. else return SendClientMessage(playerid, RED,"[ERROR]: You need to be vip level 3 to use this command");
  482. return 1;
  483. }
  484. CMD:vtime(playerid, params[])
  485. {
  486. if(PlayerInfo[playerid][pVIP] >= 3)
  487. {
  488. new time;
  489. if(sscanf(params,"d",time)) return SendClientMessage(playerid, RED,"[USAGE]: /vtime [time]");
  490. SetPlayerTime(playerid, time, 0);
  491. SendClientMessage(playerid, BLUE,"[]VIP[] You have changed your time");
  492. }
  493. else return SendClientMessage(playerid, RED,"[ERROR]: You are not vip level 3");
  494. return 1;
  495. }
  496. CMD:varmour(playerid, params[])
  497. {
  498. if(PlayerInfo[playerid][pVIP] >= 3)
  499. {
  500. if(Enablevheal[playerid] == 1)
  501. {
  502. Enablevheal[playerid] = 0;
  503. timer[playerid][vHeal] = SetTimer("EnablevHeal", 120*1000,false); //Used same timer as vheal.. would not be messy ..
  504. GameTextForPlayer(playerid,"~g~Armoured",1500, 3);
  505. PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
  506. return SetPlayerArmour(playerid, 100.0);
  507.  
  508. } else return SendClientMessage(playerid, RED,"[ERROR]: You can only use this command in each two minutes");
  509. } else return SendClientMessage(playerid, RED,"[ERROR]: You need to be vip level 3 to use this command!");
  510. }
  511. CMD:vmenu(playerid, params[])
  512. {
  513. if(PlayerInfo[playerid][pVIP] >= 2)
  514. {
  515. new lstring[325];
  516. format(lstring, sizeof(lstring),""cgreen"Bike\n"cblue"Car\n"corange"Plane\n"cred"Maverick\n"cred"Heal me\n"cgreen"Armour me\n"cred"Vehicle Fix\n"corange"Spawn JetPack");
  517. ShowPlayerDialog(playerid, DIALOGCMDS,DIALOG_STYLE_LIST,""corange"jVIP Menu",lstring,"Select","Close");
  518. }
  519. else return SendClientMessage(playerid, RED,"[ERROR]: You need to be vip level 2 to use this command");
  520. return 1;
  521. }
  522. //=================DIALOG TIME ^^===============================================
  523. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  524. {
  525. new Float:X, Float:Y, Float:Z;
  526. GetPlayerPos(playerid, X, Y, Z);
  527. if(dialogid == DIALOGCMDS)
  528. {
  529. switch(listitem)
  530. {
  531. case 0:
  532. {
  533. if(PlayerInfo[playerid][pVIP] >= 1)
  534. {
  535. if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, RED,"[ERROR]: You already have a vehicle!");
  536. PutPlayerInVehicle(playerid, CreateVehicle(522, X, Y, Z, 0.0,0, 1, 60), 0);
  537. SendClientMessage(playerid, BLUE,"Enjoy your new vip bike!");
  538. HasSpawnedCar[playerid] = 1;
  539. }
  540. else return SendClientMessage(playerid, RED,"[ERROR]: You need to be vip level 1 to use this command!");
  541. }
  542. case 1:
  543. {
  544. if(PlayerInfo[playerid][pVIP] >= 1)
  545. {
  546. if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, RED,"[ERROR]: You already have a vehicle!");
  547. PutPlayerInVehicle(playerid, CreateVehicle(415, X, Y, Z, 0.0,0, 1, 60), 0);
  548. SendClientMessage(playerid, BLUE,"Enjoy your vip car");
  549. HasSpawnedCar[playerid] = 1;
  550. }
  551. else return SendClientMessage(playerid, RED,"[ERROR]: You need to be vip level 1 to use this command");
  552. }
  553. case 2:
  554. {
  555. if(PlayerInfo[playerid][pVIP] >= 2)
  556. {
  557. if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, RED,"[ERROR]: You already have a vehicle!");
  558. PutPlayerInVehicle(playerid, CreateVehicle(513, X, Y, Z, 0.0,0, 1, 60), 0);
  559. SendClientMessage(playerid, BLUE,"Enjoy your vip plane");
  560. HasSpawnedCar[playerid] = 1;
  561. }
  562. else return SendClientMessage(playerid, RED,"[ERROR]: You need to be vip level 2 to use this command");
  563. }
  564. case 3:
  565. {
  566. if(PlayerInfo[playerid][pVIP] >= 1)
  567. {
  568. if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, RED,"[ERROR]: You already have a vehicle!");
  569. PutPlayerInVehicle(playerid, CreateVehicle(487, X, Y, Z, 0.0,0, 1, 60), 0);
  570. SendClientMessage(playerid, BLUE,"Enjoy your new vip helicopter!");
  571. }
  572. else return SendClientMessage(playerid, RED,"[ERROR]: You need to be vip level 1 to use this command!");
  573. }
  574. case 4:
  575. {
  576. if(PlayerInfo[playerid][pVIP] >= 1)
  577. {
  578. if(Enablevheal[playerid] == 1)
  579. {
  580. SetPlayerHealth(playerid, 100.0);
  581. GameTextForPlayer(playerid,"~g~Healed",1500, 3);
  582. PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
  583. Enablevheal[playerid] = 0;
  584. timer[playerid][vHeal] = SetTimer("EnablevHeal", 120*1000,false);
  585. } else return SendClientMessage(playerid, RED,"[ERROR]: You can only use this command in each two minutes");
  586. } else return SendClientMessage(playerid, RED,"[ERROR]: You need to be vip level 1 to use this command!");
  587. }
  588. case 5:
  589. {
  590. if(PlayerInfo[playerid][pVIP] >= 3)
  591. {
  592. if(Enablevheal[playerid] == 1)
  593. {
  594. Enablevheal[playerid] = 0;
  595. timer[playerid][vHeal] = SetTimer("EnablevHeal", 120*1000,false); //Used same timer as vheal.. would not be messy ..
  596. GameTextForPlayer(playerid,"~g~Armoured",1500, 3);
  597. PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
  598. return SetPlayerArmour(playerid, 100.0);
  599. } else return SendClientMessage(playerid, RED,"[ERROR]: You can only use this command in each two minutes");
  600. } else return SendClientMessage(playerid, RED,"[ERROR]: You need to be vip level 3 to use this command!");
  601. }
  602. case 6:
  603. {
  604. if(PlayerInfo[playerid][pVIP] >= 3)
  605. {
  606. if(IsPlayerInAnyVehicle(playerid))
  607. {
  608. new veh;
  609. veh = GetPlayerVehicleID(playerid);
  610. RepairVehicle(veh);
  611. return SendClientMessage(playerid, GREEN,"[]VIP[]: Your vehicle has been repaired");
  612. }
  613. else return SendClientMessage(playerid, RED,"[ERROR]: You need to be in vehicle to use this command");
  614. }
  615. else return SendClientMessage(playerid, RED,"[ERROR]: You need to be vip level 3 to use this command");
  616. }
  617. case 7:
  618. {
  619. if(PlayerInfo[playerid][pVIP] >= 3)
  620. {
  621. SetPlayerSpecialAction(playerid, 2);
  622. }
  623. else return SendClientMessage(playerid, RED,"[ERROR]: You need to be vip level 3 to use this command");
  624. }
  625. }
  626. }
  627. return 0;
  628. }
  629. //========================OnPlayerExitVehicle===================================
  630. public OnPlayerExitVehicle(playerid, vehicleid)
  631. {
  632. if(HasSpawnedCar[playerid] == 1)
  633. {
  634. DestroyVehicle(vehicleid);
  635. HasSpawnedCar[playerid] = 0;
  636. SendClientMessage(playerid, GREEN,"[] INFO []: Your vehicle has been destroyed to avoid vehicle spam in server");
  637. }
  638. return 1;
  639. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement