Advertisement
RasyidMF

bug

Jul 15th, 2016
181
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 158.36 KB | None | 0 0
  1. /*
  2. -------------------------Gamemode By RasyidMF
  3. > Version 1.0
  4. > website : pvttdm.hol.es
  5. */
  6.  
  7. #include <a_samp>
  8. #include <zcmd>
  9. #include <streamer>
  10. #include <Dini>
  11. #include <Dutils>
  12. #include <lethaldudb2>
  13. #include <SII>
  14. #include <sscanf2>
  15. #include <fixes>
  16. #include <foreach>
  17. #include <OPSP>
  18.  
  19. #define Polisi 1
  20. #define Teroris 2
  21. #define TEAM_NONE 3
  22. #define MAX_TEAMS 4
  23.  
  24. #define CPolisi 0x2800FFAA
  25. #define CTeroris 0xFF0000AA
  26.  
  27. new Streak[MAX_PLAYERS];
  28. new PertamaSpawn[MAX_PLAYERS];
  29. #define MAX_WARNINGS 3
  30. #define MAX_REPORTS 7
  31. #define MAX_CHAT_LINES 7
  32. #define SPAM_MAX_MSGS 5
  33. #define SPAM_TIMELIMIT 8
  34. #define PING_MAX_EXCEEDS 4
  35. #define PING_TIMELIMIT 60
  36. #define MAX_FAIL_LOGINS 3
  37. #define WEAPON_BODY_PART_CHEST 3
  38. #define WEAPON_BODY_PART_CROTCH 4
  39. #define WEAPON_BODY_PART_LEFT_ARM 5
  40. #define WEAPON_BODY_PART_RIGHT_ARM 6
  41. #define WEAPON_BODY_PART_LEFT_LEG 7
  42. #define WEAPON_BODY_PART_RIGHT_LEG 8
  43. #define WEAPON_BODY_PART_HEAD 9
  44.  
  45. //Caps
  46. #define UpperToLower(%1) for ( new ToLowerChar; ToLowerChar < strlen( %1 ); ToLowerChar ++ ) if ( %1[ ToLowerChar ]> 64 && %1[ ToLowerChar ] < 91 ) %1[ ToLowerChar ] += 32
  47.  
  48. #define ADMIN_SPEC_TYPE_NONE 0
  49. #define ADMIN_SPEC_TYPE_PLAYER 1
  50. #define ADMIN_SPEC_TYPE_VEHICLE 2
  51.  
  52. //warna
  53. #define orange 0xFF9900AA
  54. #define green2 0x2DFF00FF
  55. #define COLOR_RED 0xFC3535FF
  56. #define COLOR_GREEN 0x80FF8096
  57. #define green 0x33FF33AA
  58. #define COLOR_ROYAL 0x00C1F6AA
  59. #define COLOR_BROWN 0xA52A2AAA
  60. #define COLOR_PURPLE 0xC2A2DAAA
  61. #define COLOR_ORANGE 0xFF9900AA
  62. #define blue1 0x2641FEAA
  63. #define LIGHTGREEN 0x38FF06FF
  64. #define lightblue 0x0A00FFFF
  65. #define red2 0xFF2800FF
  66. #define cred "{E10000}"
  67. #define corange "{FF7E19}"
  68. #define cyellow "{FF9E00}"
  69. #define cblue "{0087FF}"
  70. #define cwhite "{FFFFFF}"
  71. #define cgreen "{05FF00}"
  72. #define cgrey "{969696}"
  73. #define ccolor "{FFFF00}"
  74. #define ccolor2 "{FF0000}"
  75. #define COLOR_LAVENDER 0xFF00FFAA
  76. #define blue 0x0000FFFF
  77. //---
  78. new rconAttempts[MAX_PLAYERS];
  79. new DND[MAX_PLAYERS];
  80. new LastPm[MAX_PLAYERS];
  81. new FirstSpawn[MAX_PLAYERS];
  82. new Spectating[MAX_PLAYERS];
  83. new ID[MAX_PLAYERS];
  84. new AntiSK[MAX_PLAYERS];
  85. new Skills[MAX_PLAYERS];
  86. new Text3D:Dis[MAX_PLAYERS];
  87. //Timers
  88. new BlipTimer[MAX_PLAYERS];
  89. new JailTimer[MAX_PLAYERS];
  90. new FreezeTimer[MAX_PLAYERS];
  91. new LockKickTimer[MAX_PLAYERS];
  92.  
  93. new Anti_Warn[MAX_PLAYERS];
  94. new Warn[MAX_PLAYERS];
  95. new Anti_time[MAX_PLAYERS];
  96. new Anti_heal[MAX_PLAYERS];
  97. new Anti_Give[MAX_PLAYERS];
  98. new bool:Block_CMD[MAX_PLAYERS][40];
  99. new Helmet[MAX_PLAYERS];
  100.  
  101. //Enums
  102. enum PlayerData
  103. {
  104. Registered,
  105. LoggedIn,
  106. Level,
  107. Helper,
  108. Tag,
  109. dRank,
  110. Muted,
  111. Caps,
  112. Jailed,
  113. JailTime,
  114. Frozen,
  115. FreezeTime,
  116. Kills,
  117. Deaths,
  118. hours,
  119. mins,
  120. secs,
  121. TotalTime,
  122. ConnectTime,
  123. MuteWarnings,
  124. Warnings,
  125. Spawned,
  126. TimesSpawned,
  127. God,
  128. GodCar,
  129. DoorsLocked,
  130. SpamCount,
  131. SpamTime,
  132. PingCount,
  133. PingTime,
  134. blip,
  135. blipS,
  136. pColour,
  137. pCar,
  138. SpecID,
  139. SpecType,
  140. OnDuty,
  141. bool:AllowedIn,
  142. FailLogin
  143. };
  144. new PlayerInfo[MAX_PLAYERS][PlayerData];
  145. enum ServerData
  146. {
  147. MaxPing,
  148. ReadPMs,
  149. ReadCmds,
  150. MaxAdminLevel,
  151. AdminOnlySkins,
  152. AdminSkin,
  153. AdminSkin2,
  154. NameKick,
  155. PartNameKick,
  156. AntiSpam,
  157. AntiSwear,
  158. NoCaps,
  159. Locked,
  160. Password[128],
  161. GiveWeap,
  162. GiveMoney,
  163. ConnectMessages,
  164. AdminCmdMsg,
  165. AutoLogin,
  166. MaxMuteWarnings,
  167. DisableChat,
  168. MustLogin,
  169. MustRegister,
  170. };
  171. new ServerInfo[ServerData];
  172.  
  173. new Float:Pos[MAX_PLAYERS][4];
  174. // rcon
  175. new Chat[MAX_CHAT_LINES][128];
  176. new Float:XR,Float:YR,Float:ZR;
  177.  
  178. // Menus
  179. #if defined USE_MENUS
  180. new Menu:LMainMenu, Menu:AdminEnable, Menu:AdminDisable,
  181. Menu:LVehicles, Menu:twodoor, Menu:fourdoor, Menu:fastcar, Menu:Othercars,
  182. Menu:bikes, Menu:boats, Menu:planes, Menu:helicopters,
  183. Menu:XWeapons, Menu:XWeaponsBig, Menu:XWeaponsSmall, Menu:XWeaponsMore,
  184. Menu:LWeather,Menu:LTime,
  185. Menu:LTuneMenu, Menu:PaintMenu, Menu:LCars, Menu:LCars2,
  186. Menu:LTele, Menu:LasVenturasMenu, Menu:LosSantosMenu, Menu:SanFierroMenu,
  187. Menu:DesertMenu, Menu:FlintMenu, Menu:MountChiliadMenu, Menu:InteriorsMenu;
  188. #endif
  189.  
  190. // Forbidden Names & Words
  191. new BadNames[100][100], // Whole Names
  192. BadNameCount = 0,
  193. BadPartNames[100][100], // Part of name
  194. BadPartNameCount = 0,
  195. ForbiddenWords[100][100],
  196. ForbiddenWordCount = 0;
  197. // Report
  198. new Reports[MAX_REPORTS][128];
  199.  
  200. new VehicleNames[212][] = {
  201. "Landstalker","Bravura","Buffalo","Linerunner","Pereniel","Sentinel","Dumper","Firetruck","Trashmaster","Stretch","Manana","Infernus",
  202. "Voodoo","Pony","Mule","Cheetah","Ambulance","Leviathan","Moonbeam","Esperanto","Taxi","Washington","Bobcat","Mr Whoopee","BF Injection",
  203. "Hunter","Premier","Enforcer","Securicar","Banshee","Predator","Bus","Rhino","Barracks","Hotknife","Trailer","Previon","Coach","Cabbie",
  204. "Stallion","Rumpo","RC Bandit","Romero","Packer","Monster","Admiral","Squalo","Seasparrow","Pizzaboy","Tram","Trailer","Turismo","Speeder",
  205. "Reefer","Tropic","Flatbed","Yankee","Caddy","Solair","Berkley's RC Van","Skimmer","PCJ-600","Faggio","Freeway","RC Baron","RC Raider",
  206. "Glendale","Oceanic","Sanchez","Sparrow","Patriot","Quad","Coastguard","Dinghy","Hermes","Sabre","Rustler","ZR3 50","Walton","Regina",
  207. "Comet","BMX","Burrito","Camper","Marquis","Baggage","Dozer","Maverick","News Chopper","Rancher","FBI Rancher","Virgo","Greenwood",
  208. "Jetmax","Hotring","Sandking","Blista Compact","Police Maverick","Boxville","Benson","Mesa","RC Goblin","Hotring Racer A","Hotring Racer B",
  209. "Bloodring Banger","Rancher","Super GT","Elegant","Journey","Bike","Mountain Bike","Beagle","Cropdust","Stunt","Tanker","RoadTrain",
  210. "Nebula","Majestic","Buccaneer","Shamal","Hydra","FCR-900","NRG-500","HPV1000","Cement Truck","Tow Truck","Fortune","Cadrona","FBI Truck",
  211. "Willard","Forklift","Tractor","Combine","Feltzer","Remington","Slamvan","Blade","Freight","Streak","Vortex","Vincent","Bullet","Clover",
  212. "Sadler","Firetruck","Hustler","Intruder","Primo","Cargobob","Tampa","Sunrise","Merit","Utility","Nevada","Yosemite","Windsor","Monster A",
  213. "Monster B","Uranus","Jester","Sultan","Stratum","Elegy","Raindance","RC Tiger","Flash","Tahoma","Savanna","Bandito","Freight","Trailer",
  214. "Kart","Mower","Duneride","Sweeper","Broadway","Tornado","AT-400","DFT-30","Huntley","Stafford","BF-400","Newsvan","Tug","Trailer A","Emperor",
  215. "Wayfarer","Euros","Hotdog","Club","Trailer B","Trailer C","Andromada","Dodo","RC Cam","Launch","Police Car (LSPD)","Police Car (SFPD)",
  216. "Police Car (LVPD)","Police Ranger","Picador","S.W.A.T. Van","Alpha","Phoenix","Glendale","Sadler","Luggage Trailer A","Luggage Trailer B",
  217. "Stair Trailer","Boxville","Farm Plow","Utility Trailer"
  218. };
  219. //Admin Area
  220. new AdminArea[6] = {
  221. 377, // X
  222. 170, // Y
  223. 1008, // Z
  224. 90, // Angle
  225. 3, // Interior
  226. 0 // Virtual World
  227. };
  228.  
  229. new Float:PolisiSpawn[][] =
  230. {
  231. {1553.6456,-1675.6027,16.1953},
  232. {1575.0220,-1634.1124,13.5563},
  233. {1542.3213,-1615.8450,13.3828}
  234. };
  235. new Float:TerorisSpawn[][] =
  236. {
  237. {1111.2261,-1836.0140,16.6018},
  238. {1086.7478,-1819.8026,16.5992},
  239. {1097.2048,-1830.2391,16.5938}
  240. };
  241.  
  242. #define SNAKE 1
  243. #define BAY 2
  244. #define BIG 3
  245. #define ARMY 4
  246. #define PETROL 5
  247. #define OIL 6
  248.  
  249. new GZ_Polisi;
  250. new GZ_Teroris;
  251.  
  252. new IsPlayerUsingAnims[MAX_PLAYERS];
  253. new IsPlayerAnimsPreloaded[MAX_PLAYERS];
  254.  
  255. //Warna
  256. #define red 0xFF0019FF
  257. #define Putih "{FFFFFF}"
  258. #define COL_WHITE "{FFFFFF}"
  259. #define Merah "{FF0000}"
  260. #define COL_RED "{FF0000}"
  261. #define Biru "{1400FF}"
  262. #define Coklat "{730000}"
  263. #define Hijau "{00FF14}"
  264. #define Pink "{FF00D7}"
  265. //Warna SAMP
  266. #define Biru2 0x1E00FFFF
  267. #define Merah2 0xFF0005FF
  268. #define Hijau2 0x00FF00FF
  269. #define Pink2 0xFF00FFFF
  270. #define Orange 0xFF5A00FF
  271. #define Kuning 0xEBFF00FF
  272. #define BiruMuda 0x00FFF0FF
  273. #define COLOR_WHITE 0xFEFEFEFF
  274. //------
  275. #define SCM SendClientMessage
  276. #define SCMAll SendClientMessageToAll
  277. #define IPI INVALID_PLAYER_ID
  278.  
  279.  
  280. new PlayerColors[200] = {
  281. 0xFF8C13FF,0xC715FFFF,0x20B2AAFF,0xDC143CFF,0x6495EDFF,0xf0e68cFF,0x778899FF,0xFF1493FF,0xF4A460FF,
  282. 0xEE82EEFF,0xFFD720FF,0x8b4513FF,0x4949A0FF,0x148b8bFF,0x14ff7fFF,0x556b2fFF,0x0FD9FAFF,0x10DC29FF,
  283. 0x534081FF,0x0495CDFF,0xEF6CE8FF,0xBD34DAFF,0x247C1BFF,0x0C8E5DFF,0x635B03FF,0xCB7ED3FF,0x65ADEBFF,
  284. 0x5C1ACCFF,0xF2F853FF,0x11F891FF,0x7B39AAFF,0x53EB10FF,0x54137DFF,0x275222FF,0xF09F5BFF,0x3D0A4FFF,
  285. 0x22F767FF,0xD63034FF,0x9A6980FF,0xDFB935FF,0x3793FAFF,0x90239DFF,0xE9AB2FFF,0xAF2FF3FF,0x057F94FF,
  286. 0xB98519FF,0x388EEAFF,0x028151FF,0xA55043FF,0x0DE018FF,0x93AB1CFF,0x95BAF0FF,0x369976FF,0x18F71FFF,
  287. 0x4B8987FF,0x491B9EFF,0x829DC7FF,0xBCE635FF,0xCEA6DFFF,0x20D4ADFF,0x2D74FDFF,0x3C1C0DFF,0x12D6D4FF,
  288. 0x48C000FF,0x2A51E2FF,0xE3AC12FF,0xFC42A8FF,0x2FC827FF,0x1A30BFFF,0xB740C2FF,0x42ACF5FF,0x2FD9DEFF,
  289. 0xFAFB71FF,0x05D1CDFF,0xC471BDFF,0x94436EFF,0xC1F7ECFF,0xCE79EEFF,0xBD1EF2FF,0x93B7E4FF,0x3214AAFF,
  290. 0x184D3BFF,0xAE4B99FF,0x7E49D7FF,0x4C436EFF,0xFA24CCFF,0xCE76BEFF,0xA04E0AFF,0x9F945CFF,0xDCDE3DFF,
  291. 0x10C9C5FF,0x70524DFF,0x0BE472FF,0x8A2CD7FF,0x6152C2FF,0xCF72A9FF,0xE59338FF,0xEEDC2DFF,0xD8C762FF,
  292. 0xD8C762FF,0xFF8C13FF,0xC715FFFF,0x20B2AAFF,0xDC143CFF,0x6495EDFF,0xf0e68cFF,0x778899FF,0xFF1493FF,
  293. 0xF4A460FF,0xEE82EEFF,0xFFD720FF,0x8b4513FF,0x4949A0FF,0x148b8bFF,0x14ff7fFF,0x556b2fFF,0x0FD9FAFF,
  294. 0x10DC29FF,0x534081FF,0x0495CDFF,0xEF6CE8FF,0xBD34DAFF,0x247C1BFF,0x0C8E5DFF,0x635B03FF,0xCB7ED3FF,
  295. 0x65ADEBFF,0x5C1ACCFF,0xF2F853FF,0x11F891FF,0x7B39AAFF,0x53EB10FF,0x54137DFF,0x275222FF,0xF09F5BFF,
  296. 0x3D0A4FFF,0x22F767FF,0xD63034FF,0x9A6980FF,0xDFB935FF,0x3793FAFF,0x90239DFF,0xE9AB2FFF,0xAF2FF3FF,
  297. 0x057F94FF,0xB98519FF,0x388EEAFF,0x028151FF,0xA55043FF,0x0DE018FF,0x93AB1CFF,0x95BAF0FF,0x369976FF,
  298. 0x18F71FFF,0x4B8987FF,0x491B9EFF,0x829DC7FF,0xBCE635FF,0xCEA6DFFF,0x20D4ADFF,0x2D74FDFF,0x3C1C0DFF,
  299. 0x12D6D4FF,0x48C000FF,0x2A51E2FF,0xE3AC12FF,0xFC42A8FF,0x2FC827FF,0x1A30BFFF,0xB740C2FF,0x42ACF5FF,
  300. 0x2FD9DEFF,0xFAFB71FF,0x05D1CDFF,0xC471BDFF,0x94436EFF,0xC1F7ECFF,0xCE79EEFF,0xBD1EF2FF,0x93B7E4FF,
  301. 0x3214AAFF,0x184D3BFF,0xAE4B99FF,0x7E49D7FF,0x4C436EFF,0xFA24CCFF,0xCE76BEFF,0xA04E0AFF,0x9F945CFF,
  302. 0xDCDE3DFF,0x10C9C5FF,0x70524DFF,0x0BE472FF,0x8A2CD7FF,0x6152C2FF,0xCF72A9FF,0xE59338FF,0xEEDC2DFF,
  303. 0xD8C762FF,0xD8C762FF//taken from wiki
  304. };
  305. //Color Menu
  306. #define GREEN 0x80FF8096
  307. #define RED 0xFF6347AA
  308. #define BLUE 0x0015FFAA
  309. //
  310. new tCP[30];
  311. new UnderAttack[30] = 0;
  312. new CP[30];
  313. new Zone[30];
  314. new Captured[MAX_PLAYERS][30];
  315. new UpdateTimer[MAX_PLAYERS];
  316. new timer[MAX_PLAYERS][30];
  317. new CountVar[MAX_PLAYERS][30];
  318. new IsPlayerCapturing[MAX_PLAYERS][30];
  319. new Text:CountText[MAX_PLAYERS];
  320. //ladmin
  321. #define ACCOUNTS_PATH "ladmin/Users/%s"
  322. #define savefolder "/Users/%s.ini"
  323. #pragma unused ret_memcpy
  324. #pragma dynamic 145000
  325. #pragma tabsize 0
  326.  
  327. new Text3D:RankLabel[MAX_PLAYERS];
  328. new gTeam[MAX_PLAYERS];
  329. new gClass[MAX_PLAYERS];
  330. forward Update(playerid);
  331. forward SetZone(playerid);
  332. forward UpdateLabelText(playerid);
  333. forward SaveStats();
  334.  
  335. new Text:Textdraw0;
  336. new Text:Textdraw1;
  337. new Text:Textdraw2;
  338. new Text:Textdraw3;
  339. new Text:Textdraw4;
  340. new Text:Textdraw5;
  341. new Text:Textdraw6[MAX_PLAYERS];
  342. new Text:Textdraw7[MAX_PLAYERS];
  343. new Text:Textdraw8[MAX_PLAYERS];
  344. new Text:Textdraw9;
  345. new Text:Textdraw10;
  346. new Text:Textdraw11[MAX_PLAYERS];
  347. new Text:P;
  348. new Text:T;
  349. //TextDraw
  350.  
  351. new RP;//Polisi
  352. new EP;//Teroris
  353.  
  354. main()
  355. {
  356. print("\n----------------------------------");
  357. print(" Polisi VS Teroris By RasyidMF");
  358. print("----------------------------------\n");
  359. }
  360.  
  361.  
  362.  
  363. public OnGameModeInit()
  364. {
  365. // Don't use these lines if it's a filterscript
  366. SetGameModeText("Polisi VS Teroris V.1.0 [TDM]");
  367.  
  368. RP = CreatePickup(1210,2,1551.6033,-1685.7676,13.5523, -1);
  369. EP = CreatePickup(1210,2,1087.7926,-1830.8373,16.5992, -1);
  370.  
  371. CP[SNAKE] = CreateDynamicCP(1169.7323,-1489.7250,22.7560,3, -1,-1,-1,100.0);//Mall
  372. Zone[SNAKE] = GangZoneCreate(1057.732299, -1577.724975, 1241.732299, -1409.724975);
  373. //Restauran
  374. CP[BAY] = CreateDynamicCP(739.3395,-1431.4868,13.5234,3, -1,-1,-1,100.0);//House Zone
  375. Zone[BAY] = GangZoneCreate(643.339477, -1503.486816, 835.339477, -1375.486816);
  376. //Air
  377. CP[BIG] = CreateDynamicCP(1124.5613,-2036.8690,69.8839,3, -1,-1,-1,100.0);//Admin Zone
  378. Zone[BIG] = GangZoneCreate(1060.561279, -2084.869140, 1220.561279, -1988.869018);
  379. //Museum Bige
  380. CP[ARMY] = CreateDynamicCP(1365.6204,-1279.7086,13.5469,3, -1,-1,-1,100.0);//Ammunation
  381. Zone[ARMY] = GangZoneCreate(1277.620361, -1359.708618, 1469.620361, -1207.708618);
  382. //ChandraMall BigSm
  383. CP[PETROL] = CreateDynamicCP(1037.9412,-1337.7908,13.7266,3,-1,-1,-1,100.0);//Burger
  384. Zone[PETROL] = GangZoneCreate(982.004028, -1385.512329, 1102.004028, -1281.512329);
  385. //Gold Army Petrol Bunk
  386. CP[OIL] = CreateDynamicCP(901.9095,-1517.2413,13.5632,3, -1,-1,-1,100.0);//Mansion
  387. Zone[OIL] = GangZoneCreate(837.909545, -1573.241333, 965.909545, -1453.241333);
  388.  
  389. AddPlayerClass(285,1553.6456,-1675.6027,16.1953,89.2067,0,0,0,0,0,0); // Polisi Spawn
  390. AddPlayerClass(28,1111.2261,-1836.0140,16.6018,90.5285,0,0,0,0,0,0); // Teroris Spawn
  391.  
  392. Create3DTextLabel("Polisi Spawn > {FF0019}Mission : {00FF32} Kill Teroris",0x3A47DEFF,1553.69, -1675.80, 16.19,30.0,1);
  393.  
  394.  
  395. Create3DTextLabel("Teroris Spawn > {FF0019}Mission : {00FF32} Kill Polisi",0xFF0000FF,1111.22, -1836.01, 16.60,30.0,1);
  396.  
  397. Create3DTextLabel("Teroris {5FFF00} Shop",0xFF0000FF,1087.79, -1830.83, 16.59,30.0,1);
  398.  
  399.  
  400. SetTimer("CountDown", 1000, 1);
  401. SetTimer("Scorenya",1000,1);
  402. SetTimer("Uangnya",1000,1);
  403.  
  404. tCP[SNAKE] = TEAM_NONE;
  405. tCP[BAY] = TEAM_NONE;
  406. tCP[BIG] = TEAM_NONE;
  407. tCP[ARMY] = TEAM_NONE;
  408. tCP[PETROL] = TEAM_NONE;
  409. tCP[OIL] = TEAM_NONE;
  410.  
  411. UnderAttack[SNAKE] = 0;
  412. UnderAttack[BAY] = 0;
  413. UnderAttack[BIG] = 0;
  414. UnderAttack[ARMY] = 0;
  415. UnderAttack[PETROL] = 0;
  416. UnderAttack[OIL] = 0;
  417.  
  418.  
  419. P = TextDrawCreate(204.000000, 250.000000, "-=-Polisi-=-");
  420. TextDrawBackgroundColor(P, 255);
  421. TextDrawFont(P, 2);
  422. TextDrawLetterSize(P, 0.500, 2.500);
  423. TextDrawColor(P, CPolisi);
  424. TextDrawSetOutline(P, 1);
  425. TextDrawSetProportional(P, 1);
  426. TextDrawSetShadow(P,1);
  427.  
  428. T = TextDrawCreate(204.000000, 250.000000, "-=-Teroris-=-");
  429. TextDrawBackgroundColor(T, 255);
  430. TextDrawFont(T, 2);
  431. TextDrawLetterSize(T, 0.500, 2.500);
  432. TextDrawColor(T, CTeroris);
  433. TextDrawSetOutline(T, 1);
  434. TextDrawSetProportional(T, 1);
  435. TextDrawSetShadow(T,1);
  436.  
  437.  
  438. Textdraw0 = TextDrawCreate(487.000000, 6.000000, "~r~www.~g~pvttdm~y~.hol.es");
  439. TextDrawBackgroundColor(Textdraw0, 255);
  440. TextDrawFont(Textdraw0, 3);
  441. TextDrawLetterSize(Textdraw0, 0.420000, 1.500000);
  442. TextDrawColor(Textdraw0, -1);
  443. TextDrawSetOutline(Textdraw0, 1);
  444. TextDrawSetProportional(Textdraw0, 1);
  445.  
  446. Textdraw1 = TextDrawCreate(644.000000, 429.000000, "~n~");
  447. TextDrawAlignment(Textdraw1, 3);
  448. TextDrawBackgroundColor(Textdraw1, 255);
  449. TextDrawFont(Textdraw1, 1);
  450. TextDrawLetterSize(Textdraw1, 0.430000, 1.700000);
  451. TextDrawColor(Textdraw1, -65281);
  452. TextDrawSetOutline(Textdraw1, 1);
  453. TextDrawSetProportional(Textdraw1, 1);
  454. TextDrawUseBox(Textdraw1, 1);
  455. TextDrawBoxColor(Textdraw1, 505290376);
  456. TextDrawTextSize(Textdraw1, 1.000000, -2.000000);
  457.  
  458. UsePlayerPedAnims();
  459. DisableInteriorEnterExits();
  460.  
  461. Textdraw2 = TextDrawCreate(4.000000, 431.000000, "~r~IP ~g~149.202.249.153:7797");
  462. TextDrawBackgroundColor(Textdraw2, 255);
  463. TextDrawFont(Textdraw2, 1);
  464. TextDrawLetterSize(Textdraw2, 0.360000, 1.399999);
  465. TextDrawColor(Textdraw2, -1);
  466. TextDrawSetOutline(Textdraw2, 1);
  467. TextDrawSetProportional(Textdraw2, 1);
  468.  
  469. Textdraw3 = TextDrawCreate(165.000000, 430.000000, "~y~/cmds ~r~/help ~g~/ask ~b~/site ~r~~h~/credits ~g~~h~/mission ~b~~h~/updateser");
  470. TextDrawBackgroundColor(Textdraw3, 255);
  471. TextDrawFont(Textdraw3, 1);
  472. TextDrawLetterSize(Textdraw3, 0.360000, 1.399999);
  473. TextDrawColor(Textdraw3, -1);
  474. TextDrawSetOutline(Textdraw3, 1);
  475. TextDrawSetProportional(Textdraw3, 1);
  476.  
  477. Textdraw4 = TextDrawCreate(490.000000, 431.000000, "~r~Polisi ~g~VS ~y~Teroris ~b~~h~V.1.0");
  478. TextDrawBackgroundColor(Textdraw4, 255);
  479. TextDrawFont(Textdraw4, 1);
  480. TextDrawLetterSize(Textdraw4, 0.360000, 1.400000);
  481. TextDrawColor(Textdraw4, -1);
  482. TextDrawSetOutline(Textdraw4, 1);
  483. TextDrawSetProportional(Textdraw4, 1);
  484.  
  485. /*Textdraw5 = TextDrawCreate(290.000000, 431.000000, "~g~~h~This Script By ~b~~h~RasyidMF");
  486. TextDrawBackgroundColor(Textdraw5, 65535);
  487. TextDrawFont(Textdraw5, 2);
  488. TextDrawLetterSize(Textdraw5, 0.360000, 1.400000);
  489. TextDrawColor(Textdraw5, -1);
  490. TextDrawSetOutline(Textdraw5, 1);
  491. TextDrawSetProportional(Textdraw5, 1);*/
  492.  
  493.  
  494.  
  495. Textdraw9 = TextDrawCreate(72.000000, 306.000000, "~h~~g~Rank");
  496. TextDrawBackgroundColor(Textdraw9, 255);
  497. TextDrawFont(Textdraw9, 1);
  498. TextDrawLetterSize(Textdraw9, 0.360000, 1.400000);
  499. TextDrawColor(Textdraw9, -1);
  500. TextDrawSetOutline(Textdraw9, 1);
  501. TextDrawSetProportional(Textdraw9, 1);
  502.  
  503. Textdraw10 = TextDrawCreate(145.000000, 323.000000, "~n~");
  504. TextDrawBackgroundColor(Textdraw10, 255);
  505. TextDrawFont(Textdraw10, 1);
  506. TextDrawLetterSize(Textdraw10, 0.360000, 1.400000);
  507. TextDrawColor(Textdraw10, -1);
  508. TextDrawSetOutline(Textdraw10, 1);
  509. TextDrawSetProportional(Textdraw10, 1);
  510. TextDrawUseBox(Textdraw10, 1);
  511. TextDrawBoxColor(Textdraw10, 100597828);
  512. TextDrawTextSize(Textdraw10, 29.000000, -4.000000);
  513.  
  514. GZ_Polisi = GangZoneCreate(1457.612426, -1771.664428, 1641.612426, -1563.664428);
  515. GZ_Teroris = GangZoneCreate(1008.280029, -1932.063598, 1184.280029, -1748.063598);
  516.  
  517. for(new playerid = 0; playerid < MAX_PLAYERS; playerid++)
  518. {
  519. CountText[playerid] = TextDrawCreate(194.000000, 299.000000, "~h~~b~Capture : ~r~25/~g~25 Second");
  520. TextDrawBackgroundColor(CountText[playerid], 255);
  521. TextDrawFont(CountText[playerid], 3);
  522. TextDrawLetterSize(CountText[playerid], 0.629998, 2.200000);
  523. TextDrawColor(CountText[playerid], -1);
  524. TextDrawSetOutline(CountText[playerid], 1);
  525. TextDrawSetProportional(CountText[playerid], 1);
  526.  
  527. Textdraw6[playerid] = TextDrawCreate(497.000000, 98.000000, "~g~~h~Team : ~r~~h~Polisi");
  528. TextDrawBackgroundColor(Textdraw6[playerid], 255);
  529. TextDrawFont(Textdraw6[playerid], 1);
  530. TextDrawLetterSize(Textdraw6[playerid], 0.360000, 1.400000);
  531. TextDrawColor(Textdraw6[playerid], -1);
  532. TextDrawSetOutline(Textdraw6[playerid], 1);
  533. TextDrawSetProportional(Textdraw6[playerid], 1);
  534.  
  535. Textdraw7[playerid] = TextDrawCreate(496.000000, 111.000000, "~b~~h~Score : ~r~~h~0");
  536. TextDrawBackgroundColor(Textdraw7[playerid], 255);
  537. TextDrawFont(Textdraw7[playerid], 1);
  538. TextDrawLetterSize(Textdraw7[playerid], 0.360000, 1.400000);
  539. TextDrawColor(Textdraw7[playerid], -1);
  540. TextDrawSetOutline(Textdraw7[playerid], 1);
  541. TextDrawSetProportional(Textdraw7[playerid], 1);
  542.  
  543. Textdraw8[playerid] = TextDrawCreate(490.000000, 124.000000, "~y~~h~Money : ~r~~h~0");
  544. TextDrawBackgroundColor(Textdraw8[playerid], 255);
  545. TextDrawFont(Textdraw8[playerid], 1);
  546. TextDrawLetterSize(Textdraw8[playerid], 0.360000, 1.400000);
  547. TextDrawColor(Textdraw8[playerid], -1);
  548. TextDrawSetOutline(Textdraw8[playerid], 1);
  549. TextDrawSetProportional(Textdraw8[playerid], 1);
  550.  
  551. Textdraw11[playerid] = TextDrawCreate(37.000000, 321.000000, "~r~Begginer");
  552. TextDrawBackgroundColor(Textdraw11[playerid], 255);
  553. TextDrawFont(Textdraw11[playerid], 1);
  554. TextDrawLetterSize(Textdraw11[playerid], 0.290000, 1.600000);
  555. TextDrawColor(Textdraw11[playerid], -1);
  556. TextDrawSetOutline(Textdraw11[playerid], 1);
  557. TextDrawSetProportional(Textdraw11[playerid], 1);
  558.  
  559. RankLabel[playerid] = Create3DTextLabel(" ", 0x008080FF, 30.0, 40.0, 50.0, 40.0, 0);
  560. }
  561. if(!fexist("ladmin/"))
  562. {
  563. print("\n\n > WARNING: Folder Missing From Scriptfiles\n");
  564. SetTimerEx("PrintWarning",2500,0,"s","ladmin");
  565. return 1;
  566. }
  567. if(!fexist("ladmin/logs/"))
  568. {
  569. print("\n\n > WARNING: Folder Missing From Scriptfiles\n");
  570. SetTimerEx("PrintWarning",2500,0,"s","ladmin/logs");
  571. return 1;
  572. }
  573. if(!fexist("ladmin/config/"))
  574. {
  575. print("\n\n > WARNING: Folder Missing From Scriptfiles\n");
  576. SetTimerEx("PrintWarning",2500,0,"s","ladmin/config");
  577. return 1;
  578. }
  579. if(!fexist("ladmin/users/"))
  580. {
  581. print("\n\n > WARNING: Folder Missing From Scriptfiles\n");
  582. SetTimerEx("PrintWarning",2500,0,"s","ladmin/users");
  583. return 1;
  584. }
  585. UpdateConfig();
  586.  
  587. #if defined DISPLAY_CONFIG
  588. ConfigInConsole();
  589. #endif
  590.  
  591. //===================== [ The Menus ]===========================//
  592. #if defined USE_MENUS
  593.  
  594. LMainMenu = CreateMenu("Main Menu", 2, 55.0, 200.0, 100.0, 80.0);
  595. SetMenuColumnHeader(LMainMenu, 0, "Choose an option below");
  596. AddMenuItem(LMainMenu, 0, "Enable");
  597. AddMenuItem(LMainMenu, 0, "Disable");
  598. AddMenuItem(LMainMenu, 0, "Server Weather");
  599. AddMenuItem(LMainMenu, 0, "Server Time");
  600. AddMenuItem(LMainMenu, 0, "All Vehicles");
  601. AddMenuItem(LMainMenu, 0, "Admin Cars");
  602. AddMenuItem(LMainMenu, 0, "Tuning Menu");
  603. AddMenuItem(LMainMenu, 0, "Choose Weapon");
  604. AddMenuItem(LMainMenu, 0, "Teleports");
  605. AddMenuItem(LMainMenu, 0, "Exit Menu");//
  606.  
  607. AdminEnable = CreateMenu("~b~Configuration ~g~ Menu",2, 55.0, 200.0, 150.0, 80.0);
  608. SetMenuColumnHeader(AdminEnable, 0, "Enable");
  609. AddMenuItem(AdminEnable, 0, "Anti Swear");
  610. AddMenuItem(AdminEnable, 0, "Bad Name Kick");
  611. AddMenuItem(AdminEnable, 0, "Anti Spam");
  612. AddMenuItem(AdminEnable, 0, "Ping Kick");
  613. AddMenuItem(AdminEnable, 0, "Read Cmds");
  614. AddMenuItem(AdminEnable, 0, "Read PMs");
  615. AddMenuItem(AdminEnable, 0, "Capital Letters");
  616. AddMenuItem(AdminEnable, 0, "ConnectMessages");
  617. AddMenuItem(AdminEnable, 0, "AdminCmdMessages");
  618. AddMenuItem(AdminEnable, 0, "Auto Login");
  619. AddMenuItem(AdminEnable, 0, "Return");
  620.  
  621. AdminDisable = CreateMenu("~b~Configuration ~g~ Menu",2, 55.0, 200.0, 150.0, 80.0);
  622. SetMenuColumnHeader(AdminDisable, 0, "Disable");
  623. AddMenuItem(AdminDisable, 0, "Anti Swear");
  624. AddMenuItem(AdminDisable, 0, "Bad Name Kick");
  625. AddMenuItem(AdminDisable, 0, "Anti Spam");
  626. AddMenuItem(AdminDisable, 0, "Ping Kick");
  627. AddMenuItem(AdminDisable, 0, "Read Cmds");
  628. AddMenuItem(AdminDisable, 0, "Read PMs");
  629. AddMenuItem(AdminDisable, 0, "Capital Letters");
  630. AddMenuItem(AdminDisable, 0, "ConnectMessages");
  631. AddMenuItem(AdminDisable, 0, "AdminCmdMessages");
  632. AddMenuItem(AdminDisable, 0, "Auto Login");
  633. AddMenuItem(AdminDisable, 0, "Return");
  634.  
  635. LWeather = CreateMenu("~b~Weather ~g~ Menu",2, 55.0, 200.0, 100.0, 80.0);
  636. SetMenuColumnHeader(LWeather, 0, "Set Weather");
  637. AddMenuItem(LWeather, 0, "Clear Blue Sky");
  638. AddMenuItem(LWeather, 0, "Sand Storm");
  639. AddMenuItem(LWeather, 0, "Thunderstorm");
  640. AddMenuItem(LWeather, 0, "Foggy");
  641. AddMenuItem(LWeather, 0, "Cloudy");
  642. AddMenuItem(LWeather, 0, "High Tide");
  643. AddMenuItem(LWeather, 0, "Purple Sky");
  644. AddMenuItem(LWeather, 0, "Black/White Sky");
  645. AddMenuItem(LWeather, 0, "Dark, Green Sky");
  646. AddMenuItem(LWeather, 0, "Heatwave");
  647. AddMenuItem(LWeather,0,"Return");
  648.  
  649. LTime = CreateMenu("~b~Time ~g~ Menu", 2, 55.0, 200.0, 100.0, 80.0);
  650. SetMenuColumnHeader(LTime, 0, "Set Time");
  651. AddMenuItem(LTime, 0, "Morning");
  652. AddMenuItem(LTime, 0, "Mid day");
  653. AddMenuItem(LTime, 0, "Afternoon");
  654. AddMenuItem(LTime, 0, "Evening");
  655. AddMenuItem(LTime, 0, "Midnight");
  656. AddMenuItem(LTime, 0, "Return");
  657.  
  658. LCars = CreateMenu("~b~LethaL ~g~Cars", 2, 55.0, 150.0, 100.0, 80.0);
  659. SetMenuColumnHeader(LCars, 0, "Choose a car");
  660. AddMenuItem(LCars, 0, "Turismo");
  661. AddMenuItem(LCars, 0, "Bandito");
  662. AddMenuItem(LCars, 0, "Vortex");
  663. AddMenuItem(LCars, 0, "NRG");
  664. AddMenuItem(LCars, 0, "S.W.A.T");
  665. AddMenuItem(LCars, 0, "Hunter");
  666. AddMenuItem(LCars, 0, "Jetmax (boat)");
  667. AddMenuItem(LCars, 0, "Rhino");
  668. AddMenuItem(LCars, 0, "Monster Truck");
  669. AddMenuItem(LCars, 0, "Sea Sparrow");
  670. AddMenuItem(LCars, 0, "More");
  671. AddMenuItem(LCars, 0, "Return");
  672.  
  673. LCars2 = CreateMenu("~b~LethaL ~g~Cars", 2, 55.0, 150.0, 100.0, 80.0);
  674. SetMenuColumnHeader(LCars2, 0, "Choose a car");
  675. AddMenuItem(LCars2, 0, "Dumper");
  676. AddMenuItem(LCars2, 0, "RC Tank");
  677. AddMenuItem(LCars2, 0, "RC Bandit");
  678. AddMenuItem(LCars2, 0, "RC Baron");
  679. AddMenuItem(LCars2, 0, "RC Goblin");
  680. AddMenuItem(LCars2, 0, "RC Raider");
  681. AddMenuItem(LCars2, 0, "RC Cam");
  682. AddMenuItem(LCars2, 0, "Tram");
  683. AddMenuItem(LCars2, 0, "Return");
  684.  
  685. LTuneMenu = CreateMenu("~b~Tuning ~g~ Menu",2, 55.0, 200.0, 100.0, 80.0);
  686. SetMenuColumnHeader(LTuneMenu, 0, "Add to car");
  687. AddMenuItem(LTuneMenu,0,"NOS");
  688. AddMenuItem(LTuneMenu,0,"Hydraulics");
  689. AddMenuItem(LTuneMenu,0,"Wire Wheels");
  690. AddMenuItem(LTuneMenu,0,"Twist Wheels");
  691. AddMenuItem(LTuneMenu,0,"Access Wheels");
  692. AddMenuItem(LTuneMenu,0,"Mega Wheels");
  693. AddMenuItem(LTuneMenu,0,"Import Wheels");
  694. AddMenuItem(LTuneMenu,0,"Atomic Wheels");
  695. AddMenuItem(LTuneMenu,0,"Offroad Wheels");
  696. AddMenuItem(LTuneMenu,0,"Classic Wheels");
  697. AddMenuItem(LTuneMenu,0,"Paint Jobs");
  698. AddMenuItem(LTuneMenu,0,"Return");
  699.  
  700. PaintMenu = CreateMenu("~b~Paint Job ~g~ Menu",2, 55.0, 200.0, 100.0, 80.0);
  701. SetMenuColumnHeader(PaintMenu, 0, "Choose paint");
  702. AddMenuItem(PaintMenu,0,"Paint Job 1");
  703. AddMenuItem(PaintMenu,0,"Paint Job 2");
  704. AddMenuItem(PaintMenu,0,"Paint Job 3");
  705. AddMenuItem(PaintMenu,0,"Paint Job 4");
  706. AddMenuItem(PaintMenu,0,"Paint Job 5");
  707. AddMenuItem(PaintMenu,0,"Black");
  708. AddMenuItem(PaintMenu,0,"White");
  709. AddMenuItem(PaintMenu,0,"Blue");
  710. AddMenuItem(PaintMenu,0,"Pink");
  711. AddMenuItem(PaintMenu,0,"Return");
  712.  
  713. LVehicles = CreateMenu("~b~Vehicles ~g~ Menu",2, 55.0, 200.0, 100.0, 80.0);
  714. SetMenuColumnHeader(LVehicles, 0, "Choose a car");
  715. AddMenuItem(LVehicles,0,"2-door Cars");
  716. AddMenuItem(LVehicles,0,"4-door Cars");
  717. AddMenuItem(LVehicles,0,"Fast Cars");
  718. AddMenuItem(LVehicles,0,"Other Vehicles");
  719. AddMenuItem(LVehicles,0,"Bikes");
  720. AddMenuItem(LVehicles,0,"Boats");
  721. AddMenuItem(LVehicles,0,"Planes");
  722. AddMenuItem(LVehicles,0,"Helicopters");
  723. AddMenuItem(LVehicles,0,"Return");
  724.  
  725. twodoor = CreateMenu("~b~2-door Cars",2, 55.0, 200.0, 100.0, 80.0);
  726. SetMenuColumnHeader(twodoor, 0, "Choose a car");
  727. AddMenuItem(twodoor,0,"Feltzer");//533
  728. AddMenuItem(twodoor,0,"Stallion");//139
  729. AddMenuItem(twodoor,0,"Windsor");//555
  730. AddMenuItem(twodoor,0,"Bobcat");//422
  731. AddMenuItem(twodoor,0,"Yosemite");//554
  732. AddMenuItem(twodoor,0,"Broadway");//575
  733. AddMenuItem(twodoor,0,"Blade");//536
  734. AddMenuItem(twodoor,0,"Slamvan");//535
  735. AddMenuItem(twodoor,0,"Tornado");//576
  736. AddMenuItem(twodoor,0,"Bravura");//401
  737. AddMenuItem(twodoor,0,"Fortune");//526
  738. AddMenuItem(twodoor,0,"Return");
  739.  
  740. fourdoor = CreateMenu("~b~4-door Cars",2, 55.0, 200.0, 100.0, 80.0);
  741. SetMenuColumnHeader(fourdoor, 0, "Choose a car");
  742. AddMenuItem(fourdoor,0,"Perenniel");//404
  743. AddMenuItem(fourdoor,0,"Tahoma");//566
  744. AddMenuItem(fourdoor,0,"Voodoo");//412
  745. AddMenuItem(fourdoor,0,"Admiral");//445
  746. AddMenuItem(fourdoor,0,"Elegant");//507
  747. AddMenuItem(fourdoor,0,"Glendale");//466
  748. AddMenuItem(fourdoor,0,"Intruder");//546
  749. AddMenuItem(fourdoor,0,"Merit");//551
  750. AddMenuItem(fourdoor,0,"Oceanic");//467
  751. AddMenuItem(fourdoor,0,"Premier");//426
  752. AddMenuItem(fourdoor,0,"Sentinel");//405
  753. AddMenuItem(fourdoor,0,"Return");
  754.  
  755. fastcar = CreateMenu("~b~Fast Cars",2, 55.0, 200.0, 100.0, 80.0);
  756. SetMenuColumnHeader(fastcar, 0, "Choose a car");
  757. AddMenuItem(fastcar,0,"Comet");//480
  758. AddMenuItem(fastcar,0,"Buffalo");//402
  759. AddMenuItem(fastcar,0,"Cheetah");//415
  760. AddMenuItem(fastcar,0,"Euros");//587
  761. AddMenuItem(fastcar,0,"Hotring Racer");//494
  762. AddMenuItem(fastcar,0,"Infernus");//411
  763. AddMenuItem(fastcar,0,"Phoenix");//603
  764. AddMenuItem(fastcar,0,"Super GT");//506
  765. AddMenuItem(fastcar,0,"Turismo");//451
  766. AddMenuItem(fastcar,0,"ZR-350");//477
  767. AddMenuItem(fastcar,0,"Bullet");//541
  768. AddMenuItem(fastcar,0,"Return");
  769.  
  770. Othercars = CreateMenu("~b~Other Vehicles",2, 55.0, 200.0, 100.0, 80.0);
  771. SetMenuColumnHeader(Othercars, 0, "Choose a car?");
  772. AddMenuItem(Othercars,0,"Monster Truck");//556
  773. AddMenuItem(Othercars,0,"Trashmaster");//408
  774. AddMenuItem(Othercars,0,"Bus");//431
  775. AddMenuItem(Othercars,0,"Coach");//437
  776. AddMenuItem(Othercars,0,"Enforcer");//427
  777. AddMenuItem(Othercars,0,"Rhino (Tank)");//432
  778. AddMenuItem(Othercars,0,"S.W.A.T.Truck");//601
  779. AddMenuItem(Othercars,0,"Cement Truck");//524
  780. AddMenuItem(Othercars,0,"Flatbed");//455
  781. AddMenuItem(Othercars,0,"BF Injection");//424
  782. AddMenuItem(Othercars,0,"Dune");//573
  783. AddMenuItem(Othercars,0,"Return");
  784.  
  785. bikes = CreateMenu("~b~Bikes",2, 55.0, 200.0, 100.0, 80.0);
  786. SetMenuColumnHeader(bikes, 0, "Choose a bike");
  787. AddMenuItem(bikes,0,"BF-400");
  788. AddMenuItem(bikes,0,"BMX");
  789. AddMenuItem(bikes,0,"Faggio");
  790. AddMenuItem(bikes,0,"FCR-900");
  791. AddMenuItem(bikes,0,"Freeway");
  792. AddMenuItem(bikes,0,"NRG-500");
  793. AddMenuItem(bikes,0,"PCJ-600");
  794. AddMenuItem(bikes,0,"Pizzaboy");
  795. AddMenuItem(bikes,0,"Quad");
  796. AddMenuItem(bikes,0,"Sanchez");
  797. AddMenuItem(bikes,0,"Wayfarer");
  798. AddMenuItem(bikes,0,"Return");
  799.  
  800. boats = CreateMenu("~b~Boats",2, 55.0, 200.0, 100.0, 80.0);
  801. SetMenuColumnHeader(boats, 0, "Choose a boat");
  802. AddMenuItem(boats,0,"Coastguard");//472
  803. AddMenuItem(boats,0,"Dingy");//473
  804. AddMenuItem(boats,0,"Jetmax");//493
  805. AddMenuItem(boats,0,"Launch");//595
  806. AddMenuItem(boats,0,"Marquis");//484
  807. AddMenuItem(boats,0,"Predator");//430
  808. AddMenuItem(boats,0,"Reefer");//453
  809. AddMenuItem(boats,0,"Speeder");//452
  810. AddMenuItem(boats,0,"Squallo");//446
  811. AddMenuItem(boats,0,"Tropic");//454
  812. AddMenuItem(boats,0,"Return");
  813.  
  814. planes = CreateMenu("~b~Planes",2, 55.0, 200.0, 100.0, 80.0);
  815. SetMenuColumnHeader(planes, 0, "Choose a plane");
  816. AddMenuItem(planes,0,"Andromada");//592
  817. AddMenuItem(planes,0,"AT400");//577
  818. AddMenuItem(planes,0,"Beagle");//511
  819. AddMenuItem(planes,0,"Cropduster");//512
  820. AddMenuItem(planes,0,"Dodo");//593
  821. AddMenuItem(planes,0,"Hydra");//520
  822. AddMenuItem(planes,0,"Nevada");//553
  823. AddMenuItem(planes,0,"Rustler");//476
  824. AddMenuItem(planes,0,"Shamal");//519
  825. AddMenuItem(planes,0,"Skimmer");//460
  826. AddMenuItem(planes,0,"Stuntplane");//513
  827. AddMenuItem(planes,0,"Return");
  828.  
  829. helicopters = CreateMenu("~b~Helicopters",2, 55.0, 200.0, 100.0, 80.0);
  830. SetMenuColumnHeader(helicopters, 0, "Choose a helicopter");
  831. AddMenuItem(helicopters,0,"Cargobob");//
  832. AddMenuItem(helicopters,0,"Hunter");//
  833. AddMenuItem(helicopters,0,"Leviathan");//
  834. AddMenuItem(helicopters,0,"Maverick");//
  835. AddMenuItem(helicopters,0,"News Chopper");//
  836. AddMenuItem(helicopters,0,"Police Maverick");//
  837. AddMenuItem(helicopters,0,"Raindance");//
  838. AddMenuItem(helicopters,0,"Seasparrow");//
  839. AddMenuItem(helicopters,0,"Sparrow");//
  840. AddMenuItem(helicopters,0,"Return");
  841.  
  842. XWeapons = CreateMenu("~b~Weapons ~g~Main Menu",2, 55.0, 200.0, 100.0, 80.0);
  843. SetMenuColumnHeader(XWeapons, 0, "Choose a weapon");
  844. AddMenuItem(XWeapons,0,"Desert Eagle");//0
  845. AddMenuItem(XWeapons,0,"M4");
  846. AddMenuItem(XWeapons,0,"Sawnoff Shotgun");
  847. AddMenuItem(XWeapons,0,"Combat Shotgun");
  848. AddMenuItem(XWeapons,0,"UZI");
  849. AddMenuItem(XWeapons,0,"Rocket Launcher");
  850. AddMenuItem(XWeapons,0,"Minigun");//6
  851. AddMenuItem(XWeapons,0,"Sniper Rifle");
  852. AddMenuItem(XWeapons,0,"Big Weapons");
  853. AddMenuItem(XWeapons,0,"Small Weapons");//9
  854. AddMenuItem(XWeapons,0,"More");
  855. AddMenuItem(XWeapons,0,"Return");//11
  856.  
  857. XWeaponsBig = CreateMenu("~b~Weapons ~g~Big Weapons",2, 55.0, 200.0, 100.0, 80.0);
  858. SetMenuColumnHeader(XWeaponsBig, 0, "Choose a weapon");
  859. AddMenuItem(XWeaponsBig,0,"Shotgun");
  860. AddMenuItem(XWeaponsBig,0,"AK-47");
  861. AddMenuItem(XWeaponsBig,0,"Country Rifle");
  862. AddMenuItem(XWeaponsBig,0,"HS Rocket Launcher");
  863. AddMenuItem(XWeaponsBig,0,"Flamethrower");
  864. AddMenuItem(XWeaponsBig,0,"SMG");
  865. AddMenuItem(XWeaponsBig,0,"TEC9");
  866. AddMenuItem(XWeaponsBig,0,"Return");
  867.  
  868. XWeaponsSmall = CreateMenu("~b~Senjata ~g~Senjata Kecil",2, 55.0, 200.0, 100.0, 80.0);
  869. SetMenuColumnHeader(XWeaponsBig, 0, "Pilih Senjata");
  870. AddMenuItem(XWeaponsSmall,0,"9mm");
  871. AddMenuItem(XWeaponsSmall,0,"Silenced 9mm");
  872. AddMenuItem(XWeaponsSmall,0,"Molotov Cocktail");
  873. AddMenuItem(XWeaponsSmall,0,"Fire Extinguisher");
  874. AddMenuItem(XWeaponsSmall,0,"Spraycan");
  875. AddMenuItem(XWeaponsSmall,0,"Frag Grenades");
  876. AddMenuItem(XWeaponsSmall,0,"Katana");
  877. AddMenuItem(XWeaponsSmall,0,"Chainsaw");
  878. AddMenuItem(XWeaponsSmall,0,"Return");
  879.  
  880. XWeaponsMore = CreateMenu("~b~Senjata ~g~Senjata Besar",2, 55.0, 200.0, 100.0, 80.0);
  881. SetMenuColumnHeader(XWeaponsBig, 0, "Pilih Senjata");
  882. AddMenuItem(XWeaponsMore,0,"Jetpack");
  883. AddMenuItem(XWeaponsMore,0,"Knife");
  884. AddMenuItem(XWeaponsMore,0,"Flowers");
  885. AddMenuItem(XWeaponsMore,0,"Camera");
  886. AddMenuItem(XWeaponsMore,0,"Pool Cue");
  887. AddMenuItem(XWeaponsMore,0,"Baseball Bat");
  888. AddMenuItem(XWeaponsMore,0,"Golf Club");
  889. AddMenuItem(XWeaponsMore,0,"MAX AMMO");
  890. AddMenuItem(XWeaponsMore,0,"Return");
  891.  
  892. LTele = CreateMenu("Teleports", 2, 55.0, 200.0, 100.0, 80.0);
  893. SetMenuColumnHeader(LTele, 0, "Teleport to where?");
  894. AddMenuItem(LTele, 0, "Las Venturas");//0
  895. AddMenuItem(LTele, 0, "Los Santos");//1
  896. AddMenuItem(LTele, 0, "San Fierro");//2
  897. AddMenuItem(LTele, 0, "The Desert");//3
  898. AddMenuItem(LTele, 0, "Flint Country");//4
  899. AddMenuItem(LTele, 0, "Mount Chiliad");//5
  900. AddMenuItem(LTele, 0, "Interiors");//6
  901. AddMenuItem(LTele, 0, "Return");//8
  902.  
  903. LasVenturasMenu = CreateMenu("Las Venturas", 2, 55.0, 200.0, 100.0, 80.0);
  904. SetMenuColumnHeader(LasVenturasMenu, 0, "Teleport to where?");
  905. AddMenuItem(LasVenturasMenu, 0, "The Strip");//0
  906. AddMenuItem(LasVenturasMenu, 0, "Come-A-Lot");//1
  907. AddMenuItem(LasVenturasMenu, 0, "LV Airport");//2
  908. AddMenuItem(LasVenturasMenu, 0, "KACC Military Fuels");//3
  909. AddMenuItem(LasVenturasMenu, 0, "Yellow Bell Golf Club");//4
  910. AddMenuItem(LasVenturasMenu, 0, "Baseball Pitch");//5
  911. AddMenuItem(LasVenturasMenu, 0, "Return");//6
  912.  
  913. LosSantosMenu = CreateMenu("Los Santos", 2, 55.0, 200.0, 100.0, 80.0);
  914. SetMenuColumnHeader(LosSantosMenu, 0, "Teleport to where?");
  915. AddMenuItem(LosSantosMenu, 0, "Ganton");//0
  916. AddMenuItem(LosSantosMenu, 0, "LS Airport");//1
  917. AddMenuItem(LosSantosMenu, 0, "Ocean Docks");//2
  918. AddMenuItem(LosSantosMenu, 0, "Pershing Square");//3
  919. AddMenuItem(LosSantosMenu, 0, "Verdant Bluffs");//4
  920. AddMenuItem(LosSantosMenu, 0, "Santa Maria Beach");//5
  921. AddMenuItem(LosSantosMenu, 0, "Mulholland");//6
  922. AddMenuItem(LosSantosMenu, 0, "Richman");//7
  923. AddMenuItem(LosSantosMenu, 0, "Return");//8
  924.  
  925. SanFierroMenu = CreateMenu("San Fierro", 2, 55.0, 200.0, 100.0, 80.0);
  926. SetMenuColumnHeader(SanFierroMenu, 0, "Teleport to where?");
  927. AddMenuItem(SanFierroMenu, 0, "SF Station");//0
  928. AddMenuItem(SanFierroMenu, 0, "SF Airport");//1
  929. AddMenuItem(SanFierroMenu, 0, "Ocean Flats");//2
  930. AddMenuItem(SanFierroMenu, 0, "Avispa Country Club");//3
  931. AddMenuItem(SanFierroMenu, 0, "Easter Basin (docks)");//4
  932. AddMenuItem(SanFierroMenu, 0, "Esplanade North");//5
  933. AddMenuItem(SanFierroMenu, 0, "Battery Point");//6
  934. AddMenuItem(SanFierroMenu, 0, "Return");//7
  935.  
  936. DesertMenu = CreateMenu("The Desert", 2, 55.0, 200.0, 100.0, 80.0);
  937. SetMenuColumnHeader(DesertMenu, 0, "Teleport to where?");
  938. AddMenuItem(DesertMenu, 0, "Aircraft Graveyard");//0
  939. AddMenuItem(DesertMenu, 0, "Area 51");//1
  940. AddMenuItem(DesertMenu, 0, "The Big Ear");//2
  941. AddMenuItem(DesertMenu, 0, "The Sherman Dam");//3
  942. AddMenuItem(DesertMenu, 0, "Las Barrancas");//4
  943. AddMenuItem(DesertMenu, 0, "El Quebrados");//5
  944. AddMenuItem(DesertMenu, 0, "Octane Springs");//6
  945. AddMenuItem(DesertMenu, 0, "Return");//7
  946.  
  947. FlintMenu = CreateMenu("Flint Country", 2, 55.0, 200.0, 100.0, 80.0);
  948. SetMenuColumnHeader(FlintMenu, 0, "Teleport to where?");
  949. AddMenuItem(FlintMenu, 0, "The Lake");//0
  950. AddMenuItem(FlintMenu, 0, "Leafy Hollow");//1
  951. AddMenuItem(FlintMenu, 0, "The Farm");//2
  952. AddMenuItem(FlintMenu, 0, "Shady Cabin");//3
  953. AddMenuItem(FlintMenu, 0, "Flint Range");//4
  954. AddMenuItem(FlintMenu, 0, "Becon Hill");//5
  955. AddMenuItem(FlintMenu, 0, "Fallen Tree");//6
  956. AddMenuItem(FlintMenu, 0, "Return");//7
  957.  
  958. MountChiliadMenu = CreateMenu("Mount Chiliad", 2, 55.0, 200.0, 100.0, 80.0);
  959. SetMenuColumnHeader(MountChiliadMenu, 0, "Teleport to where?");
  960. AddMenuItem(MountChiliadMenu, 0, "Chiliad Jump");//0
  961. AddMenuItem(MountChiliadMenu, 0, "Bottom Of Chiliad");//1
  962. AddMenuItem(MountChiliadMenu, 0, "Highest Point");//2
  963. AddMenuItem(MountChiliadMenu, 0, "Chiliad Path");//3
  964. AddMenuItem(MountChiliadMenu, 0, "Return");//7
  965.  
  966. InteriorsMenu = CreateMenu("Interiors", 2, 55.0, 200.0, 130.0, 80.0);
  967. SetMenuColumnHeader(InteriorsMenu, 0, "Teleport to where?");
  968. AddMenuItem(InteriorsMenu, 0, "Planning Department");//0
  969. AddMenuItem(InteriorsMenu, 0, "LV PD");//1
  970. AddMenuItem(InteriorsMenu, 0, "Pizza Stack");//2
  971. AddMenuItem(InteriorsMenu, 0, "RC Battlefield");//3
  972. AddMenuItem(InteriorsMenu, 0, "Caligula's Casino");//4
  973. AddMenuItem(InteriorsMenu, 0, "Big Smoke's Crack Palace");//5
  974. AddMenuItem(InteriorsMenu, 0, "Madd Dogg's Mansion");//6
  975. AddMenuItem(InteriorsMenu, 0, "Dirtbike Stadium");//7
  976. AddMenuItem(InteriorsMenu, 0, "Vice Stadium (duel)");//8
  977. AddMenuItem(InteriorsMenu, 0, "Ammu-nation");//9
  978. AddMenuItem(InteriorsMenu, 0, "Atrium");//7
  979. AddMenuItem(InteriorsMenu, 0, "Return");//8
  980. #endif
  981.  
  982. for(new i = 0; i < MAX_PLAYERS; i++) if(IsPlayerConnected(i)) OnPlayerConnect(i);
  983. for(new i = 1; i < MAX_CHAT_LINES; i++) Chat[i] = "<none>";
  984. for(new i = 1; i < MAX_REPORTS; i++) Reports[i] = "<none>";
  985.  
  986. return 1;
  987. }
  988. stock IsPlayerInArea(playerid, Float:MinX, Float:MinY, Float:MaxX, Float:MaxY)
  989. {
  990. new Float:X, Float:Y, Float:Z;
  991.  
  992. GetPlayerPos(playerid, X, Y, Z);
  993. if(X >= MinX && X <= MaxX && Y >= MinY && Y <= MaxY) {
  994. return 1;
  995. }
  996. return 0;
  997. }
  998. public OnGameModeExit()
  999. {
  1000. //=======
  1001. SaveStats();
  1002. #if defined USE_MENUS
  1003. DestroyAllMenus();
  1004. #endif
  1005.  
  1006. return 1;
  1007. }
  1008. public SaveStats()
  1009. {
  1010. for(new i = 0; i < MAX_PLAYERS; i++)
  1011. {
  1012. GameTextForPlayer(i, "~g~Your Stats Auto Saved", 2500, 3);
  1013. SavePlayer(i);
  1014. }
  1015. return 1;
  1016. }
  1017. public OnPlayerRequestClass(playerid, classid)
  1018. {
  1019. Update3DTextLabelText(RankLabel[playerid], 0xFFFFFFFF, " ");
  1020. new Float:x, Float:y, Float:z;
  1021. GetPlayerPos(playerid, x,y,z);
  1022. switch(classid)
  1023. {
  1024. case 0:
  1025. {
  1026. // Kalimantan //
  1027. SetPlayerInterior(playerid,3);
  1028. SetPlayerPos(playerid,349.0453,193.2271,1014.1797);
  1029. SetPlayerFacingAngle(playerid,286.25);
  1030. SetPlayerCameraPos(playerid,352.9164,194.5702,1014.1875);
  1031. SetPlayerCameraLookAt(playerid,349.0453,193.2271,1014.1797);
  1032. TextDrawShowForPlayer(playerid, P);
  1033. TextDrawHideForPlayer(playerid, T);
  1034. SetPlayerTeam(playerid, 1);
  1035. SetPlayerSkin(playerid, 285);
  1036. gTeam[playerid] = Polisi;
  1037. SetPlayerColor(playerid, CPolisi);
  1038. Update3DTextLabelText(RankLabel[playerid], 0xFFFFFFFF, " ");
  1039. }
  1040. case 1:
  1041. {
  1042. // Teroris //
  1043. SetPlayerInterior(playerid,3);
  1044. SetPlayerPos(playerid,349.0453,193.2271,1014.1797);
  1045. SetPlayerFacingAngle(playerid,286.25);
  1046. SetPlayerCameraPos(playerid,352.9164,194.5702,1014.1875);
  1047. SetPlayerCameraLookAt(playerid,349.0453,193.2271,1014.1797);
  1048. TextDrawShowForPlayer(playerid, T);
  1049. TextDrawHideForPlayer(playerid, P);
  1050. SetPlayerSkin(playerid, 28);
  1051. SetPlayerTeam(playerid, 2);
  1052. gTeam[playerid] = Teroris;
  1053. SetPlayerColor(playerid, CTeroris);
  1054. Update3DTextLabelText(RankLabel[playerid], 0xFFFFFFFF, " ");
  1055. }
  1056. }
  1057. return 1;
  1058. }
  1059.  
  1060. public OnPlayerConnect(playerid)
  1061. {
  1062. Helmet[playerid] = 0;
  1063. IsPlayerUsingAnims[playerid] = 0;
  1064. IsPlayerAnimsPreloaded[playerid] = 0;
  1065. TextDrawShowForPlayer(playerid, Textdraw0);
  1066. PlayAudioStreamForPlayer(playerid,"http://www.hit104.com/listen.pls");
  1067. new pName[24];
  1068. new string1[128];
  1069. GetPlayerName(playerid, pName, 24);
  1070. format(string1, 128, "* %s has Join Server {3200FF} Polisi VS Teroris [TDM]", pName);
  1071. SendClientMessageToAll(0x19FF00FF, string1);
  1072.  
  1073.  
  1074. if (udb_Exists(PlayerName2(playerid)))
  1075. {
  1076. if(PlayerInfo[playerid][LoggedIn] == 0)
  1077. {
  1078. new string[200];
  1079. format(string, sizeof(string),""cblue"Welcome"cred" %s "cblue"You already registered\nEnter your password to {5FFF00}Login", PlayerName2(playerid));
  1080. ShowPlayerDialog(playerid, 125, DIALOG_STYLE_PASSWORD, "Login",string,"Login","Quit");
  1081. }
  1082. }
  1083. if (!udb_Exists(PlayerName2(playerid)))
  1084. {
  1085. if(PlayerInfo[playerid][Registered] == 0)
  1086. {
  1087. new string[200];
  1088. format(string, sizeof(string),""cgreen"Welcome"cred" %s "cgreen"You not registered\nEnter your password to {FF0000}Register", PlayerName2(playerid));
  1089. ShowPlayerDialog(playerid, 126, DIALOG_STYLE_PASSWORD, "Register",string,"Register","Quit");
  1090. }
  1091. }
  1092. if(PlayerInfo[playerid][LoggedIn] == 1)
  1093. {
  1094. new pname[128];
  1095. new file[128];
  1096. GetPlayerName(playerid, pname, sizeof(pname));
  1097. format(file, sizeof(file), savefolder,pname);
  1098. if(!dini_Exists(file))
  1099. {
  1100. dini_Create(file);
  1101. dini_IntSet(file, "Score", 10);
  1102. dini_IntSet(file, "Money", 15000);
  1103. SetPlayerScore(playerid, dini_Int(file, "Score"));
  1104. SetPlayerMoney(playerid, dini_Int(file, "Money"));
  1105. }
  1106. else
  1107. {
  1108. SetPlayerScore(playerid, dini_Int(file, "Score"));
  1109. SetPlayerMoney(playerid, dini_Int(file, "Money"));
  1110. }
  1111. }
  1112.  
  1113. //-----
  1114. SetPlayerWorldBounds(playerid, 9999.9, -9999.9, 9999.9, -9999.9 );
  1115. //-----
  1116. //-------
  1117. LastPm[playerid] = -1;
  1118. Spectating[playerid] = 0;
  1119. FirstSpawn[playerid] = 1;
  1120. rconAttempts[playerid] = 0;
  1121.  
  1122. //=================================================
  1123. SendClientMessage(playerid, -1," ");
  1124. SendClientMessage(playerid, -1," ");
  1125. SendClientMessage(playerid, -1," ");
  1126. SendClientMessage(playerid, -1," ");
  1127. SendClientMessage(playerid, -1," ");
  1128. SendClientMessage(playerid, -1," ");
  1129. SendClientMessage(playerid, -1," ");
  1130. SendClientMessage(playerid, -1," ");
  1131. SendClientMessage(playerid, -1," ");
  1132. SendClientMessage(playerid, -1," ");
  1133. SendClientMessage(playerid, -1," ");
  1134. SendClientMessage(playerid, -1," ");
  1135. SendClientMessage(playerid, -1," ");
  1136. SendClientMessage(playerid, -1," ");
  1137. SendClientMessage(playerid, -1," ");
  1138. SendClientMessage(playerid, -1," ");
  1139. SendClientMessage(playerid, -1," ");
  1140. SendClientMessage(playerid, -1," ");
  1141. SendClientMessage(playerid, -1," ");
  1142. SendClientMessage(playerid, -1," ");
  1143.  
  1144. LastPm[playerid] = -1;
  1145. Spectating[playerid] = 0;
  1146. FirstSpawn[playerid] = 1;
  1147. rconAttempts[playerid] = 0;
  1148.  
  1149. //==================================================
  1150. IsPlayerCapturing[playerid][SNAKE] = 0;
  1151. IsPlayerCapturing[playerid][BAY] = 0;
  1152. IsPlayerCapturing[playerid][BIG] = 0;
  1153. IsPlayerCapturing[playerid][ARMY] = 0;
  1154. IsPlayerCapturing[playerid][PETROL] = 0;
  1155. IsPlayerCapturing[playerid][OIL] = 0;
  1156.  
  1157.  
  1158. CountVar[playerid][SNAKE] = 25;
  1159. CountVar[playerid][BAY] = 25;
  1160. CountVar[playerid][BIG] = 25;
  1161. CountVar[playerid][PETROL] = 25;
  1162. CountVar[playerid][ARMY] = 25;
  1163. CountVar[playerid][OIL] = 25;
  1164.  
  1165. DND[playerid] = 0;
  1166.  
  1167. PlayerInfo[playerid][dRank] = 0;
  1168. PlayerInfo[playerid][Deaths] = 0;
  1169. PlayerInfo[playerid][Kills] = 0;
  1170. PlayerInfo[playerid][Jailed] = 0;
  1171. PlayerInfo[playerid][Frozen] = 0;
  1172. PlayerInfo[playerid][Level] = 0;
  1173. PlayerInfo[playerid][Helper] = 0;
  1174. PlayerInfo[playerid][OnDuty] = 0;
  1175. PlayerInfo[playerid][LoggedIn] = 0;
  1176. PlayerInfo[playerid][Registered] = 0;
  1177. PlayerInfo[playerid][God] = 0;
  1178. PlayerInfo[playerid][GodCar] = 0;
  1179. PlayerInfo[playerid][TimesSpawned] = 0;
  1180. PlayerInfo[playerid][Muted] = 0;
  1181. PlayerInfo[playerid][MuteWarnings] = 0;
  1182. PlayerInfo[playerid][Warnings] = 0;
  1183. PlayerInfo[playerid][Caps] = 0;
  1184. PlayerInfo[playerid][DoorsLocked] = 0;
  1185. PlayerInfo[playerid][pCar] = -1;
  1186. PlayerInfo[playerid][SpamCount] = 0;
  1187. PlayerInfo[playerid][SpamTime] = 0;
  1188. PlayerInfo[playerid][PingCount] = 0;
  1189. PlayerInfo[playerid][PingTime] = 0;
  1190. PlayerInfo[playerid][FailLogin] = 0;
  1191. PlayerInfo[playerid][blip] = 0;
  1192. PlayerInfo[playerid][ConnectTime] = gettime();
  1193. AntiSK[playerid] = 0;
  1194. //------------------------------------------------------
  1195. Attach3DTextLabelToPlayer(RankLabel[playerid], playerid, 0.0, 0.0, 0.5);
  1196. //------------------------------------------------------
  1197. new PlayerName[MAX_PLAYER_NAME], string[128]; //file[256];
  1198. GetPlayerName(playerid, PlayerName, MAX_PLAYER_NAME);
  1199. new tmp3[50]; GetPlayerIp(playerid,tmp3,50);
  1200. //-----------------------------------------------------
  1201. //-----------------------------------------------------
  1202. //-----------------------------------------------------
  1203. if(ServerInfo[NameKick] == 1) {
  1204. for(new s = 0; s < BadNameCount; s++) {
  1205. if(!strcmp(BadNames[s],PlayerName,true)) {
  1206. SendClientMessage(playerid,Merah2, "Nama kamu ada di daftar hitam ! Kamu telah di keluarkan dari server");
  1207. format(string,sizeof(string),"%s ID:%d telah automatis di kick. (Reason: Nama Terlarang)",PlayerName,playerid);
  1208. SendClientMessageToAll(Merah2, string); print(string);
  1209. SaveToFile("KickLog",string); Kick(playerid);
  1210. return 1;
  1211. }
  1212. }
  1213. }
  1214. //-----------------------------------------------------
  1215. if(ServerInfo[PartNameKick] == 1) {
  1216. for(new s = 0; s < BadPartNameCount; s++) {
  1217. new pos;
  1218. while((pos = strfind(PlayerName,BadPartNames[s],true)) != -1) for(new i = pos, j = pos + strlen(BadPartNames[s]); i < j; i++)
  1219. {
  1220. SendClientMessage(playerid,Merah2, "Nama kamu tidak di izinkan di server ini ! Kamu telah di keluarkan dari server");
  1221. format(string,sizeof(string),"%s ID:%d telah automatis di kick. (Alasan: Nama Terlarang)",PlayerName,playerid);
  1222. SendClientMessageToAll(Merah2, string); print(string);
  1223. SaveToFile("KickLog",string); Kick(playerid);
  1224. return 1;
  1225. }
  1226. }
  1227. }
  1228. //-----------------------------------------------------
  1229. if(ServerInfo[Locked] == 1) {
  1230. PlayerInfo[playerid][AllowedIn] = false;
  1231. SendClientMessage(playerid,Merah2,"Server ini dikunci! kamu mempunyai waktu 20 detik untuk mengisi Server Password !");
  1232. SendClientMessage(playerid,Merah2," Tulis /password [password]");
  1233. LockKickTimer[playerid] = SetTimerEx("AutoKick", 20000, 0, "i", playerid);
  1234. }
  1235. //-----------------------------------------------------
  1236. if(strlen(dini_Get("ladmin/config/aka.txt", tmp3)) == 0) dini_Set("ladmin/config/aka.txt", tmp3, PlayerName);
  1237. else
  1238. {
  1239. if( strfind( dini_Get("ladmin/config/aka.txt", tmp3), PlayerName, true) == -1 )
  1240. {
  1241. format(string,sizeof(string),"%s,%s", dini_Get("ladmin/config/aka.txt",tmp3), PlayerName);
  1242. dini_Set("ladmin/config/aka.txt", tmp3, string);
  1243. }
  1244. }
  1245. //-----------------------------------------------------
  1246. /*TextDrawShowForPlayer(playerid, tBox);
  1247. for(new line; line<15; line++)
  1248. {
  1249. TextDrawShowForPlayer(playerid, Message[line]);
  1250. }
  1251. */
  1252. Streak[playerid] = 0;
  1253.  
  1254. if(tCP[SNAKE] == TEAM_NONE) GangZoneShowForAll(Zone[SNAKE], -66);
  1255. else if(tCP[SNAKE] == Polisi) GangZoneShowForAll(Zone[SNAKE], CPolisi);
  1256. else if(tCP[SNAKE] == Teroris) GangZoneShowForAll(Zone[SNAKE], CTeroris);
  1257. //------
  1258. if(tCP[BAY] == TEAM_NONE) GangZoneShowForAll(Zone[BAY], -66);
  1259. else if(tCP[BAY] == Polisi) GangZoneShowForAll(Zone[BAY], CPolisi);
  1260. else if(tCP[BAY] == Teroris) GangZoneShowForAll(Zone[BAY], CTeroris);
  1261. //------
  1262. if(tCP[BIG] == TEAM_NONE) GangZoneShowForAll(Zone[BIG], -66);
  1263. else if(tCP[BIG] == Polisi) GangZoneShowForAll(Zone[BIG], CPolisi);
  1264. else if(tCP[BIG] == Teroris) GangZoneShowForAll(Zone[BIG], CTeroris);
  1265. //------
  1266. if(tCP[ARMY] == TEAM_NONE) GangZoneShowForAll(Zone[ARMY], -66);
  1267. else if(tCP[ARMY] == Polisi) GangZoneShowForAll(Zone[ARMY], CPolisi);
  1268. else if(tCP[ARMY] == Teroris) GangZoneShowForAll(Zone[ARMY], CTeroris);
  1269. //------
  1270. if(tCP[PETROL] == TEAM_NONE) GangZoneShowForAll(Zone[PETROL], -66);
  1271. else if(tCP[PETROL] == Polisi) GangZoneShowForAll(Zone[PETROL], CPolisi);
  1272. else if(tCP[PETROL] == Teroris) GangZoneShowForAll(Zone[PETROL], CTeroris);
  1273. //------
  1274. if(tCP[OIL] == TEAM_NONE) GangZoneShowForAll(Zone[OIL], -66);
  1275. else if(tCP[OIL] == Polisi) GangZoneShowForAll(Zone[OIL], CPolisi);
  1276. else if(tCP[OIL] == Teroris) GangZoneShowForAll(Zone[OIL], CTeroris);
  1277. return 1;
  1278. }
  1279. forward UpdateTextdraw(playerid);
  1280. public UpdateTextdraw(playerid)
  1281. {
  1282. if(gTeam[playerid] == Polisi)
  1283. {
  1284. new string[150];
  1285. format(string, sizeof(string),"~g~~h~Team : ~b~~h~%s", GetTeamName(playerid));
  1286. TextDrawSetString(Textdraw6[playerid], string);
  1287. }
  1288. if(gTeam[playerid] == Teroris)
  1289. {
  1290. new string[150];
  1291. format(string, sizeof(string),"~g~~h~Team : ~r~~h~%s", GetTeamName(playerid));
  1292. TextDrawSetString(Textdraw6[playerid], string);
  1293. }
  1294. }
  1295. public UpdateLabelText(playerid)
  1296. {
  1297. new string[120];
  1298. format(string, sizeof(string),"%s - %s",GetRankName(playerid), GetTeamName(playerid), GetPlayerScore(playerid));
  1299. if(gTeam[playerid] == Polisi)
  1300. {
  1301. Update3DTextLabelText(RankLabel[playerid], 0xFFFFFFFF, " ");
  1302. Update3DTextLabelText(RankLabel[playerid], 0x2800FFFF, string);//Blue
  1303. }
  1304. if(gTeam[playerid] == Teroris)
  1305. {
  1306. Update3DTextLabelText(RankLabel[playerid], 0xFFFFFFFF, " ");
  1307. Update3DTextLabelText(RankLabel[playerid], 0xFF0000FF, string);//Red
  1308. }
  1309. return 1;
  1310. }
  1311. public OnPlayerDisconnect(playerid, reason)
  1312. {
  1313.  
  1314. new pName[24];
  1315. new string1[128];
  1316. GetPlayerName(playerid, pName, 24);
  1317. format(string1, 128, "* %s has Leave Server {00FF00} Polisi VS Teroris [TDM]", pName);
  1318. SendClientMessageToAll(0xF50000FF, string1);
  1319. TextDrawHideForPlayer(playerid, Textdraw6[playerid]);
  1320. TextDrawSetString(Textdraw6[playerid]," ");
  1321. TextDrawHideForPlayer(playerid, Textdraw11[playerid]);
  1322. TextDrawHideForPlayer(playerid, CountText[playerid]);
  1323. Streak[playerid] = 0;
  1324. rconAttempts[playerid] = 0;
  1325. LastPm[playerid] = -1;
  1326. Update3DTextLabelText(RankLabel[playerid], 0xFFFFFFFF, " ");
  1327. TextDrawHideForPlayer(playerid, Textdraw2);
  1328. TextDrawHideForPlayer(playerid, Textdraw3);
  1329. TextDrawHideForPlayer(playerid, Textdraw4);
  1330. TextDrawHideForPlayer(playerid, Textdraw5);
  1331. TextDrawHideForPlayer(playerid, Textdraw7[playerid]);
  1332. TextDrawHideForPlayer(playerid, Textdraw8[playerid]);
  1333. TextDrawHideForPlayer(playerid, Textdraw9);
  1334. TextDrawHideForPlayer(playerid, Textdraw10);
  1335.  
  1336. UpdateTimer[playerid] = KillTimer(UpdateTimer[playerid]);
  1337. SetPVarInt(playerid,"LastID",-1);
  1338. new PlayerName[MAX_PLAYER_NAME];
  1339. GetPlayerName(playerid, PlayerName, sizeof(PlayerName));
  1340.  
  1341. if(PlayerInfo[playerid][LoggedIn] == 1) SavePlayer(playerid);
  1342. if(udb_Exists(PlayerName2(playerid))) dUserSetINT(PlayerName2(playerid)).("loggedin",0);
  1343. PlayerInfo[playerid][LoggedIn] = 0;
  1344. PlayerInfo[playerid][Level] = 0;
  1345. PlayerInfo[playerid][Jailed] = 0;
  1346. PlayerInfo[playerid][Frozen] = 0;
  1347.  
  1348. if(PlayerInfo[playerid][Jailed] == 1) KillTimer( JailTimer[playerid] );
  1349. if(PlayerInfo[playerid][Frozen] == 1) KillTimer( FreezeTimer[playerid] );
  1350. if(ServerInfo[Locked] == 1) KillTimer( LockKickTimer[playerid] );
  1351. if(PlayerInfo[playerid][pCar] != -1) CarDeleter(PlayerInfo[playerid][pCar]);
  1352. new file[128];
  1353. if(dini_Exists(file))
  1354. {
  1355. dini_IntSet(file, "Money", GetPlayerMoney(playerid));
  1356. dini_IntSet(file, "Score", GetPlayerScore(playerid));
  1357. }
  1358. //==========================================================================
  1359. if(Captured[playerid][SNAKE] == 0 && IsPlayerCapturing[playerid][SNAKE] == 1)
  1360. {
  1361. LeavingSnakeFarm(playerid);
  1362. }
  1363. if(Captured[playerid][BAY] == 0 && IsPlayerCapturing[playerid][BAY] == 1)
  1364. {
  1365. LeavingBay(playerid);
  1366. }
  1367. if(Captured[playerid][BIG] == 0 && IsPlayerCapturing[playerid][BIG] == 1)
  1368. {
  1369. LeavingArea69(playerid);
  1370. }
  1371. if(Captured[playerid][ARMY] == 0 && IsPlayerCapturing[playerid][ARMY] == 1)
  1372. {
  1373. LeavingArmy(playerid);
  1374. }
  1375. if(Captured[playerid][PETROL] == 0 && IsPlayerCapturing[playerid][PETROL] == 1)
  1376. {
  1377. LeavingPetrol(playerid);
  1378. }
  1379. if(Captured[playerid][OIL] == 0 && IsPlayerCapturing[playerid][OIL] == 1)
  1380. {
  1381. LeavingOil(playerid);
  1382. }
  1383. #if defined ENABLE_SPEC
  1384. for(new x=0; x<MAX_PLAYERS; x++)
  1385. if(GetPlayerState(x) == PLAYER_STATE_SPECTATING && PlayerInfo[x][SpecID] == playerid)
  1386. AdvanceSpectate(x);
  1387. #endif
  1388.  
  1389. return 1;
  1390. }
  1391.  
  1392. public OnPlayerSpawn(playerid)
  1393. {
  1394. SetPlayerHealth(playerid, 99999.0);
  1395. SetTimerEx("SpawnProtection", 10000, false, "i", playerid);
  1396. SendClientMessage(playerid, 0x00FF1EFF, "*Anti-Spawn kill protection for 10 seconds!");
  1397. AntiSK[playerid] = 1;
  1398. SetPlayerVirtualWorld(playerid, 0);
  1399. SetPlayerInterior(playerid, 0);
  1400. ResetPlayerWeapons(playerid);
  1401. UpdateLabelText(playerid);
  1402. TextDrawHideForPlayer(playerid, T);
  1403. TextDrawHideForPlayer(playerid, P);
  1404. TextDrawHideForPlayer(playerid, CountText[playerid]);
  1405. UpdateTextdraw(playerid);
  1406.  
  1407. if(gTeam[playerid] == Polisi)
  1408. {
  1409. new rand = random(sizeof(PolisiSpawn));
  1410. SetPlayerPos(playerid, PolisiSpawn[rand][0], PolisiSpawn[rand][1], PolisiSpawn[rand][2]);
  1411. }
  1412. else if(gTeam[playerid] == Teroris)
  1413. {
  1414. new rand = random(sizeof(TerorisSpawn));
  1415. SetPlayerPos(playerid, TerorisSpawn[rand][0], TerorisSpawn[rand][1], TerorisSpawn[rand][2]);
  1416. }
  1417.  
  1418. if(Captured[playerid][SNAKE] == 0 && IsPlayerCapturing[playerid][SNAKE] == 1)
  1419. {
  1420. LeavingSnakeFarm(playerid);
  1421. }
  1422. if(Captured[playerid][BAY] == 0 && IsPlayerCapturing[playerid][BAY] == 1)
  1423. {
  1424. LeavingBay(playerid);
  1425. }
  1426. if(Captured[playerid][BIG] == 0 && IsPlayerCapturing[playerid][BIG] == 1)
  1427. {
  1428. LeavingArea69(playerid);
  1429. }
  1430. if(Captured[playerid][ARMY] == 0 && IsPlayerCapturing[playerid][ARMY] == 1)
  1431. {
  1432. LeavingArmy(playerid);
  1433. }
  1434. if(Captured[playerid][PETROL] == 0 && IsPlayerCapturing[playerid][PETROL] == 1)
  1435. {
  1436. LeavingPetrol(playerid);
  1437. }
  1438. if(Captured[playerid][OIL] == 0 && IsPlayerCapturing[playerid][OIL] == 1)
  1439. {
  1440. LeavingOil(playerid);
  1441. }
  1442. new str[100];
  1443. format(str, sizeof(str),"~r~%s", GetRankName(playerid));
  1444. TextDrawSetString(Textdraw11[playerid], str);
  1445. TextDrawShowForPlayer(playerid, Textdraw11[playerid]);
  1446. if(gTeam[playerid] == Polisi)
  1447. {
  1448. new str[100];
  1449. format(str, sizeof(str),"~g~~h~Team : ~b~~h~Polisi");
  1450. TextDrawSetString(Textdraw6[playerid], str);
  1451. TextDrawShowForPlayer(playerid, Textdraw6[playerid]);
  1452. }
  1453. else if(gTeam[playerid] == Teroris)
  1454. {
  1455. new str[100];
  1456. format(str, sizeof(str),"~g~~h~Team : ~r~~h~Teroris");
  1457. TextDrawSetString(Textdraw6[playerid], str);
  1458. TextDrawShowForPlayer(playerid, Textdraw6[playerid]);
  1459. }
  1460.  
  1461. if(gTeam[playerid] == Polisi)
  1462. {
  1463. SetPlayerTeam(playerid, Polisi);
  1464. SetPlayerColor(playerid, 0x0005FFFF);//bi
  1465. SetPlayerSkin(playerid, 285);
  1466. }
  1467. if(gTeam[playerid] == Teroris)
  1468. {
  1469. SetPlayerTeam(playerid, Teroris);
  1470. SetPlayerColor(playerid, 0xFF000FFF);//me
  1471. SetPlayerSkin(playerid, 28);
  1472. }
  1473. if(PlayerInfo[playerid][OnDuty] == 1)
  1474. {
  1475. SetPlayerHealth(playerid, 99999.0);
  1476. SetPlayerColor(playerid, 0xF600F6FF);
  1477. GivePlayerWeapon(playerid, 38, 9999);
  1478. SetPlayerSkin(playerid, 217);
  1479. }
  1480.  
  1481. PlayerInfo[playerid][Spawned] = 1;
  1482.  
  1483. if(PlayerInfo[playerid][Frozen] == 1) {
  1484. TogglePlayerControllable(playerid,false); return SendClientMessage(playerid,red,"You cant escape your punishment. You Are Still Frozen");
  1485. }
  1486.  
  1487. if(PlayerInfo[playerid][Jailed] == 1) {
  1488. JailPlayer(playerid); return SendClientMessage(playerid,red,"You cant escape your punishment. You Are Still In Jail");
  1489. }
  1490.  
  1491. if(ServerInfo[AdminOnlySkins] == 1) {
  1492. if( (GetPlayerSkin(playerid) == ServerInfo[AdminSkin]) || (GetPlayerSkin(playerid) == ServerInfo[AdminSkin2]) ) {
  1493. if(PlayerInfo[playerid][Level] >= 1)
  1494. GameTextForPlayer(playerid,"~b~Welcome~n~~w~Admin",3000,1);
  1495. else {
  1496. GameTextForPlayer(playerid,"~r~This Skin Is For~n~Administrators~n~Only",4000,1);
  1497. //SetTimerEx("DelayKillPlayer", 2500,0,"d",playerid);
  1498. return 1;
  1499. }
  1500. }
  1501. }
  1502. GangZoneShowForAll(GZ_Polisi, CPolisi); //JAPAN
  1503. GangZoneShowForAll(GZ_Teroris, CTeroris); // UAE
  1504.  
  1505. TextDrawShowForPlayer(playerid, Textdraw1);
  1506. TextDrawShowForPlayer(playerid, Textdraw2);
  1507. TextDrawShowForPlayer(playerid, Textdraw3);
  1508. TextDrawShowForPlayer(playerid, Textdraw4);
  1509. TextDrawShowForPlayer(playerid, Textdraw7[playerid]);
  1510. TextDrawShowForPlayer(playerid, Textdraw8[playerid]);
  1511. TextDrawShowForPlayer(playerid, Textdraw11[playerid]);
  1512. TextDrawShowForPlayer(playerid, Textdraw10);
  1513. TextDrawShowForPlayer(playerid, Textdraw9);
  1514.  
  1515. SetPlayerMapIcon(playerid, 1, 902.11, -1516.06, 13.76, 19, 2); // Map icon Created by Shadow
  1516. SetPlayerMapIcon(playerid, 2, 1041.85, -1337.41, 13.72, 19, 2); // Map icon Created by Shadow
  1517. SetPlayerMapIcon(playerid, 3, 1112.74, -1835.76, 16.60, 6, 2); // Map icon Created by Shadow
  1518. SetPlayerMapIcon(playerid, 4, 1553.62, -1675.78, 16.19, 30, 2); // Map icon Created by Shadow
  1519. SetPlayerMapIcon(playerid, 5, 1120.88, -1494.53, 15.80, 19, 2); // Map icon Created by Shadow
  1520. SetPlayerMapIcon(playerid, 6, 1152.36, -2038.04, 69.00, 19, 2); // Map icon Created by Shadow
  1521. SetPlayerMapIcon(playerid, 7, 739.53, -1433.95, 13.53, 19, 0); // Map icon Created by Shadow
  1522.  
  1523.  
  1524. return 1;
  1525. }
  1526. forward SpawnProtection(playerid);
  1527. public SpawnProtection(playerid)
  1528. {
  1529. SendClientMessage(playerid, 0x2DFF00FF,"*Anti-Spawn kill protection ended!");
  1530. AntiSK[playerid] = 0;
  1531. TogglePlayerControllable(playerid, true);
  1532. SendClientMessage(playerid, -1,"*You are ready to go now.");
  1533. GivePlayerWeapons(playerid);
  1534. if (GetPlayerScore(playerid) >= 0 && GetPlayerScore(playerid) <= 99)
  1535. {
  1536. SetPlayerHealth( playerid, 100 );
  1537. }
  1538. if (GetPlayerScore(playerid) >= 100 && GetPlayerScore(playerid) <= 299)
  1539. {
  1540. SetPlayerHealth(playerid, 100);
  1541. SetPlayerArmour(playerid, 5);
  1542. }
  1543. if (GetPlayerScore(playerid) >= 300 && GetPlayerScore(playerid) <= 499)
  1544. {
  1545. SetPlayerHealth(playerid, 100);
  1546. SetPlayerArmour(playerid, 15);
  1547. }
  1548. if (GetPlayerScore(playerid) >= 500 && GetPlayerScore(playerid) <= 999)
  1549. {
  1550. SetPlayerHealth(playerid, 100);
  1551. SetPlayerArmour(playerid, 25);
  1552. }
  1553. if (GetPlayerScore(playerid) >= 1000 && GetPlayerScore(playerid) <= 1499)
  1554. {
  1555. SetPlayerHealth(playerid, 100);
  1556. SetPlayerArmour(playerid, 35);
  1557. }
  1558. if (GetPlayerScore(playerid) >= 1500 && GetPlayerScore(playerid) <= 1999)
  1559. {
  1560. SetPlayerHealth(playerid, 100);
  1561. SetPlayerArmour(playerid, 45);
  1562. }
  1563. if (GetPlayerScore(playerid) >= 2000 && GetPlayerScore(playerid) <= 2499)
  1564. {
  1565. SetPlayerHealth(playerid, 100);
  1566. SetPlayerArmour(playerid, 55);
  1567. }
  1568. if (GetPlayerScore(playerid) >= 2500 && GetPlayerScore(playerid) <= 4999)
  1569. {
  1570. SetPlayerHealth(playerid, 100);
  1571. SetPlayerArmour(playerid, 65);
  1572. }
  1573. if (GetPlayerScore(playerid) >= 5000 && GetPlayerScore(playerid) <= 9999)
  1574. {
  1575. SetPlayerHealth(playerid, 100);
  1576. SetPlayerArmour(playerid, 85);
  1577. }
  1578. if (GetPlayerScore(playerid) >= 10000)
  1579. {
  1580. SetPlayerHealth(playerid, 100);
  1581. SetPlayerArmour(playerid, 100);
  1582. }
  1583. return 1;
  1584. }
  1585. stock GivePlayerWeapons(playerid)
  1586. {
  1587. if(gTeam[playerid] == Polisi && GetPlayerScore(playerid) >= 0) //&& GetPlayerScore(playerid) <= 99)
  1588. {
  1589. ResetPlayerWeapons(playerid);
  1590. GivePlayerWeapon(playerid, 24, 450); //Deagle
  1591. GivePlayerWeapon(playerid, 29, 450); //MP5
  1592. GivePlayerWeapon(playerid, 31, 550); //M4
  1593. GivePlayerWeapon(playerid, 3, 1); //Senjata Polisi
  1594. }
  1595. if(gTeam[playerid] == Teroris && GetPlayerScore(playerid) >= 0) //&& GetPlayerScore(playerid) <= 99)
  1596. {
  1597. ResetPlayerWeapons(playerid);
  1598. GivePlayerWeapon(playerid, 30, 450); //AK-47
  1599. GivePlayerWeapon(playerid, 25, 100); //shotgun
  1600. GivePlayerWeapon(playerid, 23, 300); //Silenced.
  1601. GivePlayerWeapon(playerid, 4, 1); //Knife.
  1602. //SniperColor(playerid);
  1603. }
  1604. if(gTeam[playerid] == Polisi && GetPlayerScore(playerid) >= 100)// && GetPlayerScore(playerid) <= 499)
  1605. {
  1606. ResetPlayerWeapons(playerid);
  1607. GivePlayerWeapon(playerid, 24, 550); //Deagle
  1608. GivePlayerWeapon(playerid, 29, 550); //MP5
  1609. GivePlayerWeapon(playerid, 31, 650); //M4
  1610. GivePlayerWeapon(playerid, 3, 1); //Senjata Polisi
  1611. GivePlayerWeapon(playerid, 27, 350);//shotgun
  1612. GivePlayerWeapon(playerid, 16, 20);//shotgun
  1613. }
  1614. if(gTeam[playerid] == Teroris && GetPlayerScore(playerid) >= 100)// && GetPlayerScore(playerid) <= 499)
  1615. {
  1616. ResetPlayerWeapons(playerid);
  1617. GivePlayerWeapon(playerid, 30, 550); //AK-47
  1618. GivePlayerWeapon(playerid, 25, 300); //shotgun
  1619. GivePlayerWeapon(playerid, 24, 600); //Silenced.
  1620. GivePlayerWeapon(playerid, 4, 1); //Knife.
  1621. GivePlayerWeapon(playerid, 16, 20);//shotgun
  1622. }
  1623. if(gTeam[playerid] == Polisi && GetPlayerScore(playerid) >= 500)// && GetPlayerScore(playerid) <= 2499)
  1624. {
  1625. ResetPlayerWeapons(playerid);
  1626. GivePlayerWeapon(playerid, 24, 650); //Deagle
  1627. GivePlayerWeapon(playerid, 28, 650); //MP5
  1628. GivePlayerWeapon(playerid, 31, 750); //M4
  1629. GivePlayerWeapon(playerid, 3, 1); //Senjata Polisi
  1630. GivePlayerWeapon(playerid, 27, 450);//shotgun
  1631. GivePlayerWeapon(playerid, 16, 30);//shotgun
  1632. }
  1633. if(gTeam[playerid] == Teroris && GetPlayerScore(playerid) >= 500)// && GetPlayerScore(playerid) <= 2499)
  1634. {
  1635. ResetPlayerWeapons(playerid);
  1636. GivePlayerWeapon(playerid, 30, 550); //AK-47
  1637. GivePlayerWeapon(playerid, 26, 400); //shotgun
  1638. GivePlayerWeapon(playerid, 24, 700); //Silenced.
  1639. GivePlayerWeapon(playerid, 4, 1); //Knife.
  1640. GivePlayerWeapon(playerid, 33, 250); //Rifle
  1641. GivePlayerWeapon(playerid, 16, 30);//shotgun
  1642. }
  1643. if(gTeam[playerid] == Polisi && GetPlayerScore(playerid) >= 2500)// && GetPlayerScore(playerid) <= 9999)
  1644. {
  1645. ResetPlayerWeapons(playerid);
  1646. GivePlayerWeapon(playerid, 24, 750); //Deagle
  1647. GivePlayerWeapon(playerid, 28, 750); //MP5
  1648. GivePlayerWeapon(playerid, 31, 850); //M4
  1649. GivePlayerWeapon(playerid, 3, 1); //Senjata Polisi
  1650. GivePlayerWeapon(playerid, 27, 550);//shotgun
  1651. GivePlayerWeapon(playerid, 35, 250);//Sniper
  1652. GivePlayerWeapon(playerid, 16, 30);//shotgun
  1653. }
  1654. if(gTeam[playerid] == Teroris && GetPlayerScore(playerid) >= 2500)// && GetPlayerScore(playerid) <= 9999)
  1655. {
  1656. ResetPlayerWeapons(playerid);
  1657. GivePlayerWeapon(playerid, 30, 650); //AK-47
  1658. GivePlayerWeapon(playerid, 26, 500); //shotgun
  1659. GivePlayerWeapon(playerid, 24, 800); //Silenced.
  1660. GivePlayerWeapon(playerid, 4, 1); //Knife.
  1661. GivePlayerWeapon(playerid, 35, 350); //Rifle
  1662. GivePlayerWeapon(playerid, 37, 150);//FlameTower
  1663. GivePlayerWeapon(playerid, 16, 30);//shotgun
  1664. }
  1665. if(gTeam[playerid] == Polisi && GetPlayerScore(playerid) >= 10000)
  1666. {
  1667. ResetPlayerWeapons(playerid);
  1668. GivePlayerWeapon(playerid, 24, 950); //Deagle
  1669. GivePlayerWeapon(playerid, 28, 950); //MP5
  1670. GivePlayerWeapon(playerid, 31, 950); //M4
  1671. GivePlayerWeapon(playerid, 3, 1); //Senjata Polisi
  1672. GivePlayerWeapon(playerid, 26, 950);//shotgun
  1673. GivePlayerWeapon(playerid, 35, 950);//Sniper
  1674. GivePlayerWeapon(playerid, 16, 50);//shotgun
  1675. GivePlayerWeapon(playerid, 18, 30);//shotgun
  1676. }
  1677. if(gTeam[playerid] == Teroris && GetPlayerScore(playerid) >= 10000)
  1678. {
  1679. ResetPlayerWeapons(playerid);
  1680. GivePlayerWeapon(playerid, 30, 950); //AK-47
  1681. GivePlayerWeapon(playerid, 26, 900); //shotgun
  1682. GivePlayerWeapon(playerid, 24, 900); //Silenced.
  1683. GivePlayerWeapon(playerid, 4, 1); //Knife.
  1684. GivePlayerWeapon(playerid, 35, 950); //Rifle
  1685. GivePlayerWeapon(playerid, 37, 250);//FlameTower
  1686. GivePlayerWeapon(playerid, 35, 10);//Bazooke
  1687. GivePlayerWeapon(playerid, 16, 30);//shotgun
  1688. GivePlayerWeapon(playerid, 18, 30);//shotgun
  1689. }
  1690. return 1;
  1691. }
  1692.  
  1693. public OnPlayerDeath(playerid, killerid, reason)
  1694. {
  1695. if(Helmet[playerid] == 1)
  1696. {
  1697. SendClientMessage(playerid, 0xF50000FF,"[HELMET] Your helmet now is broken/missing!");
  1698. SendClientMessage(playerid, 0x00FF14FF,"[HELMET] Buy again at Briefcase in your base!");
  1699. Helmet[playerid] = 0;
  1700. }
  1701. Update3DTextLabelText(RankLabel[playerid], 0xFFFFFFFF, " ");
  1702. if(Captured[playerid][SNAKE] == 0 && IsPlayerCapturing[playerid][SNAKE] == 1)
  1703. {
  1704. LeavingSnakeFarm(playerid);
  1705. }
  1706. if(Captured[playerid][BAY] == 0 && IsPlayerCapturing[playerid][BAY] == 1)
  1707. {
  1708. LeavingBay(playerid);
  1709. }
  1710. if(Captured[playerid][BIG] == 0 && IsPlayerCapturing[playerid][BIG] == 1)
  1711. {
  1712. LeavingArea69(playerid);
  1713. }
  1714. if(Captured[playerid][ARMY] == 0 && IsPlayerCapturing[playerid][ARMY] == 1)
  1715. {
  1716. LeavingArmy(playerid);
  1717. }
  1718. if(Captured[playerid][PETROL] == 0 && IsPlayerCapturing[playerid][PETROL] == 1)
  1719. {
  1720. LeavingPetrol(playerid);
  1721. }
  1722. if(Captured[playerid][OIL] == 0 && IsPlayerCapturing[playerid][OIL] == 1)
  1723. {
  1724. LeavingOil(playerid);
  1725. }
  1726. new Cash[] = {1000,2000,2300,2200,1500};
  1727. new RandomCash = Cash[random(5)];
  1728. GivePlayerMoney(killerid,RandomCash);
  1729. SendDeathMessage(killerid, playerid, reason);
  1730. new str[128];
  1731. format(str, sizeof(str),"You kill enemy ! You Got $%s and {00FF22}+1 Score",RandomCash);
  1732. SendClientMessage(killerid, 0x2DFF00FF, str);
  1733. //SendClientMessage(killerid, 0x2DFF00FF, "You kill enemy ! You Got Random Money and {00FF22}+1 Score");
  1734.  
  1735. SetPlayerScore(killerid, GetPlayerScore(killerid) +1);
  1736. Streak[playerid] = 0;
  1737.  
  1738. if(killerid != INVALID_PLAYER_ID)
  1739. {
  1740. new text[128];
  1741. Streak[killerid] ++;
  1742. if(Streak[killerid] == 3)
  1743. {
  1744. format(text, sizeof(text), "%s is is on (3 killing spree)!", PlayerName2(killerid));
  1745. SendClientMessageToAll(0xFFB400FF, text);
  1746. SendClientMessage(killerid, 0x00FF14FF, "*You get $1500 +3 score and weapon! (killing spree bonus)");
  1747. GivePlayerMoney(killerid, 1500);
  1748. GivePlayerScore(killerid, 3);
  1749. GivePlayerWeapon(killerid, 24, 150);
  1750. GivePlayerWeapon(killerid, 26, 50);
  1751. }
  1752. if(Streak[killerid] == 5)
  1753. {
  1754. format(text, sizeof(text), "%s is is on (5 killing spree)!", PlayerName2(killerid));
  1755. SendClientMessageToAll(0xFFB400FF, text);
  1756. SendClientMessage(killerid, 0x00FF14FF, "Y*ou get $2500 +5 score and weapon! (killing spree bonus)");
  1757. GivePlayerMoney(killerid, 2500);
  1758. GivePlayerScore(killerid, 5);
  1759. GivePlayerWeapon(killerid, 24, 150);
  1760. GivePlayerWeapon(killerid, 34, 50);
  1761. }
  1762. if(Streak[killerid] == 10)
  1763. {
  1764. format(text, sizeof(text), "%s is on (10 killing spree)!", PlayerName2(killerid));
  1765. SendClientMessageToAll(0xFFB400FF, text);
  1766. SendClientMessage(killerid, 0x00FF14FF, "*You get $5000 + 10 score + Armour And Weapon ! (killing spree bonus)");
  1767. GivePlayerMoney(killerid, 5000);
  1768. GivePlayerScore(killerid, 10);
  1769. SetPlayerArmour(killerid, 25);
  1770. GivePlayerWeapon(killerid, 27, 150);
  1771. GivePlayerWeapon(killerid, 32, 50);
  1772. }
  1773. if(Streak[killerid] == 15)
  1774. {
  1775. format(text, sizeof(text), "%s is is on (15 killing spree)!", PlayerName2(killerid));
  1776. SendClientMessageToAll(0xFFB400FF, text);
  1777. SendClientMessage(killerid, 0x00FF14FF, "*You get $7500 + 15 score + Armour And Weapon! (killing spree bonus)");
  1778. GivePlayerMoney(killerid, 7500);
  1779. GivePlayerScore(killerid, 15);
  1780. SetPlayerArmour(killerid, 50);
  1781. GivePlayerWeapon(killerid, 30, 150);
  1782. GivePlayerWeapon(killerid, 26, 50);
  1783. }
  1784. if(Streak[killerid] == 20)
  1785. {
  1786. format(text, sizeof(text), "%s is is on (20 killing spree)!", PlayerName2(killerid));
  1787. SendClientMessageToAll(0xFFB400FF, text);
  1788. SendClientMessage(killerid, 0x00FF14FF, "*You get $12500 + 20 score + Armour And Weapon! (killing spree bonus)");
  1789. GivePlayerMoney(killerid, 12500);
  1790. GivePlayerScore(killerid, 20);
  1791. SetPlayerArmour(killerid, 75);
  1792. GivePlayerWeapon(killerid, 30, 150);
  1793. GivePlayerWeapon(killerid, 32, 50);
  1794. }
  1795. if(Streak[killerid] == 25)
  1796. {
  1797. format(text, sizeof(text), "%s is is on (25 killing spree)!", PlayerName2(killerid));
  1798. SendClientMessageToAll(0xFFB400FF, text);
  1799. SendClientMessage(killerid, 0x00FF14FF, "*You get $20000 + 25 score + Armour And Weapon (killing spree bonus)");
  1800. GivePlayerMoney(killerid, 20000);
  1801. GivePlayerScore(killerid, 25);
  1802. SetPlayerArmour(killerid, 100);
  1803. GivePlayerWeapon(killerid, 32, 200);
  1804. GivePlayerWeapon(killerid, 34, 50);
  1805. }
  1806. if(Streak[killerid] == 50)
  1807. {
  1808. format(text, sizeof(text), "%s is on (50 killing spree)!", PlayerName2(killerid));
  1809. SendClientMessageToAll(0xFFB400FF, text);
  1810. SendClientMessage(killerid, 0x00FF14FF, "*You get $50000 + 50 Score + Armour + Health And Weapon! (killing spree bonus)");
  1811. GivePlayerMoney(killerid, 50000);
  1812. GivePlayerScore(killerid, 50);
  1813. SetPlayerArmour(killerid, 100);
  1814. SetPlayerHealth(killerid, 100);
  1815. GivePlayerWeapon(killerid, 35, 50);
  1816. GivePlayerWeapon(killerid, 34, 50);
  1817. }
  1818. if(Streak[killerid] == 100)
  1819. {
  1820. format(text, sizeof(text), "%s is on (100 killing spree)!", PlayerName2(killerid));
  1821. SendClientMessageToAll(0xFFB400FF, text);
  1822. SendClientMessage(killerid, 0x00FF14FF, "*You get $100000 + 100 score + Armour + Health And Weapon (killing spree bonus)");
  1823. GivePlayerMoney(killerid, 100000);
  1824. GivePlayerScore(killerid, 100);
  1825. SetPlayerHealth(killerid, 100);
  1826. SetPlayerArmour(killerid, 100);
  1827. GivePlayerWeapon(killerid, 38, 500);
  1828. }
  1829. if(Streak[killerid] == 0)
  1830. {
  1831. format(text, sizeof(text), "%s killing spree has end!", PlayerName2(killerid));
  1832. }
  1833. }
  1834. Anti_heal[playerid] = 0;
  1835. Anti_Give[playerid] = 0;
  1836. PlayerInfo[playerid][Deaths] ++;
  1837. PlayerInfo[killerid][Kills] ++;
  1838. SetTimer("Anti_time", 60000, 1);
  1839. Anti_time[playerid] = 0;
  1840.  
  1841. #if defined ENABLE_SPEC
  1842. for(new x=0; x<MAX_PLAYERS; x++)
  1843. if(GetPlayerState(x) == PLAYER_STATE_SPECTATING && PlayerInfo[x][SpecID] == playerid)
  1844. AdvanceSpectate(x);
  1845. #endif
  1846.  
  1847. return 1;
  1848. }
  1849. public OnPlayerTakeDamage(playerid, issuerid, Float: amount, weaponid)
  1850. {
  1851. if(gTeam[playerid] != gTeam[issuerid])
  1852. {
  1853. if(weaponid == 34 && WEAPON_BODY_PART_HEAD)
  1854. {
  1855. if(Helmet[playerid] == 1)
  1856. {
  1857. GameTextForPlayer(issuerid,"~r~- CAN'T HEADHSOT HIM ! HE HAVE HELMET !-",3000,3);
  1858. }
  1859. else
  1860. {
  1861. //if(issuerid != INVALID_PLAYER_ID && weaponid == 34 && WEAPON_BODY_PART_HEAD && gTeam[playerid] != gTeam[issuerid])
  1862. //
  1863. // One shot to the head to kill with sniper rifle
  1864. GameTextForPlayer(issuerid,"~g~- HEADSHOT -!", 3000, 3);
  1865. SetPlayerHealth(playerid, 0.0);
  1866. GameTextForPlayer(playerid,"~r~- YOU GOT HEADSHOT -!", 3000,3);
  1867. //new Float:x,Float:y,Float:z,Float:distance,killed[MAX_PLAYER_NAME];
  1868. new name[MAX_PLAYER_NAME];
  1869. new string[128];
  1870. //GetPlayerPos(issuerid, Float:x, Float:y, Float:z);
  1871. GetPlayerName(playerid, name, sizeof(name));
  1872. format(string, sizeof(string), "[HEADSHOT]: [%s] was killed by a shot to the head", name);
  1873. SendClientMessageToAll(0x00FF14FF,string);
  1874. SendClientMessage(issuerid, 0x00FF14FF,"* Extra Score +1 And $3000");
  1875. GivePlayerMoney(issuerid, 3000);
  1876. GivePlayerScore(issuerid, 1);
  1877. /*distance = GetPlayerDistanceFromPoint(playerid, Float:x, Float:y, Float:z);
  1878. GetPlayerName(issuerid, killed, sizeof(killed));
  1879. format(string,sizeof(string),"[HS]: {00FF00} %s(%i) {FF0000} Has Killed By {00FF00} %s(%i) {FF0000} With A Sniper From {00FF00} %f Meters!",name,playerid,killed,issuerid,distance);
  1880. SendClientMessageToAll(green2,string);*/
  1881. }
  1882. }
  1883. }
  1884. if(gTeam[issuerid] == gTeam[playerid])
  1885. {
  1886. GameTextForPlayer(issuerid,"~r~Don't attack your team mates!", 3000, 3);
  1887. }
  1888. if(issuerid != INVALID_PLAYER_ID)
  1889. {
  1890. new str[26];
  1891. format(str, sizeof(str),"-%.0f", amount);
  1892. SetPlayerChatBubble(playerid, str, 0xFF0000FF, 100.0, 2000);
  1893. PlayerPlaySound(issuerid,17802,0.0,0.0,0.0);
  1894. }
  1895. if(PlayerInfo[playerid][OnDuty] == 1 || PlayerInfo[playerid][God] == 1)
  1896. {
  1897. SetPlayerHealth(playerid, 1000.0);
  1898. GameTextForPlayer(issuerid,"~r~Don't attack admins on-duty!", 3000, 3);
  1899. }
  1900. return 1;
  1901. }
  1902. stock GivePlayerScore(playerid, score)
  1903. {
  1904. SetPlayerScore(playerid, GetPlayerScore(playerid)+score);
  1905. return 1;
  1906. }
  1907. stock CaptureZoneMessage(playerid, messageid)
  1908. {
  1909. switch(messageid)
  1910. {
  1911. case 1:
  1912. {
  1913. SendClientMessage(playerid, 0xFF0000FF,"*You cannot capture while in vehicle!");
  1914. }
  1915. case 2:
  1916. {
  1917. SendClientMessage(playerid, 0xFF0000FF,"*This zone is already being taken over!");
  1918. }
  1919. case 3:
  1920. {
  1921. SendClientMessage(playerid, 0xFF0000FF,"*You cannot capture while on-duty or spectating");
  1922. }
  1923. }
  1924. return 1;
  1925. }
  1926. stock ActiveSnakeFarm(playerid)
  1927. {
  1928. if(Spectating[playerid] == 0 || PlayerInfo[playerid][OnDuty] == 0)
  1929. {
  1930. if(UnderAttack[SNAKE] == 0)
  1931. {
  1932. if(!IsPlayerInAnyVehicle(playerid))
  1933. {
  1934. UnderAttack[SNAKE] = 1;
  1935. timer[playerid][SNAKE] = SetTimerEx("SnakeFarm", 25000, false,"i",playerid);
  1936. Captured[playerid][SNAKE] = 0;
  1937. if(gTeam[playerid] == Polisi)
  1938. {
  1939. GangZoneFlashForAll(Zone[SNAKE], CPolisi);
  1940. }
  1941. else if(gTeam[playerid] == Teroris)
  1942. {
  1943. GangZoneFlashForAll(Zone[SNAKE], CTeroris);
  1944. }
  1945. //------Message-----
  1946. if(tCP[SNAKE] == Polisi)
  1947. {
  1948. SendClientMessage(playerid, COLOR_WHITE,"*This flag is controlled by team {000FFF}<Polisi>");
  1949. SendTeamMessage(Polisi, 0xFF000FFF,"*Mall is under attack!");
  1950. }
  1951. if(tCP[SNAKE] == Teroris)
  1952. {
  1953. SendClientMessage(playerid, COLOR_WHITE,"*This flag is controlled by team {FF000F}<Teroris>");
  1954. SendTeamMessage(Teroris, 0xFF000FFF,"*Mall is under attack!");
  1955. }
  1956. else if(tCP[SNAKE] == TEAM_NONE)
  1957. {
  1958. SendClientMessage(playerid, COLOR_WHITE,"*This flag is not controlled by any team");
  1959. }
  1960. //---------loop-------//
  1961. for(new i = 0; i < MAX_PLAYERS; i ++)
  1962. {
  1963. IsPlayerCapturing[i][SNAKE] = 1;
  1964. }
  1965. }
  1966. else return CaptureZoneMessage(playerid, 1);
  1967. }
  1968. else return CaptureZoneMessage(playerid, 2);
  1969. }
  1970. else return CaptureZoneMessage(playerid, 3);
  1971. return 1;
  1972. }
  1973. stock SnakeFarmCaptured(playerid)
  1974. {
  1975. Captured[playerid][SNAKE] = 1;
  1976. UnderAttack[SNAKE] = 0;
  1977. KillTimer(timer[playerid][SNAKE]);
  1978. TextDrawHideForPlayer(playerid, CountText[playerid]);
  1979. CountVar[playerid][SNAKE] = 25;
  1980. GivePlayerScore(playerid, 5);
  1981. GivePlayerMoney(playerid, 5000);
  1982. SendClientMessage(playerid, 0x00FF0AFF,"Congratulations! You have captured \"Mall\" you received +5 scores and +$5000 cash!");
  1983. //==========================================================================
  1984. for(new i = 0; i < MAX_PLAYERS; i++)
  1985. {
  1986. IsPlayerCapturing[i][SNAKE] = 0;
  1987. if(gTeam[i] == gTeam[playerid] && i != playerid && PlayerInfo[i][OnDuty] == 0)
  1988. {
  1989. SendClientMessage(i, 0x00FF0AFF,"*Your team has captured {FF0000} Mall {19FF00}! You received +1 score for it!");
  1990. GivePlayerScore(i, 1);
  1991. }
  1992. }
  1993. //==========================================================================
  1994. tCP[SNAKE] = gTeam[playerid];
  1995. GangZoneStopFlashForAll(Zone[SNAKE]);
  1996. //==========================================================================
  1997. if(gTeam[playerid] == Polisi)
  1998. {
  1999. GangZoneShowForAll(Zone[SNAKE], CPolisi);
  2000. }
  2001. else if(gTeam[playerid] == Teroris)
  2002. {
  2003. GangZoneShowForAll(Zone[SNAKE], CTeroris);
  2004. }
  2005. //==========================================================================
  2006. new str[128];
  2007. format(str, sizeof(str),"%s has captured \"Mall\" for team %s", pName(playerid), GetTeamName(playerid));
  2008. SendClientMessageToAll(orange, str);
  2009. return 1;
  2010. }
  2011. stock LeavingSnakeFarm(playerid)
  2012. {
  2013. Captured[playerid][SNAKE] = 1;
  2014. UnderAttack[SNAKE] = 0;
  2015. KillTimer(timer[playerid][SNAKE]);
  2016. TextDrawHideForPlayer(playerid, CountText[playerid]);
  2017. CountVar[playerid][SNAKE] = 25;
  2018. GangZoneStopFlashForAll(Zone[SNAKE]);
  2019. for(new i = 0; i < MAX_PLAYERS; i++)
  2020. {
  2021. IsPlayerCapturing[i][SNAKE] = 0;
  2022. }
  2023. SendClientMessage(playerid, 0xFF0000FF,"*You have been failed to capture this zone!");
  2024. return 1;
  2025. }
  2026. forward SnakeFarm(playerid);
  2027. public SnakeFarm(playerid)
  2028. {
  2029. SnakeFarmCaptured(playerid);
  2030. return 1;
  2031. }
  2032.  
  2033. stock ActiveBay(playerid)
  2034. {
  2035. if(Spectating[playerid] == 0 || PlayerInfo[playerid][OnDuty] == 0)
  2036. {
  2037. if(UnderAttack[BAY] == 0)
  2038. {
  2039. if(!IsPlayerInAnyVehicle(playerid))
  2040. {
  2041. UnderAttack[BAY] = 1;
  2042. timer[playerid][BAY] = SetTimerEx("Bay", 25000, false,"i",playerid);
  2043. Captured[playerid][BAY] = 0;
  2044. if(gTeam[playerid] == Polisi)
  2045. {
  2046. GangZoneFlashForAll(Zone[BAY], CPolisi);
  2047. }
  2048. else if(gTeam[playerid] == Teroris)
  2049. {
  2050. GangZoneFlashForAll(Zone[BAY], CTeroris);
  2051. }
  2052. //------Message-----
  2053. if(tCP[BAY] == Polisi)
  2054. {
  2055. SendClientMessage(playerid, COLOR_WHITE,"*This flag is controlled by team {000FFF}<Polisi>");
  2056. SendTeamMessage(Polisi, 0xFF000FFF,"*House is under attack!");
  2057. }
  2058. if(tCP[BAY] == Teroris)
  2059. {
  2060. SendClientMessage(playerid, COLOR_WHITE,"*This flag is controlled by team {FF000F}<Teroris>");
  2061. SendTeamMessage(Teroris, 0xFF000FFF,"*House is under attack!");
  2062. }
  2063. else if(tCP[BAY] == TEAM_NONE)
  2064. {
  2065. SendClientMessage(playerid, COLOR_WHITE,"*This flag is not controlled by any team");
  2066. }
  2067. //---------loop-------//
  2068. for(new i = 0; i < MAX_PLAYERS; i ++)
  2069. {
  2070. IsPlayerCapturing[i][BAY] = 1;
  2071. }
  2072. }
  2073. else return CaptureZoneMessage(playerid, 1);
  2074. }
  2075. else return CaptureZoneMessage(playerid, 2);
  2076. }
  2077. else return CaptureZoneMessage(playerid, 3);
  2078. return 1;
  2079. }
  2080. stock BayCaptured(playerid)
  2081. {
  2082. Captured[playerid][BAY] = 1;
  2083. UnderAttack[BAY] = 0;
  2084. KillTimer(timer[playerid][BAY]);
  2085. TextDrawHideForPlayer(playerid, CountText[playerid]);
  2086. CountVar[playerid][BAY] = 25;
  2087. GivePlayerScore(playerid, 5);
  2088. GivePlayerMoney(playerid, 5000);
  2089. SendClientMessage(playerid, 0x00FF0AFF,"Congratulations! You have captured \"House\" you received +5 scores and +$5000 cash!");
  2090. //==========================================================================
  2091. for(new i = 0; i < MAX_PLAYERS; i++)
  2092. {
  2093. IsPlayerCapturing[i][BAY] = 0;
  2094. if(gTeam[i] == gTeam[playerid] && i != playerid && PlayerInfo[i][OnDuty] == 0)
  2095. {
  2096. SendClientMessage(i, 0x00FF0AFF,"*Your team has captured {FF0000} House {19FF00}! You received +1 score for it!");
  2097. GivePlayerScore(i, 1);
  2098. }
  2099. }
  2100. //==========================================================================
  2101. tCP[BAY] = gTeam[playerid];
  2102. GangZoneStopFlashForAll(Zone[BAY]);
  2103. //==========================================================================
  2104. if(gTeam[playerid] == Polisi)
  2105. {
  2106. GangZoneShowForAll(Zone[BAY], CPolisi);
  2107. }
  2108. else if(gTeam[playerid] == Teroris)
  2109. {
  2110. GangZoneShowForAll(Zone[BAY], CTeroris);
  2111. }
  2112. //==========================================================================
  2113. new str[128];
  2114. format(str, sizeof(str),"%s has captured \"House\" for team %s", pName(playerid), GetTeamName(playerid));
  2115. SendClientMessageToAll(orange, str);
  2116. return 1;
  2117. }
  2118. stock LeavingBay(playerid)
  2119. {
  2120. Captured[playerid][BAY] = 1;
  2121. UnderAttack[BAY] = 0;
  2122. KillTimer(timer[playerid][BAY]);
  2123. TextDrawHideForPlayer(playerid, CountText[playerid]);
  2124. CountVar[playerid][BAY] = 25;
  2125. GangZoneStopFlashForAll(Zone[BAY]);
  2126. for(new i = 0; i < MAX_PLAYERS; i++)
  2127. {
  2128. IsPlayerCapturing[i][BAY] = 0;
  2129. }
  2130. SendClientMessage(playerid, 0xFF0000FF,"*You have been failed to capture this zone!");
  2131. return 1;
  2132. }
  2133. forward Bay(playerid);
  2134. public Bay(playerid)
  2135. {
  2136. BayCaptured(playerid);
  2137. return 1;
  2138. }
  2139.  
  2140. stock ActiveArea69(playerid)
  2141. {
  2142. if(Spectating[playerid] == 0 || PlayerInfo[playerid][OnDuty] == 0)
  2143. {
  2144. if(UnderAttack[BIG] == 0)
  2145. {
  2146. if(!IsPlayerInAnyVehicle(playerid))
  2147. {
  2148. UnderAttack[BIG] = 1;
  2149. timer[playerid][BIG] = SetTimerEx("Area69", 25000, false,"i",playerid);
  2150. Captured[playerid][BIG] = 0;
  2151. if(gTeam[playerid] == Polisi)
  2152. {
  2153. GangZoneFlashForAll(Zone[BIG], CPolisi);
  2154. }
  2155. else if(gTeam[playerid] == Teroris)
  2156. {
  2157. GangZoneFlashForAll(Zone[BIG], CTeroris);
  2158. }
  2159. //------Message-----
  2160. if(tCP[BIG] == Polisi)
  2161. {
  2162. SendClientMessage(playerid, COLOR_WHITE,"*This flag is controlled by team {000FFF}<Polisi>");
  2163. SendTeamMessage(Polisi, 0xFF000FFF,"*Admin House is under attack!");
  2164. }
  2165. if(tCP[BIG] == Teroris)
  2166. {
  2167. SendClientMessage(playerid, COLOR_WHITE,"*This flag is controlled by team {FF000F}<Teroris>");
  2168. SendTeamMessage(Teroris, 0xFF000FFF,"*Admin House is under attack!");
  2169. }
  2170. else if(tCP[BIG] == TEAM_NONE)
  2171. {
  2172. SendClientMessage(playerid, COLOR_WHITE,"*This flag is not controlled by any team");
  2173. }
  2174. //---------loop-------//
  2175. for(new i = 0; i < MAX_PLAYERS; i ++)
  2176. {
  2177. IsPlayerCapturing[i][BIG] = 1;
  2178. }
  2179. }
  2180. else return CaptureZoneMessage(playerid, 1);
  2181. }
  2182. else return CaptureZoneMessage(playerid, 2);
  2183. }
  2184. else return CaptureZoneMessage(playerid, 3);
  2185. return 1;
  2186. }
  2187. stock Area69Captured(playerid)
  2188. {
  2189. Captured[playerid][BIG] = 1;
  2190. UnderAttack[BIG] = 0;
  2191. KillTimer(timer[playerid][BIG]);
  2192. TextDrawHideForPlayer(playerid, CountText[playerid]);
  2193. CountVar[playerid][BIG] = 25;
  2194. GivePlayerScore(playerid, 5);
  2195. GivePlayerMoney(playerid, 5000);
  2196. SendClientMessage(playerid, 0x00FF0AFF,"Congratulations! You have captured \"Admin House\" you received +5 scores and +$5000 cash!");
  2197. //==========================================================================
  2198. for(new i = 0; i < MAX_PLAYERS; i++)
  2199. {
  2200. IsPlayerCapturing[i][BIG] = 0;
  2201. if(gTeam[i] == gTeam[playerid] && i != playerid && PlayerInfo[i][OnDuty] == 0)
  2202. {
  2203. SendClientMessage(i, 0x00FF0AFF,"*Your team has captured {FF0000} Admin House {19FF00}! You received +1 score for it!");
  2204. GivePlayerScore(i, 1);
  2205. }
  2206. }
  2207. //==========================================================================
  2208. tCP[BIG] = gTeam[playerid];
  2209. GangZoneStopFlashForAll(Zone[BIG]);
  2210. //==========================================================================
  2211. if(gTeam[playerid] == Polisi)
  2212. {
  2213. GangZoneShowForAll(Zone[BIG], CPolisi);
  2214. }
  2215. else if(gTeam[playerid] == Teroris)
  2216. {
  2217. GangZoneShowForAll(Zone[BIG], CTeroris);
  2218. }
  2219. //==========================================================================
  2220. new str[128];
  2221. format(str, sizeof(str),"%s has captured \"Admin House\" for team %s", pName(playerid), GetTeamName(playerid));
  2222. SendClientMessageToAll(orange, str);
  2223. return 1;
  2224. }
  2225. stock LeavingArea69(playerid)
  2226. {
  2227. Captured[playerid][BIG] = 1;
  2228. UnderAttack[BIG] = 0;
  2229. KillTimer(timer[playerid][BIG]);
  2230. TextDrawHideForPlayer(playerid, CountText[playerid]);
  2231. CountVar[playerid][BIG] = 25;
  2232. GangZoneStopFlashForAll(Zone[BIG]);
  2233. for(new i = 0; i < MAX_PLAYERS; i++)
  2234. {
  2235. IsPlayerCapturing[i][BIG] = 0;
  2236. }
  2237. SendClientMessage(playerid, 0xFF0000FF,"*You have been failed to capture this zone!");
  2238. return 1;
  2239. }
  2240. forward Area69(playerid);
  2241. public Area69(playerid)
  2242. {
  2243. Area69Captured(playerid);
  2244. return 1;
  2245. }
  2246.  
  2247. stock ActiveArmy(playerid)
  2248. {
  2249. if(Spectating[playerid] == 0 || PlayerInfo[playerid][OnDuty] == 0)
  2250. {
  2251. if(UnderAttack[ARMY] == 0)
  2252. {
  2253. if(!IsPlayerInAnyVehicle(playerid))
  2254. {
  2255. UnderAttack[ARMY] = 1;
  2256. timer[playerid][ARMY] = SetTimerEx("Army", 25000, false,"i",playerid);
  2257. Captured[playerid][ARMY] = 0;
  2258. if(gTeam[playerid] == Polisi)
  2259. {
  2260. GangZoneFlashForAll(Zone[ARMY], CPolisi);
  2261. }
  2262. else if(gTeam[playerid] == Teroris)
  2263. {
  2264. GangZoneFlashForAll(Zone[ARMY], CTeroris);
  2265. }
  2266. //------Message-----
  2267. if(tCP[ARMY] == Polisi)
  2268. {
  2269. SendClientMessage(playerid, COLOR_WHITE,"*This flag is controlled by team {000FFF}<Polisi>");
  2270. SendTeamMessage(Polisi, 0xFF000FFF,"*Ammunation is under attack!");
  2271. }
  2272. if(tCP[ARMY] == Teroris)
  2273. {
  2274. SendClientMessage(playerid, COLOR_WHITE,"*This flag is controlled by team {FF000F}<Teroris>");
  2275. SendTeamMessage(Teroris, 0xFF000FFF,"*Ammunation is under attack!");
  2276. }
  2277. else if(tCP[ARMY] == TEAM_NONE)
  2278. {
  2279. SendClientMessage(playerid, COLOR_WHITE,"*This flag is not controlled by any team");
  2280. }
  2281. //---------loop-------//
  2282. for(new i = 0; i < MAX_PLAYERS; i ++)
  2283. {
  2284. IsPlayerCapturing[i][ARMY] = 1;
  2285. }
  2286. }
  2287. else return CaptureZoneMessage(playerid, 1);
  2288. }
  2289. else return CaptureZoneMessage(playerid, 2);
  2290. }
  2291. else return CaptureZoneMessage(playerid, 3);
  2292. return 1;
  2293. }
  2294. stock ArmyCaptured(playerid)
  2295. {
  2296. Captured[playerid][ARMY] = 1;
  2297. UnderAttack[ARMY] = 0;
  2298. KillTimer(timer[playerid][ARMY]);
  2299. TextDrawHideForPlayer(playerid, CountText[playerid]);
  2300. CountVar[playerid][ARMY] = 25;
  2301. GivePlayerScore(playerid, 5);
  2302. GivePlayerMoney(playerid, 5000);
  2303. SendClientMessage(playerid, 0x00FF0AFF,"Congratulations! You have captured \"Ammunation\" you received +5 scores and +$5000 cash!");
  2304. //==========================================================================
  2305. for(new i = 0; i < MAX_PLAYERS; i++)
  2306. {
  2307. IsPlayerCapturing[i][ARMY] = 0;
  2308. if(gTeam[i] == gTeam[playerid] && i != playerid && PlayerInfo[i][OnDuty] == 0)
  2309. {
  2310. SendClientMessage(i, 0x00FF0AFF,"*Your team has captured {FF0000} Ammunation {19FF00}! You received +1 score for it!");
  2311. GivePlayerScore(i, 1);
  2312. }
  2313. }
  2314. //==========================================================================
  2315. tCP[ARMY] = gTeam[playerid];
  2316. GangZoneStopFlashForAll(Zone[ARMY]);
  2317. //==========================================================================
  2318. if(gTeam[playerid] == Polisi)
  2319. {
  2320. GangZoneShowForAll(Zone[ARMY], CPolisi);
  2321. }
  2322. else if(gTeam[playerid] == Teroris)
  2323. {
  2324. GangZoneShowForAll(Zone[ARMY], CTeroris);
  2325. }
  2326. //==========================================================================
  2327. new str[128];
  2328. format(str, sizeof(str),"%s has captured \"Ammunation\" for team %s", pName(playerid), GetTeamName(playerid));
  2329. SendClientMessageToAll(orange, str);
  2330. return 1;
  2331. }
  2332. stock LeavingArmy(playerid)
  2333. {
  2334. Captured[playerid][ARMY] = 1;
  2335. UnderAttack[ARMY] = 0;
  2336. KillTimer(timer[playerid][ARMY]);
  2337. TextDrawHideForPlayer(playerid, CountText[playerid]);
  2338. CountVar[playerid][ARMY] = 25;
  2339. GangZoneStopFlashForAll(Zone[ARMY]);
  2340. for(new i = 0; i < MAX_PLAYERS; i++)
  2341. {
  2342. IsPlayerCapturing[i][ARMY] = 0;
  2343. }
  2344. SendClientMessage(playerid, 0xFF0000FF,"*You have been failed to capture this zone!");
  2345. return 1;
  2346. }
  2347. forward Army(playerid);
  2348. public Army(playerid)
  2349. {
  2350. ArmyCaptured(playerid);
  2351. return 1;
  2352. }
  2353.  
  2354. stock ActivePetrol(playerid)
  2355. {
  2356. if(Spectating[playerid] == 0 || PlayerInfo[playerid][OnDuty] == 0)
  2357. {
  2358. if(UnderAttack[PETROL] == 0)
  2359. {
  2360. if(!IsPlayerInAnyVehicle(playerid))
  2361. {
  2362. UnderAttack[PETROL] = 1;
  2363. timer[playerid][PETROL] = SetTimerEx("Petrol", 25000, false,"i",playerid);
  2364. Captured[playerid][PETROL] = 0;
  2365. if(gTeam[playerid] == Polisi)
  2366. {
  2367. GangZoneFlashForAll(Zone[PETROL], CPolisi);
  2368. }
  2369. else if(gTeam[playerid] == Teroris)
  2370. {
  2371. GangZoneFlashForAll(Zone[PETROL], CTeroris);
  2372. }
  2373. //------Message-----
  2374. if(tCP[PETROL] == Polisi)
  2375. {
  2376. SendClientMessage(playerid, COLOR_WHITE,"*This flag is controlled by team {000FFF}<Polisi>");
  2377. SendTeamMessage(Polisi, 0xFF000FFF,"*Restaurant is under attack!");
  2378. }
  2379. if(tCP[PETROL] == Teroris)
  2380. {
  2381. SendClientMessage(playerid, COLOR_WHITE,"*This flag is controlled by team {FF000F}<Teroris>");
  2382. SendTeamMessage(Teroris, 0xFF000FFF,"*Restaurant is under attack!");
  2383. }
  2384. else if(tCP[PETROL] == TEAM_NONE)
  2385. {
  2386. SendClientMessage(playerid, COLOR_WHITE,"*This flag is not controlled by any team");
  2387. }
  2388. //---------loop-------//
  2389. for(new i = 0; i < MAX_PLAYERS; i ++)
  2390. {
  2391. IsPlayerCapturing[i][PETROL] = 1;
  2392. }
  2393. }
  2394. else return CaptureZoneMessage(playerid, 1);
  2395. }
  2396. else return CaptureZoneMessage(playerid, 2);
  2397. }
  2398. else return CaptureZoneMessage(playerid, 3);
  2399. return 1;
  2400. }
  2401. stock PetrolCaptured(playerid)
  2402. {
  2403. Captured[playerid][PETROL] = 1;
  2404. UnderAttack[PETROL] = 0;
  2405. KillTimer(timer[playerid][PETROL]);
  2406. TextDrawHideForPlayer(playerid, CountText[playerid]);
  2407. CountVar[playerid][PETROL] = 25;
  2408. GivePlayerScore(playerid, 5);
  2409. GivePlayerMoney(playerid, 5000);
  2410. SendClientMessage(playerid, 0x00FF0AFF,"Congratulations! You have captured \"Restaurant\" you received +5 scores and +$5000 cash!");
  2411. //==========================================================================
  2412. for(new i = 0; i < MAX_PLAYERS; i++)
  2413. {
  2414. IsPlayerCapturing[i][PETROL] = 0;
  2415. if(gTeam[i] == gTeam[playerid] && i != playerid && PlayerInfo[i][OnDuty] == 0)
  2416. {
  2417. SendClientMessage(i, 0x00FF0AFF,"*Your team has captured {FF0000} Restaurant {19FF00}! You received +1 score for it!");
  2418. GivePlayerScore(i, 1);
  2419. }
  2420. }
  2421. //==========================================================================
  2422. tCP[PETROL] = gTeam[playerid];
  2423. GangZoneStopFlashForAll(Zone[PETROL]);
  2424. //==========================================================================
  2425. if(gTeam[playerid] == Polisi)
  2426. {
  2427. GangZoneShowForAll(Zone[PETROL], CPolisi);
  2428. }
  2429. else if(gTeam[playerid] == Teroris)
  2430. {
  2431. GangZoneShowForAll(Zone[PETROL], CTeroris);
  2432. }
  2433. //==========================================================================
  2434. new str[128];
  2435. format(str, sizeof(str),"%s has captured \"Restaurant\" for team %s", pName(playerid), GetTeamName(playerid));
  2436. SendClientMessageToAll(orange, str);
  2437. return 1;
  2438. }
  2439. stock LeavingPetrol(playerid)
  2440. {
  2441. Captured[playerid][PETROL] = 1;
  2442. UnderAttack[PETROL] = 0;
  2443. KillTimer(timer[playerid][PETROL]);
  2444. TextDrawHideForPlayer(playerid, CountText[playerid]);
  2445. CountVar[playerid][PETROL] = 25;
  2446. GangZoneStopFlashForAll(Zone[PETROL]);
  2447. for(new i = 0; i < MAX_PLAYERS; i++)
  2448. {
  2449. IsPlayerCapturing[i][PETROL] = 0;
  2450. }
  2451. SendClientMessage(playerid, 0xFF0000FF,"*You have been failed to capture this zone!");
  2452. return 1;
  2453. }
  2454. forward Petrol(playerid);
  2455. public Petrol(playerid)
  2456. {
  2457. PetrolCaptured(playerid);
  2458. return 1;
  2459. }
  2460.  
  2461. stock ActiveOil(playerid)
  2462. {
  2463. if(Spectating[playerid] == 0 || PlayerInfo[playerid][OnDuty] == 0)
  2464. {
  2465. if(UnderAttack[OIL] == 0)
  2466. {
  2467. if(!IsPlayerInAnyVehicle(playerid))
  2468. {
  2469. UnderAttack[OIL] = 1;
  2470. timer[playerid][OIL] = SetTimerEx("Oil", 25000, false,"i",playerid);
  2471. Captured[playerid][OIL] = 0;
  2472. if(gTeam[playerid] == Polisi)
  2473. {
  2474. GangZoneFlashForAll(Zone[OIL], CPolisi);
  2475. }
  2476. else if(gTeam[playerid] == Teroris)
  2477. {
  2478. GangZoneFlashForAll(Zone[OIL], CTeroris);
  2479. }
  2480. //------Message-----
  2481. if(tCP[OIL] == Polisi)
  2482. {
  2483. SendClientMessage(playerid, COLOR_WHITE,"*This flag is controlled by team {000FFF}<Polisi>");
  2484. SendTeamMessage(Polisi, 0xFF000FFF,"*Mansion is under attack!");
  2485. }
  2486. if(tCP[OIL] == Teroris)
  2487. {
  2488. SendClientMessage(playerid, COLOR_WHITE,"*This flag is controlled by team {FF000F}<Teroris>");
  2489. SendTeamMessage(Teroris, 0xFF000FFF,"*Mansion is under attack!");
  2490. }
  2491. else if(tCP[OIL] == TEAM_NONE)
  2492. {
  2493. SendClientMessage(playerid, COLOR_WHITE,"*This flag is not controlled by any team");
  2494. }
  2495. //---------loop-------//
  2496. for(new i = 0; i < MAX_PLAYERS; i ++)
  2497. {
  2498. IsPlayerCapturing[i][OIL] = 1;
  2499. }
  2500. }
  2501. else return CaptureZoneMessage(playerid, 1);
  2502. }
  2503. else return CaptureZoneMessage(playerid, 2);
  2504. }
  2505. else return CaptureZoneMessage(playerid, 3);
  2506. return 1;
  2507. }
  2508. stock OilCaptured(playerid)
  2509. {
  2510. Captured[playerid][OIL] = 1;
  2511. UnderAttack[OIL] = 0;
  2512. KillTimer(timer[playerid][OIL]);
  2513. TextDrawHideForPlayer(playerid, CountText[playerid]);
  2514. CountVar[playerid][OIL] = 25;
  2515. GivePlayerScore(playerid, 5);
  2516. GivePlayerMoney(playerid, 5000);
  2517. SendClientMessage(playerid, 0x00FF0AFF,"Congratulations! You have captured \"Mansion\" you received +5 scores and +$5000 cash!");
  2518. //==========================================================================
  2519. for(new i = 0; i < MAX_PLAYERS; i++)
  2520. {
  2521. IsPlayerCapturing[i][OIL] = 0;
  2522. if(gTeam[i] == gTeam[playerid] && i != playerid && PlayerInfo[i][OnDuty] == 0)
  2523. {
  2524. SendClientMessage(i, 0x00FF0AFF,"*Your team has captured {FF0000} Mansion {19FF00}! You received +1 score for it!");
  2525. GivePlayerScore(i, 1);
  2526. }
  2527. }
  2528. //==========================================================================
  2529. tCP[OIL] = gTeam[playerid];
  2530. GangZoneStopFlashForAll(Zone[OIL]);
  2531. //==========================================================================
  2532. if(gTeam[playerid] == Polisi)
  2533. {
  2534. GangZoneShowForAll(Zone[OIL], CPolisi);
  2535. }
  2536. else if(gTeam[playerid] == Teroris)
  2537. {
  2538. GangZoneShowForAll(Zone[OIL], CTeroris);
  2539. }
  2540. //==========================================================================
  2541. new str[128];
  2542. format(str, sizeof(str),"%s has captured \"Mansion\" for team %s", pName(playerid), GetTeamName(playerid));
  2543. SendClientMessageToAll(orange, str);
  2544. return 1;
  2545. }
  2546. stock LeavingOil(playerid)
  2547. {
  2548. Captured[playerid][OIL] = 1;
  2549. UnderAttack[OIL] = 0;
  2550. KillTimer(timer[playerid][OIL]);
  2551. TextDrawHideForPlayer(playerid, CountText[playerid]);
  2552. CountVar[playerid][OIL] = 25;
  2553. GangZoneStopFlashForAll(Zone[OIL]);
  2554. for(new i = 0; i < MAX_PLAYERS; i++)
  2555. {
  2556. IsPlayerCapturing[i][OIL] = 0;
  2557. }
  2558. SendClientMessage(playerid, 0xFF0000FF,"*You have been failed to capture this zone!");
  2559. return 1;
  2560. }
  2561. forward Oil(playerid);
  2562. public Oil(playerid)
  2563. {
  2564. OilCaptured(playerid);
  2565. return 1;
  2566. }
  2567. public OnPlayerEnterDynamicCP(playerid, checkpointid)
  2568. {
  2569. if(checkpointid == CP[SNAKE])
  2570. {
  2571. if(Spectating[playerid] == 0) {
  2572. if(UnderAttack[SNAKE] == 0) {
  2573. if(PlayerInfo[playerid][OnDuty] == 0) {
  2574. if(tCP[SNAKE] != gTeam[playerid]) {
  2575. CountVar[playerid][SNAKE] = 25;
  2576. ActiveSnakeFarm(playerid);
  2577. } else return SendClientMessage(playerid, 0xFF002DFF,"*This zone is already captured by your team!");
  2578. } else return CaptureZoneMessage(playerid, 3);
  2579. } else return CaptureZoneMessage(playerid, 2);
  2580. } else return 0;
  2581. }
  2582. else if(checkpointid == CP[BAY])
  2583. {
  2584. if(Spectating[playerid] == 0) {
  2585. if(UnderAttack[BAY] == 0) {
  2586. if(PlayerInfo[playerid][OnDuty] == 0) {
  2587. if(tCP[BAY] != gTeam[playerid]) {
  2588. CountVar[playerid][BAY] = 25;
  2589. ActiveBay(playerid);
  2590. } else return SendClientMessage(playerid, 0xFF002DFF,"*This zone is already captured by your team!");
  2591. } else return CaptureZoneMessage(playerid, 3);
  2592. } else return CaptureZoneMessage(playerid, 2);
  2593. } else return 0;
  2594. }
  2595. else if(checkpointid == CP[BIG])
  2596. {
  2597. if(Spectating[playerid] == 0) {
  2598. if(UnderAttack[BIG] == 0) {
  2599. if(PlayerInfo[playerid][OnDuty] == 0) {
  2600. if(tCP[BIG] != gTeam[playerid]) {
  2601. CountVar[playerid][BIG] = 25;
  2602. ActiveArea69(playerid);
  2603. } else return SendClientMessage(playerid, 0xFF002DFF,"*This zone is already captured by your team!");
  2604. } else return CaptureZoneMessage(playerid, 3);
  2605. } else return CaptureZoneMessage(playerid, 2);
  2606. } else return 0;
  2607. }
  2608. else if(checkpointid == CP[ARMY])
  2609. {
  2610. if(Spectating[playerid] == 0) {
  2611. if(UnderAttack[ARMY] == 0) {
  2612. if(PlayerInfo[playerid][OnDuty] == 0) {
  2613. if(tCP[ARMY] != gTeam[playerid]) {
  2614. CountVar[playerid][ARMY] = 25;
  2615. ActiveArmy(playerid);
  2616. } else return SendClientMessage(playerid, 0xFF002DFF,"*This zone is already captured by your team!");
  2617. } else return CaptureZoneMessage(playerid, 3);
  2618. } else return CaptureZoneMessage(playerid, 2);
  2619. } else return 0;
  2620. }
  2621. else if(checkpointid == CP[PETROL])
  2622. {
  2623. if(Spectating[playerid] == 0) {
  2624. if(UnderAttack[PETROL] == 0) {
  2625. if(PlayerInfo[playerid][OnDuty] == 0) {
  2626. if(tCP[PETROL] != gTeam[playerid]) {
  2627. CountVar[playerid][PETROL] = 25;
  2628. ActivePetrol(playerid);
  2629. } else return SendClientMessage(playerid, 0xFF002DFF,"*This zone is already captured by your team!");
  2630. } else return CaptureZoneMessage(playerid, 3);
  2631. } else return CaptureZoneMessage(playerid, 2);
  2632. } else return 0;
  2633. }
  2634. else if(checkpointid == CP[OIL])
  2635. {
  2636. if(Spectating[playerid] == 0) {
  2637. if(UnderAttack[OIL] == 0) {
  2638. if(PlayerInfo[playerid][OnDuty] == 0) {
  2639. if(tCP[OIL] != gTeam[playerid]) {
  2640. CountVar[playerid][OIL] = 25;
  2641. ActiveOil(playerid);
  2642. } else return SendClientMessage(playerid, 0xFF002DFF,"*This zone is already captured by your team!");
  2643. } else return CaptureZoneMessage(playerid, 3);
  2644. } else return CaptureZoneMessage(playerid, 2);
  2645. } else return 0;
  2646. }
  2647. return 1;
  2648. }
  2649. public OnPlayerLeaveDynamicCP(playerid, checkpointid)
  2650. {
  2651. if(checkpointid == CP[SNAKE] && Captured[playerid][SNAKE] == 0 && IsPlayerCapturing[playerid][SNAKE] == 1 && !IsPlayerInDynamicCP(playerid, CP[SNAKE]))
  2652. {
  2653. LeavingSnakeFarm(playerid);
  2654. }
  2655. if(checkpointid == CP[BAY] && Captured[playerid][BAY] == 0 && IsPlayerCapturing[playerid][BAY] == 1 && !IsPlayerInDynamicCP(playerid, CP[BAY]))
  2656. {
  2657. LeavingBay(playerid);
  2658. }
  2659. if(checkpointid == CP[BIG] && Captured[playerid][BIG] == 0 && IsPlayerCapturing[playerid][BIG] == 1 && !IsPlayerInDynamicCP(playerid, CP[BIG]))
  2660. {
  2661. LeavingArea69(playerid);
  2662. }
  2663. if(checkpointid == CP[ARMY] && Captured[playerid][ARMY] == 0 && IsPlayerCapturing[playerid][ARMY] == 1 && !IsPlayerInDynamicCP(playerid, CP[ARMY]))
  2664. {
  2665. LeavingArmy(playerid);
  2666. }
  2667. if(checkpointid == CP[PETROL] && Captured[playerid][PETROL] == 0 && IsPlayerCapturing[playerid][PETROL] == 1 && !IsPlayerInDynamicCP(playerid, CP[PETROL]))
  2668. {
  2669. LeavingPetrol(playerid);
  2670. }
  2671. if(checkpointid == CP[OIL] && Captured[playerid][OIL] == 0 && IsPlayerCapturing[playerid][OIL] == 1 && !IsPlayerInDynamicCP(playerid, CP[OIL]))
  2672. {
  2673. LeavingOil(playerid);
  2674. }
  2675. return 1;
  2676. }
  2677. public OnPlayerText(playerid, text[])
  2678. {
  2679. if(text[0] == '.' && PlayerInfo[playerid][Level] >= 1) {
  2680. new string[128]; GetPlayerName(playerid,string,sizeof(string));
  2681. format(string,sizeof(string),"[A.Chat]: %s: %s",string,text[1]);
  2682. MessageToAdmins(0x0005FFFF,string);
  2683. return 0;
  2684. }
  2685. if(text[0] == '@' && PlayerInfo[playerid][Level] >= 5) {
  2686. new string[128]; GetPlayerName(playerid,string,sizeof(string));
  2687. format(string,sizeof(string),"[L5.Chat]: %s: %s",string,text[1]);
  2688. MessageTo5(0x710C7EC8,string);
  2689. return 0;
  2690. }
  2691. if(text[0] == '$' && PlayerInfo[playerid][Level] >= 6) {
  2692. new string[128]; GetPlayerName(playerid,string,sizeof(string));
  2693. format(string,sizeof(string),"[HR.Chat]: %s: %s",string,text[1]); MessageTo6(0x99FF00AA,string);
  2694. return 0;
  2695. }
  2696. if(ServerInfo[DisableChat] == 1) {
  2697. SendClientMessage(playerid,red,"Chat has been disabled");
  2698. return 0;
  2699. }
  2700. if(PlayerInfo[playerid][Muted] == 1)
  2701. {
  2702. PlayerInfo[playerid][MuteWarnings]++;
  2703. new string[128];
  2704. if(PlayerInfo[playerid][MuteWarnings] < ServerInfo[MaxMuteWarnings]) {
  2705. format(string, sizeof(string),"Server: You are muted, if you continue to speak you will be kicked. (%d / %d)", PlayerInfo[playerid][MuteWarnings], ServerInfo[MaxMuteWarnings] );
  2706. SendClientMessage(playerid,red,string);
  2707. } else {
  2708. SendClientMessage(playerid,red,"You have been warned ! Now you have been kicked");
  2709. format(string, sizeof(string),"Zeus(1337): has kicked %s (ID %d) (Exceed Mute Warnings)", PlayerName2(playerid), playerid);
  2710. SendClientMessageToAll(red,string);
  2711. SaveToFile("KickLog",string); Kick(playerid);
  2712. } return 0;
  2713. }
  2714. if(ServerInfo[AntiSpam] == 1 && (PlayerInfo[playerid][Level] == 0 && !IsPlayerAdmin(playerid)) )
  2715. {
  2716. if(PlayerInfo[playerid][SpamCount] == 0) PlayerInfo[playerid][SpamTime] = TimeStamp();
  2717.  
  2718. PlayerInfo[playerid][SpamCount]++;
  2719. if(TimeStamp() - PlayerInfo[playerid][SpamTime] > SPAM_TIMELIMIT) { // Its OK your messages were far enough apart
  2720. PlayerInfo[playerid][SpamCount] = 0;
  2721. PlayerInfo[playerid][SpamTime] = TimeStamp();
  2722. }
  2723. else if(PlayerInfo[playerid][SpamCount] == SPAM_MAX_MSGS) {
  2724. new string[64]; format(string,sizeof(string),"Zeus(1337): has kicked %s (Flood/Spam Protection)", PlayerName2(playerid));
  2725. SendClientMessageToAll(red,string); print(string);
  2726. SaveToFile("KickLog",string);
  2727. Kick(playerid);
  2728. }
  2729. else if(PlayerInfo[playerid][SpamCount] == SPAM_MAX_MSGS-1) {
  2730. SendClientMessage(playerid,red,"Server: Anti Spam Warning! Next is a kick.");
  2731. return 0;
  2732. }
  2733. }
  2734. if(ServerInfo[AntiSwear] == 1 && PlayerInfo[playerid][Level] < ServerInfo[MaxAdminLevel])
  2735. for(new s = 0; s < ForbiddenWordCount; s++)
  2736. {
  2737. new pos;
  2738. while((pos = strfind(text,ForbiddenWords[s],true)) != -1) for(new i = pos, j = pos + strlen(ForbiddenWords[s]); i < j; i++) text[i] = '*';
  2739. }
  2740.  
  2741. if(PlayerInfo[playerid][Caps] == 1) UpperToLower(text);
  2742. if(ServerInfo[NoCaps] == 1) UpperToLower(text);
  2743.  
  2744. for(new i = 1; i < MAX_CHAT_LINES-1; i++) Chat[i] = Chat[i+1];
  2745. new ChatSTR[128]; GetPlayerName(playerid,ChatSTR,sizeof(ChatSTR)); format(ChatSTR,128,"[lchat]%s: %s",ChatSTR, text[0] );
  2746. Chat[MAX_CHAT_LINES-1] = ChatSTR;
  2747.  
  2748. switch (PlayerInfo[playerid][OnDuty])
  2749. {
  2750. case 0:
  2751. {
  2752. new string[128];
  2753. format(string,sizeof(string),"%s (%i): {FFFFFF}%s",PlayerName2(playerid),playerid,text);
  2754. SetPlayerChatBubble(playerid, text, 0xFFFFFFFF, 100.0, 10000);
  2755. printf("%s (%i): %s", PlayerName2(playerid),playerid,text);
  2756. SendClientMessageToAll(GetPlayerColor(playerid),string);
  2757. return 0;
  2758. }
  2759. case 1:
  2760. {
  2761. new aName[MAX_PLAYER_NAME], string2[128];
  2762. GetPlayerName(playerid, aName,sizeof(aName));
  2763. format(string2,sizeof(string2),"Admin %s: %s",aName,text);
  2764. printf(string2);
  2765. SendClientMessageToAll(0xFF00F5FF,string2);
  2766. return 0;
  2767. }
  2768. }
  2769. return 1;
  2770. }
  2771. public OnPlayerPickUpPickup(playerid, pickupid)
  2772. {
  2773. if(pickupid == RP && GetPlayerTeam(playerid) != Polisi) return SendClientMessage(playerid, 0xFF0000AA, "*Only Polisi team can use this briefcase.");
  2774. {
  2775. if(pickupid == RP) ShowPlayerDialog(playerid, 2, DIALOG_STYLE_LIST, "Briefcase", "Health - "cgreen"5000$\nArmour - "cgreen"10000$\n\nWeapons - "cgreen" List Weapon\nHelmet - "cgreen"15000$", "Buy", "Cancel");
  2776. }
  2777. if(pickupid == EP && GetPlayerTeam(playerid) != Teroris) return SendClientMessage(playerid, 0xFF0000AA, "Only Teroris team can use this briefcase.");
  2778. {
  2779. if(pickupid == EP) ShowPlayerDialog(playerid, 2, DIALOG_STYLE_LIST, "Briefcase", "Health - "cgreen"5000$\nArmour - "cgreen"10000$\n\nWeapons - "cgreen" List Weapon\nHelmet - "cgreen"15000$", "Buy", "Cancel");
  2780. }
  2781. return 1;
  2782. }
  2783. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  2784. {
  2785. if(IsPlayerUsingAnims[playerid])
  2786. { StopAnimLoopPlayer(playerid); }
  2787. if(GetPlayerState(playerid) == PLAYER_STATE_SPECTATING && PlayerInfo[playerid][SpecID] != INVALID_PLAYER_ID)
  2788. {
  2789. if(newkeys == KEY_JUMP) AdvanceSpectate(playerid);
  2790. else if(newkeys == KEY_SPRINT) ReverseSpectate(playerid);
  2791. else if(newkeys == KEY_FIRE) StopSpectate(playerid);
  2792. }
  2793. new Rhinomodel = GetVehicleModel(GetPlayerVehicleID(playerid));
  2794. if (GetPlayerScore(playerid) > 500){
  2795. if(Rhinomodel == 432) {
  2796. SendClientMessage(playerid, red, "*You need Score 500+ to drive tanks!");
  2797. RemovePlayerFromVehicle(playerid);
  2798. }
  2799. }
  2800. new SEA = GetVehicleModel(GetPlayerVehicleID(playerid));
  2801. if (GetPlayerScore(playerid) > 1000){
  2802. if(SEA == 447) {
  2803. SendClientMessage(playerid, red, "*You need Score 1000+ to drive Sea Sparrows!");
  2804. RemovePlayerFromVehicle(playerid);
  2805. }
  2806. }
  2807. new Hydramodel = GetVehicleModel(GetPlayerVehicleID(playerid));
  2808. if (GetPlayerScore(playerid) > 2500) {
  2809. if(Hydramodel == 520) {
  2810. SendClientMessage(playerid, red, "*You need Score 2500+ to drive Hydras!");
  2811. RemovePlayerFromVehicle(playerid);
  2812. }
  2813. }
  2814. new Huntermodel = GetVehicleModel(GetPlayerVehicleID(playerid));
  2815. if (GetPlayerScore(playerid) > 5000) {
  2816. if(Huntermodel == 425) {
  2817. SendClientMessage(playerid, red, "*You need Score 5000+ to drive Hunters!");
  2818. RemovePlayerFromVehicle(playerid);
  2819. }
  2820. }
  2821. return 1;
  2822. }
  2823. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  2824. {
  2825.  
  2826. if(strfind(inputtext,"%",true) != -1) return SendClientMessage(playerid, red," ");
  2827.  
  2828. switch(dialogid) // Lookup the dialogid
  2829. {
  2830. case 245:
  2831. {
  2832. if(!response)
  2833. {
  2834. SendClientMessage(playerid, red,"Batal");
  2835. return 1; // We processed it
  2836. }
  2837. switch(listitem) // This is far more efficient than using an if-elseif-else structure
  2838. {
  2839. case 0:
  2840. {
  2841. ChangeVehicleColor(GetPlayerVehicleID(playerid), 1, 1);
  2842. }
  2843. case 1:
  2844. {
  2845. ChangeVehicleColor(GetPlayerVehicleID(playerid), 236, 236);
  2846. }
  2847. case 2:
  2848. {
  2849. ChangeVehicleColor(GetPlayerVehicleID(playerid), 79, 79);
  2850. }
  2851. case 3:
  2852. {
  2853. ChangeVehicleColor(GetPlayerVehicleID(playerid), 6, 6);
  2854. }
  2855. case 4:
  2856. {
  2857. ChangeVehicleColor(GetPlayerVehicleID(playerid), 55, 55);
  2858. }
  2859. case 5:
  2860. {
  2861. ChangeVehicleColor(GetPlayerVehicleID(playerid), 147, 147);
  2862. }
  2863. case 6:
  2864. {
  2865. ChangeVehicleColor(GetPlayerVehicleID(playerid), 3, 3);
  2866. }
  2867. case 7:
  2868. {
  2869. ChangeVehicleColor(GetPlayerVehicleID(playerid), 183, 183);
  2870. }
  2871. case 8:
  2872. {
  2873. ChangeVehicleColor(GetPlayerVehicleID(playerid), 186, 186);
  2874. }
  2875. case 9:
  2876. {
  2877. ChangeVehicleColor(GetPlayerVehicleID(playerid), 91, 91);
  2878. }
  2879. case 10:
  2880. {
  2881. ChangeVehicleColor(GetPlayerVehicleID(playerid), 000, 000);
  2882. }
  2883. }
  2884. }
  2885. case 786:
  2886. {
  2887. if(!response)
  2888. {
  2889. SendClientMessage(playerid, red,"Cancel");
  2890. return 1; // We processed it
  2891. }
  2892. switch(listitem) // This is far more efficient than using an if-elseif-else structure
  2893. {
  2894. case 0:
  2895. {
  2896. if(PlayerInfo[playerid][Level] >= 1)
  2897. {
  2898. SendClientMessage(playerid,blue," ---=Level 1 Admin Commands =---");
  2899. SendClientMessage(playerid,lightblue," FLIP, FIX, REPAIR, LP, CARCOLOUR, LTUNE, SETMYTIME, TIME, GETID, LINKCAR, LNOS, LHY, AFORUM/AF, AREAADMIN, COUNT");
  2900. }
  2901. return 1;
  2902. }
  2903.  
  2904. case 1:
  2905. {
  2906. if(PlayerInfo[playerid][Level] >= 2)
  2907. {
  2908. SendClientMessage(playerid,blue," ---=Level 2 Admin Commands =---");
  2909. SendClientMessage(playerid,lightblue,"giveweapon, setcolour, lockcar, unlockcar, burn, spawn, disarm, lcar, lbike,");
  2910. SendClientMessage(playerid,lightblue,"lheli, lboat, lplane, hightlight, announce, announce2, screen, jetpack, flip,");
  2911. SendClientMessage(playerid,lightblue,"goto, vgoto, lgoto, fu, kick, warn, slap, jailed, frozen, mute, unmute, muted,");
  2912. SendClientMessage(playerid,lightblue,"laston, ls, lsof, lsv, clearchat, lmenu, ltele, cm, ltmenu,");
  2913. SendClientMessage(playerid,lightblue,"write,explode,burn,async,ban,setmaker");
  2914. }
  2915. return 1;
  2916. }
  2917.  
  2918. case 2:
  2919. {
  2920. if(PlayerInfo[playerid][Level] >= 3)
  2921. {
  2922. SendClientMessage(playerid,blue," ---=Level 3 Admin Commands =---");
  2923. SendClientMessage(playerid,lightblue,"sethealth, setarmour, setcash, setskin, setwanted, setweather,");
  2924. SendClientMessage(playerid,lightblue,"settime, setworld, setinterior, force, eject, bankrupt, sbankrupt, ubound, lweaps,");
  2925. SendClientMessage(playerid,lightblue,"lammo,duel, car, carhealth, carcolour, setping, setgravity, destroycar,");
  2926. SendClientMessage(playerid,lightblue,"teleplayer, vget, givecar, gethere, get, jail, unjail, freeze, ");
  2927. SendClientMessage(playerid,lightblue,"unfreeze, akill,aka, disablechat, ban, clearallchat, caps, move, moveplayer, healall,");
  2928. SendClientMessage(playerid,lightblue,"setallweather, setalltime, setallworld, unfreezeall");
  2929. SendClientMessage(playerid,lightblue,"lweather, ltime, lweapons, setpass,changename");
  2930. }
  2931. return 1;
  2932. }
  2933. case 3:
  2934. {
  2935. if(PlayerInfo[playerid][Level] >= 4)
  2936. {
  2937. SendClientMessage(playerid,blue," ---=Level 4 Admin Commands =---");
  2938. SendClientMessage(playerid,lightblue,"enable, disable, ban, rban, crash, spam, god, godcar, die, uconfig,");
  2939. SendClientMessage(playerid,lightblue,"botcheck, lockserver, unlockserver, forbidname, forbidword, ");
  2940. SendClientMessage(playerid,lightblue,"fakedeath, spawnall, muteall, unmuteall, getall, killall, freezeall, Giveallweapon, Armourall, GiveAllcash.");
  2941. SendClientMessage(playerid,lightblue,"kickall, slapalll, explodeall, disarmall, ejectall, SetAllcash, Setallscore");
  2942. SendClientMessage(playerid,lightblue,",setname , respawnallcar, rheal, rangeweapon, oban");
  2943. }
  2944. return 1;
  2945. }
  2946.  
  2947. case 4:
  2948. {
  2949. if(PlayerInfo[playerid][Level] >= 5)
  2950. {
  2951. SendClientMessage(playerid,blue," ---=Level 5 Admin Commands =---");
  2952. SendClientMessage(playerid,lightblue,"god, sgod, pickup, object, fakechat, setallscore.");
  2953. SendClientMessage(playerid,lightblue,"setmoderator, unsetmoderator, setlevel, settemplevel , setkills, setdeaths, setdonor");
  2954. }
  2955. return 1;
  2956. }
  2957. case 5:
  2958. {
  2959. if(PlayerInfo[playerid][Level] >= 6)
  2960. {
  2961. SendClientMessage(playerid,blue," ---=Level 6 Admin Commands =---");
  2962. SendClientMessage(playerid,lightblue,"saveallstats");
  2963. }
  2964. return 1;
  2965. }
  2966. }
  2967. }
  2968. case 125:
  2969. {
  2970. if(!response)
  2971. {
  2972. Kick(playerid);
  2973. }
  2974. if (udb_Exists(PlayerName2(playerid))) {
  2975. if (udb_CheckLogin(PlayerName2(playerid),inputtext))
  2976. {
  2977. new file[256], tmp3[100], string[128];
  2978. format(file,sizeof(file),"/ladmin/users/%s.sav",udb_encode(PlayerName2(playerid)) );
  2979. GetPlayerIp(playerid,tmp3,100);
  2980. dini_Set(file,"ip",tmp3);
  2981. LoginPlayer(playerid);
  2982. PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
  2983. if(PlayerInfo[playerid][Level] > 0) {
  2984. format(string,sizeof(string),"[ADMIN] Successfully Logged In. (Admin Level %d)", PlayerInfo[playerid][Level] );
  2985. return SendClientMessage(playerid,0x0A00FFFF,string);
  2986. } else return SendClientMessage(playerid,0x0A00FFFF,"[LOGIN] Successfully Logged In");
  2987. }
  2988. else {
  2989. PlayerInfo[playerid][FailLogin]++;
  2990. printf("LOGIN: %s has failed to login, Wrong Password (%s) Attempt (%d)", PlayerName2(playerid),inputtext, PlayerInfo[playerid][FailLogin] );
  2991. if(PlayerInfo[playerid][FailLogin] == MAX_FAIL_LOGINS)
  2992. {
  2993. new string[128]; format(string, sizeof(string), "%s has been kicked (Failed Logins)", PlayerName2(playerid) );
  2994. SendClientMessageToAll(red, string);
  2995. print(string);
  2996. Kick(playerid);
  2997. }
  2998. }
  2999. }
  3000. new string[200];
  3001. format(string, sizeof(string),""cwhite"Welcome "cred"%s "cwhite"you are already registered\nKindly enter password to login to your account\n"cred"Incorrect password!", PlayerName2(playerid));
  3002. ShowPlayerDialog(playerid, 125, DIALOG_STYLE_INPUT, "Login",string,"Login","Kick");
  3003. }
  3004. case 126:
  3005. {
  3006. if(!response)
  3007. {
  3008. Kick(playerid);
  3009. }
  3010. if (strlen(inputtext) < 4 || strlen(inputtext) > 20) {
  3011. new string[200];
  3012. format(string, sizeof(string),""cwhite"Welcome "cred"%s "cwhite"You are not register\n Type password to register\n"cred"Invalid password length", PlayerName2(playerid));
  3013. ShowPlayerDialog(playerid, 126, DIALOG_STYLE_INPUT, "Register",string,"Register","Kick");
  3014. }
  3015. if (!udb_Exists(PlayerName2(playerid))) {
  3016. if (udb_Create(PlayerName2(playerid),inputtext))
  3017. {
  3018. new file[256],name[MAX_PLAYER_NAME], tmp3[100];
  3019. new strdate[20], year,month,day; getdate(year, month, day);
  3020. GetPlayerName(playerid,name,sizeof(name)); format(file,sizeof(file),"/ladmin/users/%s.sav",udb_encode(name));
  3021. GetPlayerIp(playerid,tmp3,100); dini_Set(file,"ip",tmp3);
  3022. // dini_Set(file,"password",params);
  3023. dUserSetINT(PlayerName2(playerid)).("registered",1);
  3024. format(strdate, sizeof(strdate), "%d/%d/%d",day,month,year);
  3025. dini_Set(file,"RegisteredDate",strdate);
  3026. dUserSetINT(PlayerName2(playerid)).("loggedin",1);
  3027. dUserSetINT(PlayerName2(playerid)).("banned",0);
  3028. dUserSetINT(PlayerName2(playerid)).("level",0);
  3029. dUserSetINT(PlayerName2(playerid)).("LastOn",0);
  3030. dUserSetINT(PlayerName2(playerid)).("money",15000);
  3031. dUserSetINT(PlayerName2(playerid)).("Score",10);
  3032. dUserSetINT(PlayerName2(playerid)).("kills",0);
  3033. dUserSetINT(PlayerName2(playerid)).("deaths",0);
  3034. dUserSetINT(PlayerName2(playerid)).("hours",0);
  3035. dUserSetINT(PlayerName2(playerid)).("minutes",0);
  3036. dUserSetINT(PlayerName2(playerid)).("seconds",0);
  3037. dUserSetINT(PlayerName2(playerid)).("dRank",0);
  3038. PlayerInfo[playerid][LoggedIn] = 1;
  3039. PlayerInfo[playerid][Registered] = 1;
  3040. SendClientMessage(playerid, green, "[LOGIN] You are now registered, and have been automaticaly logged in");
  3041. PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
  3042. }
  3043. }
  3044. }
  3045. case 183:
  3046. {
  3047. if(!response)
  3048. {
  3049. ShowPlayerDialog(ID[playerid],183,DIALOG_STYLE_INPUT,"Password After changing Name","You Must Added New Password For Your New Name\n{FF0000}Or Your account will Lost!","Set","");
  3050. }
  3051. new string[128];
  3052. dUserSetINT(PlayerName2(ID[playerid])).("password_hash",udb_hash(inputtext) );
  3053. PlayerPlaySound(ID[playerid],1057,0.0,0.0,0.0);
  3054. format(string, sizeof(string),"[PASSWORD]You have successfully changed your password to \"%s\"",inputtext);
  3055. SendClientMessage(ID[playerid],0x0A00FFFF,string);
  3056. }
  3057. }
  3058. if(response)
  3059. {
  3060. switch(dialogid)
  3061. {
  3062. case 2:
  3063. {
  3064. switch(listitem)
  3065. {
  3066. case 0:
  3067. {
  3068. new id;
  3069. new Float:pHealth; // health var
  3070. GetPlayerHealth(id, pHealth);
  3071. if(GetPlayerMoney(playerid) < 5000) return SendClientMessage(playerid, 0xFF0000AA, "ERROR: You don't have enough cash.");
  3072. if(pHealth >=100) return SendClientMessage(playerid, 0xFF0000AA, "ERROR: You have full health.");
  3073.  
  3074. GivePlayerMoney(playerid, -5000);
  3075. SetPlayerHealth(playerid, 100.0);
  3076. SendClientMessage(playerid, 0xFFFFFF, "*You bought Health");
  3077. }
  3078. case 1:
  3079. {
  3080. new id;
  3081. new Float:pArmour; // health var
  3082. GetPlayerArmour(id, pArmour);
  3083. if(GetPlayerMoney(playerid) < 10000) return SendClientMessage(playerid, 0xFF0000AA, "ERROR: You don't have enough cash.");
  3084. if(pArmour >=100) return SendClientMessage(playerid, 0xFF0000AA, "ERROR: You have full armour.");
  3085. GivePlayerMoney(playerid, -10000);
  3086. SetPlayerArmour(playerid, 100.0);
  3087. SendClientMessage(playerid, 0xFFFFFF, "*You bought Armour");
  3088. }
  3089. case 2:
  3090. {
  3091. ShowPlayerDialog(playerid, 30, DIALOG_STYLE_LIST, "Weapons", "M4 - "cgreen"8000$\nAK47 - "cgreen"8000$\nMP5 - "cgreen"6000$\nUZI - "cgreen"12000$\nCombat Shotgun - "cgreen"10000$\nShotgun - "cgreen"5000$\nDesert Eagle - "cgreen"6000$\nSilent Pistol - "cgreen"3000$\nPistol - "cgreen"3000$", "Buy", "Exit");
  3092. }
  3093. case 3:
  3094. {
  3095. if(GetPlayerMoney(playerid) < 15000) return SendClientMessage(playerid, 0xFF0000AA, "ERROR: You don't have enough cash.");
  3096. if(Helmet[playerid] == 1) return SendClientMessage(playerid, 0xFF0000AA, "ERROR: You already have helmet !");
  3097. GivePlayerMoney(playerid, -15000);
  3098. Helmet[playerid] = 1;
  3099. SendClientMessage(playerid,0x05FF00FF,"[BUY] You bought Helmet");
  3100. SendClientMessage(playerid,0xFF00C3FF,"*Helmet is protect you from headshot");
  3101. }
  3102. }
  3103. }
  3104.  
  3105. }
  3106. }
  3107. if(response)
  3108. {
  3109. switch(dialogid)
  3110. {
  3111. case 30:
  3112. {
  3113. switch(listitem)
  3114. {
  3115. case 0:
  3116. {
  3117. if(GetPlayerMoney(playerid) < 8000) return SendClientMessage(playerid, 0xFF0000AA, "ERROR: You don't have enough cash.");
  3118. GivePlayerMoney(playerid, -8000);
  3119. GivePlayerWeapon(playerid, 31, 300);
  3120. SendClientMessage(playerid, 0x05FF00FF, "[BUY]You bought M4");
  3121. }
  3122. case 1:
  3123. {
  3124. if(GetPlayerMoney(playerid) < 8000) return SendClientMessage(playerid, 0xFF0000AA, "ERROR: You don't have enough cash.");
  3125. GivePlayerMoney(playerid, -8000);
  3126. GivePlayerWeapon(playerid, 30, 300);
  3127. SendClientMessage(playerid, 0x05FF00FF, "[BUY]You bought AK 47");
  3128. }
  3129. case 2:
  3130. {
  3131. if(GetPlayerMoney(playerid) < 6000) return SendClientMessage(playerid, 0xFF0000AA, "ERROR: You don't have enough cash.");
  3132. GivePlayerMoney(playerid, -6000);
  3133. GivePlayerWeapon(playerid, 29, 300);
  3134. SendClientMessage(playerid, 0x05FF00FF, "[BUY]You bought MP5");
  3135. }
  3136. case 3:
  3137. {
  3138. if(GetPlayerMoney(playerid) < 12000) return SendClientMessage(playerid, 0xFF0000AA, "ERROR: You don't have enough cash.");
  3139. GivePlayerMoney(playerid, -12000);
  3140. GivePlayerWeapon(playerid, 28, 500);
  3141. SendClientMessage(playerid, 0x05FF00FF, "[BUY]You bought UZI");
  3142. }
  3143. case 4:
  3144. {
  3145. if(GetPlayerMoney(playerid) < 10000) return SendClientMessage(playerid, 0xFF0000AA, "ERROR: You don't have enough cash.");
  3146. GivePlayerMoney(playerid, -10000);
  3147. GivePlayerWeapon(playerid, 27, 300);
  3148. SendClientMessage(playerid, 0x05FF00FF, "[BUY]You bought Combat Shotgun");
  3149. }
  3150. case 5:
  3151. {
  3152. if(GetPlayerMoney(playerid) < 5000) return SendClientMessage(playerid, 0xFF0000AA, "ERROR: You don't have enough cash.");
  3153. GivePlayerMoney(playerid, -5000);
  3154. GivePlayerWeapon(playerid, 25, 300);
  3155. SendClientMessage(playerid, 0x05FF00FF, "[BUY]You bought Shotgun");
  3156. }
  3157. case 6:
  3158. {
  3159. if(GetPlayerMoney(playerid) < 6000) return SendClientMessage(playerid, 0xFF0000AA, "ERROR: You don't have enough cash.");
  3160. GivePlayerMoney(playerid, -6000);
  3161. GivePlayerWeapon(playerid, 24, 300);
  3162. SendClientMessage(playerid, 0x05FF00FF, "[BUY]You bought Desert Eagle");
  3163. }
  3164. case 7:
  3165. {
  3166. if(GetPlayerMoney(playerid) < 3000) return SendClientMessage(playerid, 0xFF0000AA, "ERROR: You don't have enough cash.");
  3167. GivePlayerMoney(playerid, -3000);
  3168. GivePlayerWeapon(playerid, 23, 300);
  3169. SendClientMessage(playerid, 0x05FF00FF, "[BUY]You bought Silencer");
  3170. }
  3171. case 8:
  3172. {
  3173. if(GetPlayerMoney(playerid) < 3000) return SendClientMessage(playerid, 0xFF0000AA, "ERROR: You don't have enough cash.");
  3174. GivePlayerMoney(playerid, -3000);
  3175. GivePlayerWeapon(playerid, 22, 300);
  3176. SendClientMessage(playerid, 0x05FF00FF, "[BUY]You bought Pistol");
  3177. }
  3178. }
  3179. }
  3180. }
  3181. }
  3182. return 1;
  3183. }
  3184. forward CountDown();
  3185. public CountDown()
  3186. {
  3187. foreach(Player, playerid)
  3188. {
  3189. if(IsPlayerInDynamicCP(playerid, CP[SNAKE]) && UnderAttack[SNAKE] == 1 && IsPlayerCapturing[playerid][SNAKE] == 1)
  3190. {
  3191. CountVar[playerid][SNAKE]--;
  3192. new str1[124];
  3193. TextDrawShowForPlayer(playerid, CountText[playerid]);
  3194. format(str1, sizeof(str1),"~h~~b~Capture : ~r~%d/~g~25 ~w~Second", CountVar[playerid][SNAKE]);
  3195. TextDrawSetString(CountText[playerid], str1);
  3196. }
  3197. if(IsPlayerInDynamicCP(playerid, CP[BAY]) && UnderAttack[BAY] == 1 && IsPlayerCapturing[playerid][BAY] == 1)
  3198. {
  3199. CountVar[playerid][BAY]--;
  3200. new str1[124];
  3201. TextDrawShowForPlayer(playerid, CountText[playerid]);
  3202. format(str1, sizeof(str1),"~h~~b~Capture : ~r~%d/~g~25 ~w~Second", CountVar[playerid][BAY]);
  3203. TextDrawSetString(CountText[playerid], str1);
  3204. }
  3205. if(IsPlayerInDynamicCP(playerid, CP[BIG]) && UnderAttack[BIG] == 1 && IsPlayerCapturing[playerid][BIG] == 1)
  3206. {
  3207. CountVar[playerid][BIG]--;
  3208. new str1[124];
  3209. TextDrawShowForPlayer(playerid, CountText[playerid]);
  3210. format(str1, sizeof(str1),"~h~~b~Capture : ~r~%d/~g~25 ~w~Second", CountVar[playerid][BIG]);
  3211. TextDrawSetString(CountText[playerid], str1);
  3212. }
  3213. if(IsPlayerInDynamicCP(playerid, CP[ARMY]) && UnderAttack[ARMY] == 1 && IsPlayerCapturing[playerid][ARMY] == 1)
  3214. {
  3215. CountVar[playerid][ARMY]--;
  3216. new str1[124];
  3217. TextDrawShowForPlayer(playerid, CountText[playerid]);
  3218. format(str1, sizeof(str1),"~h~~b~Capture : ~r~%d/~g~25 ~w~Second", CountVar[playerid][ARMY]);
  3219. TextDrawSetString(CountText[playerid], str1);
  3220. }
  3221. if(IsPlayerInDynamicCP(playerid, CP[PETROL]) && UnderAttack[PETROL] == 1 && IsPlayerCapturing[playerid][PETROL] == 1)
  3222. {
  3223. CountVar[playerid][PETROL]--;
  3224. new str1[124];
  3225. TextDrawShowForPlayer(playerid, CountText[playerid]);
  3226. format(str1, sizeof(str1),"~h~~b~Capture : ~r~%d/~g~25 ~w~Second", CountVar[playerid][PETROL]);
  3227. TextDrawSetString(CountText[playerid], str1);
  3228. }
  3229. if(IsPlayerInDynamicCP(playerid, CP[OIL]) && UnderAttack[OIL] == 1 && IsPlayerCapturing[playerid][OIL] == 1)
  3230. {
  3231. CountVar[playerid][OIL]--;
  3232. new str1[124];
  3233. TextDrawShowForPlayer(playerid, CountText[playerid]);
  3234. format(str1, sizeof(str1),"~h~~b~Capture : ~r~%d/~g~25 ~w~Second", CountVar[playerid][OIL]);
  3235. TextDrawSetString(CountText[playerid], str1);
  3236. }
  3237. }
  3238. return 1;
  3239. }
  3240. showstats(playerid, player1)
  3241. {
  3242. new string[100], pDeaths, player1, h, m, s,playername[MAX_PLAYER_NAME];
  3243. if(IsPlayerConnected(player1)) {
  3244. TotalGameTime(player1, h, m, s);
  3245. GetPlayerName(player1, playername, sizeof(playername));
  3246. if(PlayerInfo[player1][Deaths] == 0) pDeaths = 1; else pDeaths = PlayerInfo[player1][Deaths];
  3247. new str[120], str1[100], str2[100];
  3248. format(str, sizeof(str),"| ------ | %s's Status | ------- |", PlayerName2(player1));
  3249. format(string,sizeof(string),"Scores: %d | Money: $%d | Kills: %d | Deaths: %d | K/D Ratio: %0.2f", GetPlayerScore(player1), GetPlayerMoney(player1), PlayerInfo[player1][Kills], PlayerInfo[player1][Deaths], Float:PlayerInfo[player1][Kills]/Float:pDeaths);
  3250. format(str1, sizeof(str1),"Admin Level: %d | Moderator: %s | Rank: %s | Team: %s | Class: %s", PlayerInfo[player1][Level], PlayerInfo[player1][Helper] ? ("Yes") : ("No"), GetRankName(player1), GetTeamName(player1), GetClass(player1));
  3251. format(str2, sizeof(str2),"TimePlayed: [%d] hrs [%d] mins [%d] secs", h, m, s);
  3252. SendClientMessage(playerid, 0x00FF0AFF,str);
  3253. SendClientMessage(playerid, 0x000FFFFF,string);
  3254. SendClientMessage(playerid, 0xFF5A00FF,str1);
  3255. SendClientMessage(playerid, 0xFF0005FF,str2);
  3256. SendClientMessage(playerid, 0xFFFFFFFF,"| ---------------------------------------------------- |");
  3257. } else return SendClientMessage(playerid, red, "Player Not Connected!");
  3258. return 1;
  3259. }
  3260. #if defined USE_STATS
  3261. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  3262. {
  3263. showstats(playerid, clickedplayerid);
  3264. return 1;
  3265. }
  3266. #endif
  3267. stock GetTeamCount(teamid)
  3268. {
  3269. new playercount = 0;//Set our count to 0 as we have not counted any players yet..
  3270. for(new i = 0; i < MAX_PLAYERS; i++)//Loop through MAX_PLAYERS(I suggest you redefine MAX_PLAYERS to ensure max efficency)..
  3271. {
  3272. if(GetPlayerState(i) == PLAYER_STATE_NONE) continue;//If a player is in class selection continue..
  3273. if(gTeam[i] != teamid) continue;//If a player is NOT in the specified teamid continue..
  3274. playercount++;//else (there in the teamid) so count the player in the team..
  3275. }
  3276. return playercount;//Return the total players counted in the specified team..
  3277. }
  3278. ////////////////////////////////////////////////////////////////////////
  3279. public OnPlayerCommandPerformed(playerid, cmdtext[], success)
  3280. {
  3281. if(!success) SendClientMessage(playerid, 0xFF0000FF, "That command does not exist - /cmds for a list of commands.");
  3282. return 1;
  3283. }
  3284. CMD:teams(playerid, params[])
  3285. {
  3286. new team1count = GetTeamCount(Polisi);
  3287. new team2count = GetTeamCount(Teroris);
  3288. new str[500];
  3289. /*SendClientMessage(playerid, orange,"|_____| Teams |_____| ");
  3290. format(str, sizeof(str),"> Polisi: %d Players", team1count);
  3291. SendClientMessage(playerid, 0x0000FFFF, str);
  3292. format(str, sizeof(str),"> Teroris: %d Players", team2count);
  3293. SendClientMessage(playerid, 0xFF0000FF, str);*/
  3294. format(str, sizeof(str),"> {000FFF}Polisi: {00FF00}%d {EBFF00}Players\n> {FF002D}Teroris: {00FF00}%d {EBFF00}Players", team1count, team2count);
  3295. ShowPlayerDialog(playerid, 9999, DIALOG_STYLE_MSGBOX,"Teams",str,"OK","");
  3296. return 1;
  3297. }
  3298. CMD:getteam(playerid, params[])
  3299. {
  3300. if(PlayerInfo[playerid][Level] >= 4)
  3301. {
  3302. new team[100], Float:x, Float:y, Float:z, interior = GetPlayerInterior(playerid), world = GetPlayerVirtualWorld(playerid);
  3303. if(sscanf(params,"s[100]",team)) return SendClientMessage(playerid, 0xFF000FFF,"USAGE: /getteam [POLISI/TERORIS]");
  3304. GetPlayerPos(playerid, x, y, z);
  3305. //---------JAPAN------------------------
  3306. if(strfind(params,"POLISI",true) != -1) //Returns 4 (Thanks to wiki for helping in strfind).
  3307. {
  3308. for(new i = 0; i < MAX_PLAYERS; i++)
  3309. {
  3310. if(gTeam[i] == Polisi)
  3311. {
  3312. SetPlayerInterior(i, interior);
  3313. SetPlayerVirtualWorld(i, world);
  3314. SetPlayerPos(i, x+3, y, z);
  3315. }
  3316. }
  3317. new string[100];
  3318. format(string,sizeof(string),"Administrator %s has teleported team %s",PlayerName2(playerid),params);
  3319. SendClientMessageToAll(0x0000FFFF, string);
  3320. }
  3321. //---------------------------------
  3322. //--------Pakistan----------------
  3323. if(strfind(params,"TERORIS",true) != -1) //Returns 4 (Thanks to wiki for helping in strfind).
  3324. {
  3325. for(new i = 0; i < MAX_PLAYERS; i++)
  3326. {
  3327. if(gTeam[i] == Teroris)
  3328. {
  3329. SetPlayerPos(i, x+3, y, z);
  3330. SetPlayerInterior(i, interior);
  3331. SetPlayerVirtualWorld(i, world);
  3332. }
  3333. }
  3334. new string[100];
  3335. format(string,sizeof(string),"Administrator %s has teleported team %s",PlayerName2(playerid),params);
  3336. SendClientMessageToAll(0x0000FFFF, string);
  3337. }
  3338. }
  3339. else return SendClientMessage(playerid, 0xFF000FFF,"*You are not high enough level to use this command!");
  3340. return 1;
  3341. }
  3342. CMD:spawnteam(playerid, params[])
  3343. {
  3344. if(PlayerInfo[playerid][Level] >= 4)
  3345. {
  3346. new team[100];
  3347. if(sscanf(params,"s[100]",team)) return SendClientMessage(playerid, 0xFF000FFF,"USAGE: /spawnteam [POLISI/TERORIS]");
  3348. //---------JAPAN------------------------
  3349. if(strfind(params,"POLISI",true) != -1) //Returns 4 (Thanks to wiki for helping in strfind).
  3350. {
  3351. for(new i = 0; i < MAX_PLAYERS; i++)
  3352. {
  3353. if(gTeam[i] == Polisi)
  3354. {
  3355. SpawnPlayer(i);
  3356. }
  3357. }
  3358. new string[100];
  3359. format(string,sizeof(string),"Administrator %s has spawned team %s",PlayerName2(playerid),params);
  3360. SendClientMessageToAll(0x0000FFFF, string);
  3361. }
  3362. //---------------------------------
  3363. //--------Pakistan----------------
  3364. if(strfind(params,"TERORIS",true) != -1) //Returns 4 (Thanks to wiki for helping in strfind).
  3365. {
  3366. for(new i = 0; i < MAX_PLAYERS; i++)
  3367. {
  3368. if(gTeam[i] == Teroris)
  3369. {
  3370. SpawnPlayer(i);
  3371. }
  3372. }
  3373. new string[100];
  3374. format(string,sizeof(string),"Administrator %s has spawned team %s",PlayerName2(playerid),params);
  3375. SendClientMessageToAll(0x0000FFFF, string);
  3376. }
  3377. }
  3378. else return SendClientMessage(playerid, 0xFF000FFF,"*You are not high enough level to use this command!");
  3379. return 1;
  3380. }
  3381. CMD:freezeteam(playerid, params[])
  3382. {
  3383. if(PlayerInfo[playerid][Level] >= 4)
  3384. {
  3385. new team[100];
  3386. if(sscanf(params,"s[100]",team)) return SendClientMessage(playerid, 0xFF000FFF,"USAGE: /freezeteam [POLISI/TERORIS]");
  3387. //---------JAPAN------------------------
  3388. if(strfind(params,"POLISI",true) != -1) //Returns 4 (Thanks to wiki for helping in strfind).
  3389. {
  3390. for(new i = 0; i < MAX_PLAYERS; i++)
  3391. {
  3392. if(gTeam[i] == Polisi)
  3393. {
  3394. TogglePlayerControllable(i, false);
  3395. PlayerInfo[i][Frozen] = 1;
  3396. }
  3397. }
  3398. new string[100];
  3399. format(string,sizeof(string),"Administrator %s has frozen team %s",PlayerName2(playerid),params);
  3400. SendClientMessageToAll(0x0000FFFF, string);
  3401. }
  3402. //---------------------------------
  3403. //--------Pakistan----------------
  3404. if(strfind(params,"TERORIS",true) != -1) //Returns 4 (Thanks to wiki for helping in strfind).
  3405. {
  3406. for(new i = 0; i < MAX_PLAYERS; i++)
  3407. {
  3408. if(gTeam[i] == Teroris)
  3409. {
  3410. TogglePlayerControllable(i, false);
  3411. PlayerInfo[i][Frozen] = 1;
  3412. }
  3413. }
  3414. new string[100];
  3415. format(string,sizeof(string),"Administrator %s has frozen team %s",PlayerName2(playerid),params);
  3416. SendClientMessageToAll(0x0000FFFF, string);
  3417. }
  3418. }
  3419. else return SendClientMessage(playerid, 0xFF000FFF,"*You are not high enough level to use this command!");
  3420. return 1;
  3421. }
  3422. CMD:unfreezeteam(playerid, params[])
  3423. {
  3424. if(PlayerInfo[playerid][Level] >= 4)
  3425. {
  3426. new team[100];
  3427. if(sscanf(params,"s[100]",team)) return SendClientMessage(playerid, RED,"USAGE: /unfreezeteam [POLISI/TERORIS]");
  3428. //---------JAPAN------------------------
  3429. if(strfind(params,"POLISI",true) != -1) //Returns 4 (Thanks to wiki for helping in strfind).
  3430. {
  3431. for(new i = 0; i < MAX_PLAYERS; i++)
  3432. {
  3433. if(gTeam[i] == Polisi)
  3434. {
  3435. TogglePlayerControllable(i, true);
  3436. PlayerInfo[i][Frozen] = 0;
  3437. }
  3438. }
  3439. new string[100];
  3440. format(string,sizeof(string),"Administrator %s has unfrozen team %s",PlayerName2(playerid),params);
  3441. SendClientMessageToAll(0x0000FFFF, string);
  3442. }
  3443. //---------------------------------
  3444. //--------Pakistan----------------
  3445. if(strfind(params,"TERORIS",true) != -1) //Returns 4 (Thanks to wiki for helping in strfind).
  3446. {
  3447. for(new i = 0; i < MAX_PLAYERS; i++)
  3448. {
  3449. if(gTeam[i] == Teroris)
  3450. {
  3451. TogglePlayerControllable(i, true);
  3452. PlayerInfo[i][Frozen] = 0;
  3453. }
  3454. }
  3455. new string[100];
  3456. format(string,sizeof(string),"Administrator %s has unfrozen team %s",PlayerName2(playerid),params);
  3457. SendClientMessageToAll(0x0000FFFF, string);
  3458. }
  3459. }
  3460. else return SendClientMessage(playerid, 0xFF000FFF,"*You are not high enough level to use this command!");
  3461. return 1;
  3462. }
  3463. CMD:disarmteam(playerid, params[])
  3464. {
  3465. if(PlayerInfo[playerid][Level] >= 4)
  3466. {
  3467. new team[100];
  3468. if(sscanf(params,"s[100]",team)) return SendClientMessage(playerid, RED,"USAGE: /unfreezeteam [POLISI/TERORIS]");
  3469. //---------JAPAN------------------------
  3470. if(strfind(params,"POLISI",true) != -1) //Returns 4 (Thanks to wiki for helping in strfind).
  3471. {
  3472. for(new i = 0; i < MAX_PLAYERS; i++)
  3473. {
  3474. if(gTeam[i] == Polisi)
  3475. {
  3476. ResetPlayerWeapons(i);
  3477. }
  3478. }
  3479. new string[100];
  3480. format(string,sizeof(string),"Administrator %s has disarmed team %s",PlayerName2(playerid),params);
  3481. SendClientMessageToAll(blue, string);
  3482. }
  3483. //---------------------------------
  3484. //--------Pakistan----------------
  3485. if(strfind(params,"TERORIS",true) != -1) //Returns 4 (Thanks to wiki for helping in strfind).
  3486. {
  3487. for(new i = 0; i < MAX_PLAYERS; i++)
  3488. {
  3489. if(gTeam[i] == Teroris)
  3490. {
  3491. ResetPlayerWeapons(i);
  3492. }
  3493. }
  3494. new string[100];
  3495. format(string,sizeof(string),"Administrator %s has disarmed team %s",PlayerName2(playerid),params);
  3496. SendClientMessageToAll(blue, string);
  3497. }
  3498. //--------INDO----------------
  3499. }
  3500. else return SendClientMessage(playerid, 0xFF000FFF,"*You are not high enough level to use this command!");
  3501. return 1;
  3502. }
  3503. CMD:givescoreteam(playerid, params[])
  3504. {
  3505. if(PlayerInfo[playerid][Level] >= 4)
  3506. {
  3507. new team[100], amount;
  3508. if(sscanf(params,"s[100]d",team, amount)) return SendClientMessage(playerid, RED,"USAGE: /givescoreteam [POLISI/TERORIS] [amount]");
  3509. //---------JAPAN------------------------
  3510. if(strfind(params,"POLISI",true) != -1) //Returns 4 (Thanks to wiki for helping in strfind).
  3511. {
  3512. for(new i = 0; i < MAX_PLAYERS; i++)
  3513. {
  3514. if(gTeam[i] == Polisi)
  3515. {
  3516. SetPlayerScore(i, GetPlayerScore(i)+amount);
  3517. }
  3518. }
  3519. new string[100];
  3520. format(string,sizeof(string),"Administrator %s has given %d score(s) to team %s",PlayerName2(playerid),amount, team);
  3521. SendClientMessageToAll(blue, string);
  3522. }
  3523. //---------------------------------
  3524. //--------Pakistan----------------
  3525. if(strfind(params,"TERORIS",true) != -1) //Returns 4 (Thanks to wiki for helping in strfind).
  3526. {
  3527. for(new i = 0; i < MAX_PLAYERS; i++)
  3528. {
  3529. if(gTeam[i] == Teroris)
  3530. {
  3531. SetPlayerScore(i, GetPlayerScore(i)+amount);
  3532. }
  3533. }
  3534. new string[100];
  3535. format(string,sizeof(string),"Administrator %s has given %d score(s) to team %s",PlayerName2(playerid),amount,team);
  3536. SendClientMessageToAll(blue, string);
  3537. }
  3538. }
  3539. else return SendClientMessage(playerid, 0xFF000FFF,"*You are not high enough level to use this command!");
  3540. return 1;
  3541. }
  3542. CMD:givecashteam(playerid, params[])
  3543. {
  3544. if(PlayerInfo[playerid][Level] >= 4)
  3545. {
  3546. new team[100], amount;
  3547. if(sscanf(params,"s[100]d",team, amount)) return SendClientMessage(playerid, RED,"USAGE: /givecashteam [POLISI/TERORIS] [amount]");
  3548. //---------JAPAN------------------------
  3549. if(strfind(params,"POLISI",true) != -1) //Returns 4 (Thanks to wiki for helping in strfind).
  3550. {
  3551. for(new i = 0; i < MAX_PLAYERS; i++)
  3552. {
  3553. if(gTeam[i] == Polisi)
  3554. {
  3555. GivePlayerMoney(i, amount);
  3556. }
  3557. }
  3558. new string[100];
  3559. format(string,sizeof(string),"Administrator %s has given %d cash to team %s",PlayerName2(playerid),amount,team);
  3560. SendClientMessageToAll(blue, string);
  3561. }
  3562. //---------------------------------
  3563. //--------Pakistan----------------
  3564. if(strfind(params,"TERORIS",true) != -1) //Returns 4 (Thanks to wiki for helping in strfind).
  3565. {
  3566. for(new i = 0; i < MAX_PLAYERS; i++)
  3567. {
  3568. if(gTeam[i] == Teroris)
  3569. {
  3570. GivePlayerMoney(i, amount);
  3571. }
  3572. }
  3573. new string[100];
  3574. format(string,sizeof(string),"Administrator %s has given %d cash to team %s",PlayerName2(playerid),amount,team);
  3575. SendClientMessageToAll(blue, string);
  3576. }
  3577. }
  3578. else return SendClientMessage(playerid, 0xFF000FFF,"*You are not high enough level to use this command!");
  3579. return 1;
  3580. }
  3581. CMD:ranks(playerid, params[])
  3582. {
  3583. ShowPlayerDialog(playerid, 12516, DIALOG_STYLE_MSGBOX,"Ranks","Rank 1 Corporal (0 Scores)\nRank 2 Lieutenant (100 Scores)\nRank 3 Major (300 Scoores)\nRank 4 Captain (500 Scores)\nRank 5 Commander (1000 Scores)\nRank 6 General (1500 Scores)\nRank 7 Brigadier (2000 Scores)\nRank 8 Field Marshall (2500 Scores)\nRank 9 Master of Wars (5000 Scores)\nRank 10 General of Army (10000 Scores)","Okay","");
  3584. return 1;
  3585. }
  3586. CMD:car(playerid,params[]) {
  3587. if(PlayerInfo[playerid][Level] >= 3) {
  3588. new tmp[256], tmp2[256], tmp3[256], Index; tmp = strtok(params,Index), tmp2 = strtok(params,Index); tmp3 = strtok(params,Index);
  3589. if(isnull(tmp)) return SendClientMessage(playerid, red, "USAGE: /car [Modelid/Name] [colour1] [colour2]");
  3590. new car, colour1, colour2, string[128];
  3591. if(!IsNumeric(tmp)) car = GetVehicleModelIDFromName(tmp); else car = strval(tmp);
  3592. if(car < 400 || car > 611) return SendClientMessage(playerid, red, "ERROR: Invalid Vehicle Model");
  3593. if(isnull(tmp2)) colour1 = random(126); else colour1 = strval(tmp2);
  3594. if(!strlen(tmp3)) colour2 = random(126); else colour2 = strval(tmp3);
  3595. if(PlayerInfo[playerid][pCar] != -1 && !IsPlayerAdmin(playerid) ) CarDeleter(PlayerInfo[playerid][pCar]);
  3596. new LVehicleID,Float:X,Float:Y,Float:Z, Float:Angle,int1; GetPlayerPos(playerid, X,Y,Z); GetPlayerFacingAngle(playerid,Angle); int1 = GetPlayerInterior(playerid);
  3597. LVehicleID = CreateVehicle(car, X+3,Y,Z, Angle, colour1, colour2, -1); LinkVehicleToInterior(LVehicleID,int1); PutPlayerInVehicle(playerid, LVehicleID, 0);
  3598. PlayerInfo[playerid][pCar] = LVehicleID;
  3599. CMDMessageToAdmins(playerid,"CAR");
  3600. format(string, sizeof(string), "%s spawned a \"%s\" (Model:%d) colour (%d, %d), at %0.2f, %0.2f, %0.2f", pName(playerid), VehicleNames[car-400], car, colour1, colour2, X, Y, Z);
  3601. SaveToFile("CarSpawns",string);
  3602. format(string, sizeof(string), "You have spawned a \"%s\" (Model:%d) colour (%d, %d)", VehicleNames[car-400], car, colour1, colour2);
  3603. return SendClientMessage(playerid,lightblue, string);
  3604. } else return SendClientMessage(playerid, 0xFF000FFF,"*You are not high enough level to use this command!");
  3605. }
  3606. stock IsNumeric(string[])
  3607. {
  3608. for (new i = 0, j = strlen(string); i < j; i++)
  3609. {
  3610. if (string[i] > '9' || string[i] < '0') return 0;
  3611. }
  3612. return 1;
  3613. }
  3614.  
  3615. stock IsNumeric2(string[])
  3616. {
  3617. for (new i = 0, j = strlen(string); i < j; i++)
  3618. {
  3619. if (string[i] > '3' || string[i] < '0') return 0;
  3620. }
  3621. return 1;
  3622. }
  3623. GetVehicleModelIDFromName(vname[])
  3624. {
  3625. for(new i = 0; i < 211; i++)
  3626. {
  3627. if ( strfind(VehicleNames[i], vname, true) != -1 )
  3628. return i + 400;
  3629. }
  3630. return -1;
  3631. }
  3632. /*public OnPlayerUpdate( playerid )
  3633. {
  3634. new string[ 128 ];
  3635. new score;
  3636. score = GetPlayerScore(playerid);
  3637. format( string, sizeof string, "~b~~h~Score : ~r~~h~%d", score );
  3638. TextDrawSetString(Textdraw7, string);
  3639. new cash;
  3640. cash = GetPlayerMoney( playerid );
  3641. format( string, sizeof string, "~y~~h~Money : ~r~~h~%d", cash );
  3642. TextDrawSetString(Textdraw8, string );
  3643. return 1;
  3644. }*/
  3645. public Uangnya()
  3646. {
  3647. for(new i=0; i<MAX_PLAYERS; i++)
  3648. {
  3649. if(IsPlayerConnected(i))
  3650. {
  3651. new tds[128];
  3652. format(tds, sizeof(tds), "~y~~h~Money : ~g~~h~$%d",GetPlayerMoney(i));
  3653. TextDrawSetString(Textdraw8[i], tds);
  3654. }
  3655. }
  3656. return 1;
  3657. }
  3658. public Scorenya()
  3659. {
  3660. for(new i=0; i<MAX_PLAYERS; i++)
  3661. {
  3662. if(IsPlayerConnected(i))
  3663. {
  3664. new tds[128];
  3665. format(tds, sizeof(tds), "~b~~h~Score : ~r~~h~%d",GetPlayerScore(i));
  3666. TextDrawSetString(Textdraw7[i], tds);
  3667. }
  3668. }
  3669. return 1;
  3670. }
  3671. stock PlayerName2(playerid) {
  3672. new name[MAX_PLAYER_NAME];
  3673. GetPlayerName(playerid, name, sizeof(name));
  3674. return name;
  3675. }
  3676. stock PlayerName(playerid)
  3677. {
  3678. new pname[MAX_PLAYER_NAME];
  3679. GetPlayerName(playerid,pname,MAX_PLAYER_NAME);
  3680. return pname;
  3681. }
  3682. stock GetTeamName(playerid)
  3683. {
  3684. new str[66];
  3685. if(gTeam[playerid] == Polisi) str = ("Polisi");
  3686. else if(gTeam[playerid] == Teroris) str = ("Teroris");
  3687. return str;
  3688. }
  3689. stock GetRankName(playerid)
  3690. {
  3691. new str3[64];
  3692. if (GetPlayerScore(playerid) >= 0 && GetPlayerScore(playerid) <= 99) str3 = ("Private");
  3693. if (GetPlayerScore(playerid) >= 100 && GetPlayerScore(playerid) <= 299) str3 = ("Lance Corporal");
  3694. if (GetPlayerScore(playerid) >= 300 && GetPlayerScore(playerid) <= 499) str3 = ("Corporal");
  3695. if (GetPlayerScore(playerid) >= 500 && GetPlayerScore(playerid) <= 999) str3 = ("Sergeant");
  3696. if (GetPlayerScore(playerid) >= 1000 && GetPlayerScore(playerid) <= 1499) str3 = ("Captain");
  3697. if (GetPlayerScore(playerid) >= 1500 && GetPlayerScore(playerid) <= 1999) str3 = ("Major");
  3698. if (GetPlayerScore(playerid) >= 2000 && GetPlayerScore(playerid) <= 2499) str3 = ("Colonel");
  3699. if (GetPlayerScore(playerid) >= 2500 && GetPlayerScore(playerid) <= 4999) str3 = ("Brigadier");
  3700. if (GetPlayerScore(playerid) >= 5000 && GetPlayerScore(playerid) <= 9999) str3 = ("Major General");
  3701. if (GetPlayerScore(playerid) >= 10000) str3 = ("General of Army");
  3702. return str3;
  3703. }
  3704. forward Jail1(player1);
  3705. public Jail1(player1)
  3706. {
  3707. TogglePlayerControllable(player1,false);
  3708. new Float:x, Float:y, Float:z; GetPlayerPos(player1,x,y,z);
  3709. SetPlayerCameraPos(player1,x+10,y,z+10);SetPlayerCameraLookAt(player1,x,y,z);
  3710. Jail2(player1);
  3711. }
  3712.  
  3713. forward Jail2(player1);
  3714. public Jail2(player1)
  3715. {
  3716. new Float:x, Float:y, Float:z; GetPlayerPos(player1,x,y,z);
  3717. SetPlayerCameraPos(player1,x+7,y,z+5); SetPlayerCameraLookAt(player1,x,y,z);
  3718. if(GetPlayerState(player1) == PLAYER_STATE_ONFOOT) SetPlayerSpecialAction(player1,SPECIAL_ACTION_HANDSUP);
  3719. GameTextForPlayer(player1,"~r~Busted By Admins",3000,3);
  3720. Jail3(player1);
  3721. }
  3722.  
  3723. forward Jail3(player1);
  3724. public Jail3(player1)
  3725. {
  3726. new Float:x, Float:y, Float:z; GetPlayerPos(player1,x,y,z);
  3727. SetPlayerCameraPos(player1,x+3,y,z); SetPlayerCameraLookAt(player1,x,y,z);
  3728. }
  3729.  
  3730. forward JailPlayer(player1);
  3731. public JailPlayer(player1)
  3732. {
  3733. TogglePlayerControllable(player1,true);
  3734. SetPlayerPos(player1,197.6661,173.8179,1003.0234);
  3735. SetPlayerInterior(player1,3);
  3736. SetCameraBehindPlayer(player1);
  3737. JailTimer[player1] = SetTimerEx("JailRelease",PlayerInfo[player1][JailTime],0,"d",player1);
  3738. PlayerInfo[player1][Jailed] = 1;
  3739. }
  3740.  
  3741. forward JailRelease(player1);
  3742. public JailRelease(player1)
  3743. {
  3744. KillTimer( JailTimer[player1] );
  3745. PlayerInfo[player1][JailTime] = 0; PlayerInfo[player1][Jailed] = 0;
  3746. SetPlayerInterior(player1,0); SetPlayerPos(player1, 0.0, 0.0, 0.0); SpawnPlayer(player1);
  3747. PlayerPlaySound(player1,1057,0.0,0.0,0.0);
  3748.  
  3749. GameTextForPlayer(player1,"~g~Released ~n~From Jail",3000,3);
  3750. }
  3751. stock SendTeamMessage(teamid, color, string[])
  3752. {
  3753. for(new x=0; x < MAX_PLAYERS; x++)
  3754. {
  3755. if(IsPlayerConnected(x))
  3756. {
  3757. if(gTeam[x] == teamid)
  3758. {
  3759. SendClientMessage(x, color, string);
  3760. }
  3761. }
  3762. }
  3763. return 1;
  3764. }
  3765. stock GiveTeamScore(teamid, amount)
  3766. {
  3767. for(new x=0; x < MAX_PLAYERS; x++)
  3768. {
  3769. if(IsPlayerConnected(x))
  3770. {
  3771. if(gTeam[x] == teamid)
  3772. {
  3773. SetPlayerScore(x, GetPlayerScore(x)+amount);
  3774. }
  3775. }
  3776. }
  3777. return 1;
  3778. }
  3779. stock pName(playerid)
  3780. {
  3781. new name[MAX_PLAYER_NAME];
  3782. GetPlayerName(playerid, name, sizeof(name));
  3783. return name;
  3784. }
  3785. forward MessageToAdmins(color,const string[]);
  3786. public MessageToAdmins(color,const string[])
  3787. {
  3788. for(new i = 0; i < MAX_PLAYERS; i++)
  3789. {
  3790. if(IsPlayerConnected(i) == 1) if (PlayerInfo[i][Level] >= 1) SendClientMessage(i, color, string);
  3791. }
  3792. return 1;
  3793. }
  3794. forward MessageTo4(color,const string[]);
  3795. public MessageTo4(color,const string[])
  3796. {
  3797. for(new i = 0; i < MAX_PLAYERS; i++)
  3798. {
  3799. if(IsPlayerConnected(i) == 1) if (PlayerInfo[i][Level] >= 4) SendClientMessage(i, color, string);
  3800. }
  3801. return 1;
  3802. }
  3803. forward MessageToTwice(color,const string[]);
  3804. public MessageToTwice(color,const string[])
  3805. {
  3806. for(new i = 0; i < MAX_PLAYERS; i++)
  3807. {
  3808. if(IsPlayerConnected(i) == 1) if (PlayerInfo[i][Level] >= 1 || PlayerInfo[i][Helper] == 1) SendClientMessage(i, color, string);
  3809. }
  3810. return 1;
  3811. }
  3812.  
  3813. forward MessageTo5(color,const string[]);
  3814. public MessageTo5(color,const string[])
  3815. {
  3816. for(new i = 0; i < MAX_PLAYERS; i++)
  3817. {
  3818. if(IsPlayerConnected(i) == 1) if (PlayerInfo[i][Level] >= 5) SendClientMessage(i, color, string);
  3819. }
  3820. return 1;
  3821. }
  3822. forward MessageTo6(color,const string[]);
  3823. public MessageTo6(color,const string[])
  3824. {
  3825. for(new i = 0; i < MAX_PLAYERS; i++)
  3826. {
  3827. if(IsPlayerConnected(i) == 1) if (PlayerInfo[i][Level] >= 6) SendClientMessage(i, color, string);
  3828. }
  3829. return 1;
  3830. }
  3831.  
  3832. stock CMDMessageToAdmins(playerid,command[])
  3833. {
  3834. if(ServerInfo[AdminCmdMsg] == 0) return 1;
  3835. new string[128]; GetPlayerName(playerid,string,sizeof(string));
  3836. format(string,sizeof(string),"[INFO]Administrator %s has used %s",string,command);
  3837. return MessageToTwice(blue,string);
  3838. }
  3839. //==============================================================================
  3840. SavePlayer(playerid)
  3841. {
  3842. dUserSetINT(PlayerName2(playerid)).("money",GetPlayerMoney(playerid));
  3843. dUserSetINT(PlayerName2(playerid)).("kills",PlayerInfo[playerid][Kills]);
  3844. dUserSetINT(PlayerName2(playerid)).("deaths",PlayerInfo[playerid][Deaths]);
  3845. dUserSetINT(PlayerName2(playerid)).("Score",GetPlayerScore(playerid));
  3846. dUserSetINT(PlayerName2(playerid)).("Help Moderator",PlayerInfo[playerid][Helper]);
  3847. dUserSetINT(PlayerName2(playerid)).("Donor",PlayerInfo[playerid][dRank]);
  3848.  
  3849. new h, m, s;
  3850. TotalGameTime(playerid, h, m, s);
  3851.  
  3852. dUserSetINT(PlayerName2(playerid)).("hours", h);
  3853. dUserSetINT(PlayerName2(playerid)).("minutes", m);
  3854. dUserSetINT(PlayerName2(playerid)).("seconds", s);
  3855.  
  3856. new Float:x,Float:y,Float:z, interior;
  3857. GetPlayerPos(playerid,x,y,z); interior = GetPlayerInterior(playerid);
  3858. dUserSetINT(PlayerName2(playerid)).("x1",floatround(x));
  3859. dUserSetINT(PlayerName2(playerid)).("y1",floatround(y));
  3860. dUserSetINT(PlayerName2(playerid)).("z1",floatround(z));
  3861. dUserSetINT(PlayerName2(playerid)).("interior1",interior);
  3862.  
  3863. new weap1, ammo1, weap2, ammo2, weap3, ammo3, weap4, ammo4, weap5, ammo5, weap6, ammo6;
  3864. GetPlayerWeaponData(playerid,2,weap1,ammo1);// hand gun
  3865. GetPlayerWeaponData(playerid,3,weap2,ammo2);//shotgun
  3866. GetPlayerWeaponData(playerid,4,weap3,ammo3);// SMG
  3867. GetPlayerWeaponData(playerid,5,weap4,ammo4);// AK47 / M4
  3868. GetPlayerWeaponData(playerid,6,weap5,ammo5);// rifle
  3869. GetPlayerWeaponData(playerid,7,weap6,ammo6);// rocket launcher
  3870. dUserSetINT(PlayerName2(playerid)).("weap1",weap1); dUserSetINT(PlayerName2(playerid)).("weap1ammo",ammo1);
  3871. dUserSetINT(PlayerName2(playerid)).("weap2",weap2); dUserSetINT(PlayerName2(playerid)).("weap2ammo",ammo2);
  3872. dUserSetINT(PlayerName2(playerid)).("weap3",weap3); dUserSetINT(PlayerName2(playerid)).("weap3ammo",ammo3);
  3873. dUserSetINT(PlayerName2(playerid)).("weap4",weap4); dUserSetINT(PlayerName2(playerid)).("weap4ammo",ammo4);
  3874. dUserSetINT(PlayerName2(playerid)).("weap5",weap5); dUserSetINT(PlayerName2(playerid)).("weap5ammo",ammo5);
  3875. dUserSetINT(PlayerName2(playerid)).("weap6",weap6); dUserSetINT(PlayerName2(playerid)).("weap6ammo",ammo6);
  3876.  
  3877. new Float:health; GetPlayerHealth(playerid, Float:health);
  3878. new Float:armour; GetPlayerArmour(playerid, Float:armour);
  3879. new year,month,day; getdate(year, month, day);
  3880. new strdate[20]; format(strdate, sizeof(strdate), "%d.%d.%d",day,month,year);
  3881. new file[256]; format(file,sizeof(file),"/ladmin/users/%s.sav",udb_encode(PlayerName2(playerid)) );
  3882.  
  3883. dUserSetINT(PlayerName2(playerid)).("health",floatround(health));
  3884. dUserSetINT(PlayerName2(playerid)).("armour",floatround(armour));
  3885. dini_Set(file,"LastOn",strdate);
  3886. dUserSetINT(PlayerName2(playerid)).("loggedin",0);
  3887. dUserSetINT(PlayerName2(playerid)).("TimesOnServer",(dUserINT(PlayerName2(playerid)).("TimesOnServer"))+1);
  3888. }
  3889.  
  3890. //==============================================================================
  3891. #if defined USE_MENUS
  3892. DestroyAllMenus()
  3893. {
  3894. DestroyMenu(LVehicles); DestroyMenu(twodoor); DestroyMenu(fourdoor); DestroyMenu(fastcar); DestroyMenu(Othercars);
  3895. DestroyMenu(bikes); DestroyMenu(boats); DestroyMenu(planes); DestroyMenu(helicopters ); DestroyMenu(LTime);
  3896. DestroyMenu(XWeapons); DestroyMenu(XWeaponsBig); DestroyMenu(XWeaponsSmall); DestroyMenu(XWeaponsMore);
  3897. DestroyMenu(LWeather); DestroyMenu(LTuneMenu); DestroyMenu(PaintMenu); DestroyMenu(LCars); DestroyMenu(LCars2);
  3898. DestroyMenu(LTele); DestroyMenu(LasVenturasMenu); DestroyMenu(LosSantosMenu); DestroyMenu(SanFierroMenu);
  3899. DestroyMenu(LMainMenu); DestroyMenu(DesertMenu); DestroyMenu(FlintMenu); DestroyMenu(MountChiliadMenu); DestroyMenu(InteriorsMenu);
  3900. DestroyMenu(AdminEnable); DestroyMenu(AdminDisable);
  3901. }
  3902. #endif
  3903. stock TimeStamp()
  3904. {
  3905. new time = GetTickCount() / 1000;
  3906. return time;
  3907. }
  3908. //#if defined ENABLE_SPEC
  3909.  
  3910. stock StartSpectate(playerid, specplayerid)
  3911. {
  3912. for(new x=0; x<MAX_PLAYERS; x++) {
  3913. if(GetPlayerState(x) == PLAYER_STATE_SPECTATING && PlayerInfo[x][SpecID] == playerid) {
  3914. AdvanceSpectate(x);
  3915. }
  3916. }
  3917. SetPlayerInterior(playerid,GetPlayerInterior(specplayerid));
  3918. TogglePlayerSpectating(playerid, 1);
  3919.  
  3920. if(IsPlayerInAnyVehicle(specplayerid)) {
  3921. PlayerSpectateVehicle(playerid, GetPlayerVehicleID(specplayerid));
  3922. PlayerInfo[playerid][SpecID] = specplayerid;
  3923. PlayerInfo[playerid][SpecType] = ADMIN_SPEC_TYPE_VEHICLE;
  3924. }
  3925. else {
  3926. PlayerSpectatePlayer(playerid, specplayerid);
  3927. PlayerInfo[playerid][SpecID] = specplayerid;
  3928. PlayerInfo[playerid][SpecType] = ADMIN_SPEC_TYPE_PLAYER;
  3929. }
  3930. new string[100], Float:hp, Float:ar;
  3931. GetPlayerName(specplayerid,string,sizeof(string));
  3932. GetPlayerHealth(specplayerid, hp); GetPlayerArmour(specplayerid, ar);
  3933. format(string,sizeof(string),"~n~~n~~n~~n~~n~~n~~n~~n~~g~%s - id:%d~n~< sprint - jump >~n~~r~hp:%0.1f ~g~ar:%0.1f ~b~$%d", string,specplayerid,hp,ar,GetPlayerMoney(specplayerid) );
  3934. GameTextForPlayer(playerid,string,25000,3);
  3935. return 1;
  3936. }
  3937. stock ShowMessage(playerid, color, msgid)
  3938. {
  3939. switch(msgid)
  3940. {
  3941. case 1: SendClientMessage(playerid,red,"Your level is not high to use this command");
  3942. case 2: SendClientMessage(playerid,red,"Player is not connected");
  3943. case 3: SendClientMessage(playerid,red,"Player not connected or it's Yourself");
  3944. case 4: SendClientMessage(playerid,red,"You must be logged in to use this command");
  3945. case 5: SendClientMessage(playerid,red,"Player is not in a vehicle");
  3946. case 6: SendClientMessage(playerid,red,"You can not perform command on this admin");
  3947. case 7: SendClientMessage(playerid,red,"You have a vehicle already!");
  3948. }
  3949. return 1;
  3950. }
  3951. stock StopSpectate(playerid)
  3952. {
  3953. TogglePlayerSpectating(playerid, 0);
  3954. PlayerInfo[playerid][SpecID] = INVALID_PLAYER_ID;
  3955. PlayerInfo[playerid][SpecType] = ADMIN_SPEC_TYPE_NONE;
  3956. Spectating[playerid] = 0;
  3957. GameTextForPlayer(playerid,"~n~~n~~n~~r~Spectate mode ended",1000,3);
  3958. return 1;
  3959. }
  3960.  
  3961. stock AdvanceSpectate(playerid)
  3962. {
  3963. if(ConnectedPlayers() == 2) { StopSpectate(playerid); return 1; }
  3964. if(GetPlayerState(playerid) == PLAYER_STATE_SPECTATING && PlayerInfo[playerid][SpecID] != INVALID_PLAYER_ID)
  3965. {
  3966. for(new x=PlayerInfo[playerid][SpecID]+1; x<=MAX_PLAYERS; x++)
  3967. {
  3968. if(x == MAX_PLAYERS) x = 0;
  3969. if(IsPlayerConnected(x) && x != playerid)
  3970. {
  3971. if(GetPlayerState(x) == PLAYER_STATE_SPECTATING && PlayerInfo[x][SpecID] != INVALID_PLAYER_ID || (GetPlayerState(x) != 1 && GetPlayerState(x) != 2 && GetPlayerState(x) != 3))
  3972. {
  3973. continue;
  3974. }
  3975. else
  3976. {
  3977. StartSpectate(playerid, x);
  3978. break;
  3979. }
  3980. }
  3981. }
  3982. }
  3983. return 1;
  3984. }
  3985. stock SendCMDMessge(playerid,command[])
  3986. {
  3987. if(ServerInfo[AdminCmdMsg] == 0) return 1;
  3988. new string[128]; GetPlayerName(playerid,string,sizeof(string));
  3989. format(string,sizeof(string),"%s Has Used - %s",string,command);
  3990. return MessageSend(0x0A00FFFF,string);
  3991. }
  3992. GiveAmmo(playerid)
  3993. {
  3994. new slot, ammo;
  3995. new weaponid = GetPlayerWeapon(playerid);
  3996. for (slot = 0; slot < 14; slot++)
  3997. {
  3998. GetPlayerWeaponData(playerid, slot, weaponid, ammo);
  3999. if(IsValidWeapon(weaponid)) //
  4000. {
  4001. if(weaponid == 16 || weaponid == 35 || weaponid == 18 || weaponid == 22 || weaponid == 2 ||weaponid == 32 || weaponid == 46)
  4002. {
  4003. GivePlayerWeapon(playerid, weaponid, 1);
  4004. }
  4005. else GivePlayerWeapon(playerid, weaponid, 100);
  4006. }
  4007. }
  4008. return 1;
  4009. }
  4010.  
  4011. stock ReverseSpectate(playerid)
  4012. {
  4013. if(ConnectedPlayers() == 2) { StopSpectate(playerid); return 1; }
  4014. if(GetPlayerState(playerid) == PLAYER_STATE_SPECTATING && PlayerInfo[playerid][SpecID] != INVALID_PLAYER_ID)
  4015. {
  4016. for(new x=PlayerInfo[playerid][SpecID]-1; x>=0; x--)
  4017. {
  4018. if(x == 0) x = MAX_PLAYERS;
  4019. if(IsPlayerConnected(x) && x != playerid)
  4020. {
  4021. if(GetPlayerState(x) == PLAYER_STATE_SPECTATING && PlayerInfo[x][SpecID] != INVALID_PLAYER_ID || (GetPlayerState(x) != 1 && GetPlayerState(x) != 2 && GetPlayerState(x) != 3))
  4022. {
  4023. continue;
  4024. }
  4025. else
  4026. {
  4027. StartSpectate(playerid, x);
  4028. break;
  4029. }
  4030. }
  4031. }
  4032. }
  4033. return 1;
  4034. }
  4035.  
  4036. //-------------------------------------------
  4037. //#endif
  4038. stock StopAnimLoopPlayer(playerid)
  4039. {
  4040. IsPlayerUsingAnims[playerid] = 0;
  4041. ApplyAnimation(playerid, "CARRY", "crry_prtial", 4.0, 0, 0, 0, 0, 0);
  4042. return true;
  4043. }
  4044. TotalGameTime(playerid, &h=0, &m=0, &s=0)
  4045. {
  4046. PlayerInfo[playerid][TotalTime] = ( (gettime() - PlayerInfo[playerid][ConnectTime]) + (PlayerInfo[playerid][hours]*60*60) + (PlayerInfo[playerid][mins]*60) + (PlayerInfo[playerid][secs]) );
  4047.  
  4048. h = floatround(PlayerInfo[playerid][TotalTime] / 3600, floatround_floor);
  4049. m = floatround(PlayerInfo[playerid][TotalTime] / 60, floatround_floor) % 60;
  4050. s = floatround(PlayerInfo[playerid][TotalTime] % 60, floatround_floor);
  4051.  
  4052. return PlayerInfo[playerid][TotalTime];
  4053. }
  4054. forward ConnectedPlayers();
  4055. public ConnectedPlayers()
  4056. {
  4057. new Connected;
  4058. for(new i = 0; i < MAX_PLAYERS; i++) if(IsPlayerConnected(i)) Connected++;
  4059. return Connected;
  4060. }
  4061. stock LoginPlayer(playerid)
  4062. {
  4063. dUserSetINT(PlayerName2(playerid)).("loggedin",1);
  4064. PlayerInfo[playerid][Deaths] = (dUserINT(PlayerName2(playerid)).("deaths"));
  4065. PlayerInfo[playerid][Kills] = (dUserINT(PlayerName2(playerid)).("kills"));
  4066. PlayerInfo[playerid][Level] = (dUserINT(PlayerName2(playerid)).("level"));
  4067. PlayerInfo[playerid][hours] = dUserINT(PlayerName2(playerid)).("hours");
  4068. PlayerInfo[playerid][mins] = dUserINT(PlayerName2(playerid)).("minutes");
  4069. PlayerInfo[playerid][secs] = dUserINT(PlayerName2(playerid)).("seconds");
  4070. SetPlayerScore(playerid,dUserINT(PlayerName2(playerid)).("Score"));
  4071. SetPlayerMoney(playerid,dUserINT(PlayerName2(playerid)).("money"));
  4072. PlayerInfo[playerid][Helper] = (dUserINT(PlayerName2(playerid)).("Help moderator"));
  4073. PlayerInfo[playerid][dRank] = (dUserINT(PlayerName2(playerid)).("Donor"));
  4074. PlayerInfo[playerid][Registered] = 1;
  4075. PlayerInfo[playerid][LoggedIn] = 1;
  4076. return 1;
  4077. }
  4078. forward CarDeleter(vehicleid);
  4079. public CarDeleter(vehicleid)
  4080. {
  4081. for(new i=0;i<MAX_PLAYERS;i++) {
  4082. new Float:X,Float:Y,Float:Z;
  4083. if(IsPlayerInVehicle(i, vehicleid)) {
  4084. RemovePlayerFromVehicle(i);
  4085. GetPlayerPos(i,X,Y,Z);
  4086. SetPlayerPos(i,X,Y+3,Z);
  4087. }
  4088. SetVehicleParamsForPlayer(vehicleid,i,0,1);
  4089. }
  4090. SetTimerEx("VehRes",1500,0,"i",vehicleid);
  4091. }
  4092. forward VehRes(vehicleid);
  4093. public VehRes(vehicleid)
  4094. {
  4095. DestroyVehicle(vehicleid);
  4096. }
  4097. stock UpdateConfig()
  4098. {
  4099. new file[256], File:file2, string[100]; format(file,sizeof(file),"ladmin/config/Config.ini");
  4100. ForbiddenWordCount = 0;
  4101. BadNameCount = 0;
  4102. BadPartNameCount = 0;
  4103.  
  4104. if(!dini_Exists("ladmin/config/aka.txt")) dini_Create("ladmin/config/aka.txt");
  4105.  
  4106. if(!dini_Exists(file))
  4107. {
  4108. dini_Create(file);
  4109. print("\n >Configuration File Successfully Created");
  4110. }
  4111.  
  4112. if(!dini_Isset(file,"MaxPing")) dini_IntSet(file,"MaxPing",1200);
  4113. if(!dini_Isset(file,"ReadPms")) dini_IntSet(file,"ReadPMs",1);
  4114. if(!dini_Isset(file,"ReadCmds")) dini_IntSet(file,"ReadCmds",1);
  4115. if(!dini_Isset(file,"MaxAdminLevel")) dini_IntSet(file,"MaxAdminLevel",5);
  4116. if(!dini_Isset(file,"AdminOnlySkins")) dini_IntSet(file,"AdminOnlySkins",0);
  4117. if(!dini_Isset(file,"AdminSkin")) dini_IntSet(file,"AdminSkin",217);
  4118. if(!dini_Isset(file,"AdminSkin2")) dini_IntSet(file,"AdminSkin2",214);
  4119. if(!dini_Isset(file,"AntiSpam")) dini_IntSet(file,"AntiSpam",1);
  4120. if(!dini_Isset(file,"AntiSwear")) dini_IntSet(file,"AntiSwear",1);
  4121. if(!dini_Isset(file,"NameKick")) dini_IntSet(file,"NameKick",1);
  4122. if(!dini_Isset(file,"PartNameKick")) dini_IntSet(file,"PartNameKick",1);
  4123. if(!dini_Isset(file,"NoCaps")) dini_IntSet(file,"NoCaps",0);
  4124. if(!dini_Isset(file,"Locked")) dini_IntSet(file,"Locked",0);
  4125. if(!dini_Isset(file,"SaveWeap")) dini_IntSet(file,"SaveWeap",1);
  4126. if(!dini_Isset(file,"SaveMoney")) dini_IntSet(file,"SaveMoney",1);
  4127. if(!dini_Isset(file,"ConnectMessages")) dini_IntSet(file,"ConnectMessages",1);
  4128. if(!dini_Isset(file,"AdminCmdMessages")) dini_IntSet(file,"AdminCmdMessages",1);
  4129. if(!dini_Isset(file,"AutoLogin")) dini_IntSet(file,"AutoLogin",1);
  4130. if(!dini_Isset(file,"MaxMuteWarnings")) dini_IntSet(file,"MaxMuteWarnings",4);
  4131. if(!dini_Isset(file,"MustLogin")) dini_IntSet(file,"MustLogin",0);
  4132. if(!dini_Isset(file,"MustRegister")) dini_IntSet(file,"MustRegister",0);
  4133.  
  4134. if(dini_Exists(file))
  4135. {
  4136. ServerInfo[MaxPing] = dini_Int(file,"MaxPing");
  4137. ServerInfo[ReadPMs] = dini_Int(file,"ReadPMs");
  4138. ServerInfo[ReadCmds] = dini_Int(file,"ReadCmds");
  4139. ServerInfo[MaxAdminLevel] = dini_Int(file,"MaxAdminLevel");
  4140. ServerInfo[AdminOnlySkins] = dini_Int(file,"AdminOnlySkins");
  4141. ServerInfo[AdminSkin] = dini_Int(file,"AdminSkin");
  4142. ServerInfo[AdminSkin2] = dini_Int(file,"AdminSkin2");
  4143. ServerInfo[AntiSpam] = dini_Int(file,"AntiSpam");
  4144. ServerInfo[AntiSwear] = dini_Int(file,"AntiSwear");
  4145. ServerInfo[NameKick] = dini_Int(file,"NameKick");
  4146. ServerInfo[PartNameKick] = dini_Int(file,"PartNameKick");
  4147. ServerInfo[NoCaps] = dini_Int(file,"NoCaps");
  4148. ServerInfo[Locked] = dini_Int(file,"Locked");
  4149. ServerInfo[GiveWeap] = dini_Int(file,"SaveWeap");
  4150. ServerInfo[GiveMoney] = dini_Int(file,"SaveMoney");
  4151. ServerInfo[ConnectMessages] = dini_Int(file,"ConnectMessages");
  4152. ServerInfo[AdminCmdMsg] = dini_Int(file,"AdminCmdMessages");
  4153. ServerInfo[AutoLogin] = dini_Int(file,"AutoLogin");
  4154. ServerInfo[MaxMuteWarnings] = dini_Int(file,"MaxMuteWarnings");
  4155. ServerInfo[MustLogin] = dini_Int(file,"MustLogin");
  4156. ServerInfo[MustRegister] = dini_Int(file,"MustRegister");
  4157. print("\n -Configuration Settings Loaded");
  4158. }
  4159.  
  4160. //forbidden names
  4161. if((file2 = fopen("ladmin/config/ForbiddenNames.cfg",io_read)))
  4162. {
  4163. while(fread(file2,string))
  4164. {
  4165. for(new i = 0, j = strlen(string); i < j; i++) if(string[i] == '\n' || string[i] == '\r') string[i] = '\0';
  4166. BadNames[BadNameCount] = string;
  4167. BadNameCount++;
  4168. }
  4169. fclose(file2); printf(" -%d Forbidden Names Loaded", BadNameCount);
  4170. }
  4171.  
  4172. //forbidden part of names
  4173. if((file2 = fopen("ladmin/config/ForbiddenPartNames.cfg",io_read)))
  4174. {
  4175. while(fread(file2,string))
  4176. {
  4177. for(new i = 0, j = strlen(string); i < j; i++) if(string[i] == '\n' || string[i] == '\r') string[i] = '\0';
  4178. BadPartNames[BadPartNameCount] = string;
  4179. BadPartNameCount++;
  4180. }
  4181. fclose(file2); printf(" -%d Forbidden Tags Loaded", BadPartNameCount);
  4182. }
  4183.  
  4184. //forbidden words
  4185. if((file2 = fopen("ladmin/config/ForbiddenWords.cfg",io_read)))
  4186. {
  4187. while(fread(file2,string))
  4188. {
  4189. for(new i = 0, j = strlen(string); i < j; i++) if(string[i] == '\n' || string[i] == '\r') string[i] = '\0';
  4190. ForbiddenWords[ForbiddenWordCount] = string;
  4191. ForbiddenWordCount++;
  4192. }
  4193. fclose(file2); printf(" -%d Forbidden Words Loaded", ForbiddenWordCount);
  4194. }
  4195. //Friend
  4196. }
  4197. forward SaveToFile(filename[],text[]);
  4198. public SaveToFile(filename[],text[])
  4199. {
  4200. #if defined SAVE_LOGS
  4201. new File:LAdminfile, filepath[256], string[256], year,month,day, hour,minute,second;
  4202. getdate(year,month,day); gettime(hour,minute,second);
  4203.  
  4204. format(filepath,sizeof(filepath),"ladmin/logs/%s.txt",filename);
  4205. LAdminfile = fopen(filepath,io_append);
  4206. format(string,sizeof(string),"[%d.%d.%d %d:%d:%d] %s\r\n %d",day,month,year,hour,minute,second,text);
  4207. fwrite(LAdminfile,string);
  4208. fclose(LAdminfile);
  4209. #endif
  4210.  
  4211. return 1;
  4212. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement