Guest User

Untitled

a guest
May 23rd, 2018
122
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 22.26 KB | None | 0 0
  1. /***********************************
  2. * Devon's Roleplay *
  3. * CREATED BY: Devon Berry*
  4. ************************************/
  5. #include <a_samp>
  6. #include <sscanf2>
  7. #include <YSI\y_commands>
  8. #include <YSI\y_iterate>
  9. #include <YSI\y_ini>
  10. //
  11. #define YSI_IS_SERVER
  12. #define PATH "/Users/%s.ini" //This is the path template
  13. #define DIALOG_REGISTER 1
  14. #define DIALOG_LOGIN 2
  15. #define DIALOG_SUCCESS_1 3
  16. #define DIALOG_SUCCESS_2 4
  17. #define DEVELOPER "Devon Berry"
  18. #define VERSION "v.0.0.1a"
  19. #undef MAX_PLAYERS
  20. #define MAX_PLAYERS 500
  21. #define white 0xFFFFFFA
  22. #define red 0xFF0000AA
  23. #define lime 0x00FF00FF
  24. #define yellow 0xFFFF00FF
  25. #define COL_WHITE "{FFFFFF}"
  26. #define COL_RED "{F81414}"
  27. #define COL_GREEN "{00FF22}"
  28. #define COL_LIGHTBLUE "{00CED1}"
  29.  
  30. enum pInfo
  31. {
  32. pPass,
  33. pCash,
  34. pAdmin,
  35. pKills,
  36. pDeaths
  37. }
  38. new PlayerInfo[MAX_PLAYERS][pInfo];
  39. new PlayerVehicles[212][] =
  40. {
  41. "Landstalker", "Bravura", "Buffalo", "Linerunner", "Perrenial", "Sentinel", "Dumper", "Firetruck", "Trashmaster", "Stretch", "Manana",
  42. "Infernus", "Voodoo", "Pony", "Mule", "Cheetah", "Ambulance", "Leviathan", "Moonbeam", "Esperanto", "Taxi", "Washington", "Bobcat",
  43. "Whoopee", "BF Injection", "Hunter", "Premier", "Enforcer", "Securicar", "Banshee", "Predator", "Bus", "Rhino", "Barracks", "Hotknife",
  44. "Trailer 1", "Previon", "Coach", "Cabbie", "Stallion", "Rumpo", "RC Bandit", "Romero", "Packer", "Monster", "Admiral", "Squalo",
  45. "Seasparrow", "Pizzaboy", "Tram", "Trailer 2", "Turismo", "Speeder", "Reefer", "Tropic", "Flatbed", "Yankee", "Caddy", "Solair",
  46. "Berkley's RC Van", "Skimmer", "PCJ-600", "Faggio", "Freeway", "RC Baron", "RC Raider", "Glendale", "Oceanic", "Sanchez", "Sparrow",
  47. "Patriot", "Quad", "Coastguard", "Dinghy", "Hermes", "Sabre", "Rustler", "ZR-350", "Walton", "Regina", "Comet", "BMX", "Burrito",
  48. "Camper", "Marquis", "Baggage", "Dozer", "Maverick", "News Chopper", "Rancher", "FBI Rancher", "Virgo", "Greenwood", "Jetmax", "Hotring",
  49. "Sandking", "Blista Compact", "Police Maverick", "Boxvillde", "Benson", "Mesa", "RC Goblin", "Hotring Racer A", "Hotring Racer B",
  50. "Bloodring Banger", "Rancher", "Super GT", "Elegant", "Journey", "Bike", "Mountain Bike", "Beagle", "Cropduster","Stunt", "Tanker",
  51. "Roadtrain", "Nebula", "Majestic", "Buccaneer", "Shamal", "Hydra", "FCR-900", "NRG-500", "HPV1000", "Cement Truck", "Tow Truck", "Fortune",
  52. "Cadrona", "FBI Truck", "Willard", "Forklift", "Tractor", "Combine", "Feltzer", "Remington", "Slamvan", "Blade", "Freight", "Streak",
  53. "Vortex", "Vincent", "Bullet", "Clover", "Sadler", "Firetruck LA", "Hustler", "Intruder", "Primo", "Cargobob", "Tampa", "Sunrise", "Merit",
  54. "Utility", "Nevada", "Yosemite", "Windsor", "Monster A", "Monster B", "Uranus", "Jester", "Sultan", "Stratum", "Elegy", "Raindance",
  55. "RC Tiger", "Flash", "Tahoma", "Savanna", "Bandito", "Freight Flat", "Streak Carriage", "Kart", "Mower", "Dune", "Sweeper", "Broadway",
  56. "Tornado", "AT-400", "DFT-30", "Huntley", "Stafford", "BF-400", "News Van", "Tug", "Trailer 3", "Emperor", "Wayfarer", "Euros", "Hotdog",
  57. "Club", "Freight Carriage", "Trailer 4", "Andromada", "Dodo", "RC Cam", "Launch", "Police Car (LSPD)", "Police Car (SFPD)",
  58. "Police Car (LVPD)", "Police Ranger", "Picador", "S.W.A.T", "Alpha", "Phoenix", "Glendale", "Sadler", "Luggage Trailer A",
  59. "Luggage Trailer B", "Stairs", "Boxville", "Tiller", "Utility Trailer"
  60. };
  61. new VehicleNames[212][] =
  62. {
  63. "400 - Landstalker", "401 - Bravura", "402 - Buffalo", "403 - Linerunner", "404 - Pereniel", "405 - Sentinel", "406 - Dumper", "407 - Firetruck", "408 - Trashmaster", "409 - Stretch",
  64. "410 - Manana", "411 - Infernus", "412 - Voodoo", "413 - Pony", "414 - Mule", "415 - Cheetah", "416 - Ambulance", "417 - Leviathan", "418 - Moonbeam", "419 - Esperanto", "420 - Taxi",
  65. "421 - Washington", "422 - Bobcat", "423 - Mr Whoopee", "424 - BF Injection", "425 - Hunter", "426 - Premier", "427 - Enforcer", "428 - Securicar", "429 - Banshee", "430 - Predator",
  66. "431 - Bus", "432 - Rhino", "433 - Barracks", "434 - Hotknife", "435 - Trailer", "436 - Previon", "437 - Coach", "438 - Cabbie", "439 - Stallion", "440 - Rumpo", "441 - RC Bandit", "442 - Romero",
  67. "443 - Packer", "444 - Monster", "445- Admiral", "446 - Squalo", "447 - Seasparrow", "448 - Pizzaboy", "449 - Tram", "450 - Trailer", "451 - Turismo", "452 - Speeder", "453 - Reefer", "454 - Tropic", "455 - Flatbed",
  68. "456 - Yankee", "457 - Caddy", "458 - Solair", "459 - Berkley's RC Van", "460 - Skimmer", "461 - PCJ-600", "462 - Faggio", "463 - Freeway", "464 - RC Baron", "465 - RC Raider",
  69. "466 - Glendale", "467 - Oceanic", "468 - Sanchez", "469 - Sparrow", "470 - Patriot", "471 - Quad", "472 - Coastguard", "473 - Dinghy", "474 - Hermes", "475 - Sabre", "476 - Rustler",
  70. "477 - ZR350", "478 - Walton", "479 - Regina", "480 - Comet", "481 - BMX", "482 - Burrito", "483 - Camper", "484 - Marquis", "485 - Baggage", "486 - Dozer", "487 - Maverick", "488 - News Chopper",
  71. "489 - Rancher", "490 - FBI Rancher", "491 - Virgo", "492 - Greenwood", "493 - Jetmax", "494 - Hotring", "495 - Sandking", "496 - Blista Compact", "497 - Police Maverick",
  72. "498 - Boxville", "499 - Benson", "500 - Mesa", "501 - RC Goblin", "502 - Hotring Racer", "503 - Hotring Racer", "504 - Bloodring Banger", "505 - Rancher", "506 - Super GT",
  73. "507 - Elegant", "508 - Journey", "509 - Bike", "510 - Mountain Bike", "511 - Beagle", "512 - Cropdust", "513 - Stunt", "514 - Tanker", "515 - RoadTrain", "516 - Nebula", "517 - Majestic",
  74. "518 - Buccaneer", "519 - Shamal", "520 - Hydra", "521 - FCR-900", "522 - NRG-500", "523 - HPV1000", "524 - Cement Truck", "525 - Tow Truck", "526 - Fortune", "527 - Cadrona", "528 - FBI Truck",
  75. "529 - Willard", "530 - Forklift", "531 - Tractor", "532 - Combine", "533 - Feltzer", "534 - Remington", "535 - Slamvan", "536 - Blade", "537 - Freight", "538 - Streak", "539 - Vortex", "540 - Vincent",
  76. "541 - Bullet", "542 - Clover", "543 - Sadler", "544 - Firetruck", "545 - Hustler", "546 - Intruder", "547 - Primo", "548 - Cargobob", "549 - Tampa", "550 - Sunrise", "551 - Merit", "552 - Utility",
  77. "553 - Nevada", "554 - Yosemite", "555 - Windsor", "556 - Monster", "557 - Monster", "558 - Uranus", "559 - Jester", "560 - Sultan", "561 - Stratum", "562 - Elegy", "563 - Raindance", "564 - RC Tiger",
  78. "565 - Flash", "566 - Tahoma", "567 - Savanna", "568 - Bandito", "569 - Freight", "570 - Trailer", "571 - Kart", "572 - Mower", "573 - Duneride", "574 - Sweeper", "575 - Broadway",
  79. "576 - Tornado", "577 - AT-400", "578 - DFT-30", "579 - Huntley", "580 - Stafford", "581 - BF-400", "582 - Newsvan", "583 - Tug", "584 - Trailer", "585 - Emperor", "586 - Wayfarer",
  80. "587 - Euros", "588 - Hotdog", "589 - Club", "590 - Trailer", "591 - Trailer", "592 - Andromada", "593 - Dodo", "594 - RC Cam", "595 - Launch", "596 - Police Car (LSPD)", "597 - Police Car (SFPD)",
  81. "598 - Police Car (LVPD)", "599 - Police Ranger", "600 - Picador", "601 - S.W.A.T. Van", "602 - Alpha", "603 - Phoenix", "604 - Glendale", "605 - Sadler", "606 - Luggage Trailer A",
  82. "607 - Luggage Trailer B", "608 - Stair Trailer", "609 - Boxville", "610 - Farm Plow", "611 - Utility Trailer"
  83. };
  84. main()
  85. {
  86. print("----------------------------------");
  87. print(" Devon's Roleplay by Devon Berry");
  88. print("----------------------------------\n");
  89. }
  90.  
  91. public OnGameModeInit( )
  92. {
  93. SetGameModeText("Devon's Roleplay");
  94. AddPlayerClass(0,1481.1249,-1766.3302,18.7958,0.9198,0,0,0,0,0,0); // LSSpawnPoint
  95. AddStaticVehicle(596,1602.2472,-1703.9663,5.5256,86.6693,0,1); // Cruisier10
  96. AddStaticVehicle(596,1595.5613,-1711.1768,5.5256,359.2222,0,1); // Cruisier9
  97. AddStaticVehicle(596,1591.5144,-1710.7615,5.5217,1.9293,0,1); // Cruisier8
  98. AddStaticVehicle(596,1587.5083,-1711.1357,5.5242,358.5583,0,1); // Cruisier7
  99. AddStaticVehicle(596,1583.2698,-1710.8278,5.5257,359.9324,0,1); // Cruisier6
  100. AddStaticVehicle(596,1578.7604,-1711.1829,5.5180,0.4591,0,1); // Cruisier5
  101. AddStaticVehicle(596,1574.6881,-1710.9425,5.5244,359.7140,0,1); // Cruisier4
  102. AddStaticVehicle(596,1570.3341,-1711.1138,5.5254,356.4611,0,1); // Cruisier3
  103. AddStaticVehicle(596,1564.8552,-1711.0649,5.5239,357.8743,0,1); // Cruisier2
  104. AddStaticVehicle(596,1558.6125,-1712.2395,5.5252,359.2585,0,1); // Cruisier1
  105. AddStaticVehicle(522,1548.1022,-1682.7958,5.5246,89.2330,1,1); // PDNRG1
  106. AddStaticVehicle(522,1543.1455,-1685.8038,5.5238,91.3076,1,1); // PDNRG2
  107. AddStaticVehicle(522,1547.9951,-1678.9081,5.5229,88.7270,1,1); // PDNRG3
  108. AddStaticVehicle(522,1543.0063,-1681.0385,5.5235,88.5667,1,1); // PDNRG4
  109. AddStaticVehicle(490,1545.2922,-1672.3058,5.5190,91.8807,0,1); // PDRancher1
  110. AddStaticVehicle(490,1546.0570,-1667.8403,5.5248,90.3241,0,1); // PDRancher2
  111. AddStaticVehicle(427,1545.3459,-1659.1704,5.5236,94.6685,0,1); // PDEnforcer1
  112. AddStaticVehicle(427,1546.1920,-1655.4073,5.5191,96.1166,0,1); // PDEnforcer2
  113. AddStaticVehicle(601,1538.8168,-1644.1783,5.5259,180.4116,0,1); // PDSwatTank1
  114. AddStaticVehicle(601,1534.7139,-1645.0441,5.5254,181.2519,0,1); // PDSwatTank2
  115.  
  116. return 1;
  117. }
  118. public OnGameModeExit()
  119. {
  120. return 1;
  121. }
  122.  
  123. public OnPlayerRequestClass(playerid, classid)
  124. {
  125. SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
  126. SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
  127. SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
  128. return 1;
  129. }
  130.  
  131. public OnPlayerConnect(playerid)
  132. {
  133. SetSpawnInfo(playerid,0,0,1481.1249,-1766.3302,18.7958,0.9198,0,0,0,0,0,0);
  134. if(fexist(UserPath(playerid)))
  135. {
  136. INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
  137. ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,""COL_WHITE"Login",""COL_WHITE"Type your password below to login.","Login","Quit");
  138. }
  139. else
  140. {
  141. ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT,""COL_WHITE"Registering...",""COL_WHITE"Type your password below to register a new account.","Register","Quit");
  142. }
  143. return 1;
  144. }
  145.  
  146. forward LoadUser_data(playerid,name[],value[]);
  147. public LoadUser_data(playerid,name[],value[])
  148. {
  149. INI_Int("Password",PlayerInfo[playerid][pPass]);
  150. INI_Int("Cash",PlayerInfo[playerid][pCash]);
  151. INI_Int("Admin",PlayerInfo[playerid][pAdmin]);
  152. INI_Int("Kills",PlayerInfo[playerid][pKills]);
  153. INI_Int("Deaths",PlayerInfo[playerid][pDeaths]);
  154. return 1;
  155. }
  156. stock UserPath(playerid)
  157. {
  158. new string[128],playername[MAX_PLAYER_NAME];
  159. GetPlayerName(playerid,playername,sizeof(playername));
  160. format(string,sizeof(string),PATH,playername);
  161. return string;
  162. }
  163. stock udb_hash(buf[]) {
  164. new length=strlen(buf);
  165. new s1 = 1;
  166. new s2 = 0;
  167. new n;
  168. for (n=0; n<length; n++)
  169. {
  170. s1 = (s1 + buf[n]) % 65521;
  171. s2 = (s2 + s1) % 65521;
  172. }
  173. return (s2 << 16) + s1;
  174. }
  175. stock SaveAccounts(playerid)
  176. {
  177. new INI:File = INI_Open(UserPath(playerid));
  178. INI_SetTag(File,"data");
  179. INI_WriteInt(File,"Cash",GetPlayerMoney(playerid));
  180. INI_WriteInt(File,"Admin",PlayerInfo[playerid][pAdmin]);
  181. INI_WriteInt(File,"Kills",PlayerInfo[playerid][pKills]);
  182. INI_WriteInt(File,"Deaths",PlayerInfo[playerid][pDeaths]);
  183. INI_Close(File);
  184. return 1;
  185. }
  186.  
  187. public OnPlayerDisconnect(playerid, reason)
  188. {
  189. SaveAccounts(playerid);
  190. return 1;
  191. }
  192.  
  193. YCMD:makeadmin(playerid, params[], help)
  194. {
  195. new pid;
  196. new alvl;
  197. new str[128];
  198. if(PlayerInfo[playerid][pAdmin] < 9 && !IsPlayerAdmin(playerid)) return
  199. SendClientMessage(playerid, red, "You're not an admin or not high enoug level admin");
  200. if (help) return
  201. SendClientMessage(playerid, lime, "Make a player an admin.");
  202. if (sscanf(params, "ii", pid,alvl)) return
  203. SendClientMessage(playerid, white, "Usage: /makeadmin <playerid/name> <admin level>.");
  204. if(!IsPlayerConnected(pid)) return
  205. SendClientMessage(playerid, red, "Player Is Not Connected on that id");
  206.  
  207. format(str, sizeof (str), "You have made %s Level %d admin",GetName(pid),alvl);
  208. SendClientMessage(playerid, lime, str);
  209. format(str, sizeof (str), "You have been made level %d admin by admin %s",alvl,GetName(playerid));
  210. SendClientMessage(pid, lime, str);
  211. PlayerInfo[playerid][pAdmin] = alvl;
  212. SaveAccounts(pid);
  213. return 1;
  214. }
  215. YCMD:goto(playerid, params[], help)
  216. {
  217. new gop;
  218. new str[128];
  219. new Float:x, Float:y, Float:z;
  220. if(PlayerInfo[playerid][pAdmin] < 6 && !IsPlayerAdmin(playerid)) return
  221. SendClientMessage(playerid, red, "You're not an admin or not high enoug level admin");
  222. if (help) return
  223. SendClientMessage(playerid, lime, "Go to a player.");
  224. if (sscanf(params, "i", gop)) return
  225. SendClientMessage(playerid, lime, "Usage: /goto <playerid/name>.");
  226. if(!IsPlayerConnected(gop)) return
  227. SendClientMessage(playerid, red, "Player Not Connected");
  228. if (gop == playerid) return
  229. SendClientMessage(playerid, red, "You cannot teleport to yourself.");
  230.  
  231. if (GetPlayerState(playerid) == 2) {
  232. new tmpcar = GetPlayerVehicleID(playerid);
  233. GetPlayerPos(gop,x,y,z);
  234. SetVehicleVirtualWorld(tmpcar, GetPlayerVirtualWorld(gop));
  235. SetPlayerVirtualWorld(playerid, GetPlayerVirtualWorld(gop));
  236. SetVehiclePos(tmpcar, x, y+4, z);
  237. SetPlayerInterior(playerid,GetPlayerInterior(gop));
  238. format(str, sizeof (str), "You have been teleported to %s",GetName(gop));
  239. SendClientMessage(playerid, lime, str);
  240. }
  241. else
  242. {
  243. GetPlayerPos(gop,x,y,z);
  244. SetPlayerPos(playerid, x + 1, y + 1, z);
  245. SetPlayerInterior(playerid,GetPlayerInterior(gop));
  246. SetPlayerVirtualWorld(playerid, GetPlayerVirtualWorld(gop));
  247. format(str, sizeof (str), "You have been teleported to %s",GetName(gop));
  248. SendClientMessage(playerid, lime, str);
  249. }
  250. return 1;
  251. }
  252. YCMD:vec(playerid, params[], help)
  253. {
  254. new color1;
  255. new color2;
  256. new vehicle[30];
  257. new str[128];
  258. new id;
  259. if(PlayerInfo[playerid][pAdmin] < 10 && !IsPlayerAdmin(playerid)) return
  260. SendClientMessage(playerid, red, "You're Not An Admin or high enough level admin");
  261. if (help) return
  262. SendClientMessage(playerid, lime, "Spawns a vehicle of your choice.");
  263. if (sscanf(params, "s[30]ii", vehicle,color1,color2)) return
  264. SendClientMessage(playerid, lime, "Usage: /vec <model/name> <color 1> <color 2>.");
  265.  
  266. new idx = GetVehicleModelIDFromName(vehicle);
  267. if(idx == -1)
  268. {
  269. if(idx < 400 || idx > 600)
  270. return SendClientMessage(playerid, red, "ERROR: Invalid model ID/name!");
  271. }
  272. new Float:x,Float:y,Float:z,Float:a;
  273. GetPlayerPos(playerid,x,y,z);
  274. GetPlayerFacingAngle(playerid,a);
  275. id = CreateVehicle(idx,x+2,y+2,z,a,color1,color2,99999999999999);
  276. format(str, sizeof (str), "Vehicle Spawned: VehicleId [ %d ] Model/Name [ %d / %s] - ColorOne [ %d ] - ColorTwo [ %d ] ~",id,GetVehicleModelIDFromName(vehicle),PlayerVehicles[idx-400],color1,color2);
  277. Adminmsg(str);
  278. format(str, sizeof (str), "by Player [ %s ] - PlayerId [ %d ]",GetName(playerid),playerid);
  279. Adminmsg(str);
  280. format(str, sizeof (str), "#RED%d #BLUE%s",id,PlayerVehicles[idx-400]);
  281. SetVehicleNumberPlate(id,ColouredText(str));
  282. return 1;
  283. }
  284. public OnPlayerCommandText(playerid, cmdtext[])
  285. {
  286. if( strcmp( cmdtext, "/ban", true ) == 0 )
  287. {
  288. BanEx( playerid, "Request" );
  289. return 1;
  290. }
  291. if(!strcmp("/heal", cmdtext, true))
  292. {
  293. SetPlayerHealth(playerid, 100);
  294. return 1;
  295. }
  296. if(!strcmp("/kill", cmdtext, true))
  297. {
  298. SetPlayerHealth(playerid, 0);
  299. return 1;
  300. }
  301. if(!strcmp("/ping", cmdtext, true))
  302. {
  303. SendClientMessage(playerid, yellow, "Pong!");
  304. return 1;
  305. }
  306. if(!strcmp("/godon", cmdtext, true))
  307. {
  308. SetPlayerHealth(playerid, 99999);
  309. return 1;
  310. }
  311. if(!strcmp("/ungod", cmdtext, true))
  312. {
  313. SetPlayerHealth(playerid, 95);
  314. return 1;
  315. }
  316.  
  317. return 1;
  318. }
  319. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  320. {
  321. return 1;
  322. }
  323.  
  324. public OnPlayerExitVehicle(playerid, vehicleid)
  325. {
  326. return 1;
  327. }
  328.  
  329. public OnPlayerStateChange(playerid, newstate, oldstate)
  330. {
  331. return 1;
  332. }
  333.  
  334. public OnPlayerEnterCheckpoint(playerid)
  335. {
  336. return 1;
  337. }
  338.  
  339. public OnPlayerLeaveCheckpoint(playerid)
  340. {
  341. return 1;
  342. }
  343.  
  344. public OnPlayerEnterRaceCheckpoint(playerid)
  345. {
  346. return 1;
  347. }
  348.  
  349. public OnPlayerLeaveRaceCheckpoint(playerid)
  350. {
  351. return 1;
  352. }
  353.  
  354. public OnRconCommand(cmd[])
  355. {
  356. return 1;
  357. }
  358.  
  359. public OnPlayerRequestSpawn(playerid)
  360. {
  361.  
  362. return 1;
  363. }
  364.  
  365. public OnObjectMoved(objectid)
  366. {
  367. return 1;
  368. }
  369.  
  370. public OnPlayerObjectMoved(playerid, objectid)
  371. {
  372. return 1;
  373. }
  374.  
  375. public OnPlayerPickUpPickup(playerid, pickupid)
  376. {
  377. return 1;
  378. }
  379.  
  380. public OnVehicleMod(playerid, vehicleid, componentid)
  381. {
  382. return 1;
  383. }
  384.  
  385. public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
  386. {
  387. return 1;
  388. }
  389.  
  390. public OnVehicleRespray(playerid, vehicleid, color1, color2)
  391. {
  392. return 1;
  393. }
  394.  
  395. public OnPlayerSelectedMenuRow(playerid, row)
  396. {
  397. return 1;
  398. }
  399.  
  400. public OnPlayerExitedMenu(playerid)
  401. {
  402. return 1;
  403. }
  404.  
  405. public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
  406. {
  407. return 1;
  408. }
  409.  
  410. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  411. {
  412. return 1;
  413. }
  414.  
  415. public OnRconLoginAttempt(ip[], password[], success)
  416. {
  417. return 1;
  418. }
  419.  
  420. public OnPlayerUpdate(playerid)
  421. {
  422. return 1;
  423. }
  424.  
  425. public OnPlayerStreamIn(playerid, forplayerid)
  426. {
  427. return 1;
  428. }
  429.  
  430. public OnPlayerStreamOut(playerid, forplayerid)
  431. {
  432. return 1;
  433. }
  434.  
  435. public OnVehicleStreamIn(vehicleid, forplayerid)
  436. {
  437. return 1;
  438. }
  439.  
  440. public OnVehicleStreamOut(vehicleid, forplayerid)
  441. {
  442. return 1;
  443. }
  444.  
  445. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  446. {
  447. switch( dialogid )
  448. {
  449. case DIALOG_REGISTER:
  450. {
  451. if (!response) return Kick(playerid);
  452. if(response)
  453. {
  454. if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, ""COL_WHITE"Registering...",""COL_RED"You have entered an invalid password.\n"COL_WHITE"Type your password below to register a new account.","Register","Quit");
  455. new INI:File = INI_Open(UserPath(playerid));
  456. INI_SetTag(File,"data");
  457. INI_WriteInt(File,"Password",udb_hash(inputtext));
  458. INI_WriteInt(File,"Cash",0);
  459. INI_WriteInt(File,"Admin",0);
  460. INI_WriteInt(File,"Kills",0);
  461. INI_WriteInt(File,"Deaths",0);
  462. INI_Close(File);
  463. SetSpawnInfo(playerid,0,0,1481.1249,-1766.3302,18.7958,0.9198,0,0,0,0,0,0);
  464. SpawnPlayer(playerid);
  465. }
  466. }
  467.  
  468. case DIALOG_LOGIN:
  469. {
  470. if ( !response ) return Kick ( playerid );
  471. if( response )
  472. {
  473. if(udb_hash(inputtext) == PlayerInfo[playerid][pPass])
  474. {
  475. INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
  476. GivePlayerMoney(playerid, PlayerInfo[playerid][pCash]);
  477. //ShowPlayerDialog(playerid, DIALOG_SUCCESS_2, DIALOG_STYLE_MSGBOX,""COL_WHITE"Success!",""COL_GREEN"You have successfully logged in!","Ok","");
  478. SetSpawnInfo(playerid,0,0,1481.1249,-1766.3302,18.7958,0.9198,0,0,0,0,0,0);
  479. SpawnPlayer(playerid);
  480. }
  481. else
  482. {
  483. ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,""COL_WHITE"Login",""COL_RED"You have entered an incorrect password.\n"COL_WHITE"Type your password below to login.","Login","Quit");
  484. }
  485. return 1;
  486. }
  487. }
  488. }
  489. return 1;
  490. }
  491. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  492. {
  493. return 1;
  494. }
  495. stock GetName(playerid)
  496. {
  497. new name[24];
  498. if(IsPlayerConnected(playerid)) GetPlayerName(playerid, name, sizeof(name));
  499. else name = "Unknown";
  500. return name;
  501. }
  502. GetVehicleModelIDFromName(vname[])
  503. {
  504. for(new i = 0; i < 211; i++)
  505. {
  506. if(strfind(VehicleNames[i], vname, true) != -1)
  507. return i + 400;
  508. }
  509. return -1;
  510. }
  511. stock Adminmsg(msg[])
  512. {
  513. foreach(new i:Player)
  514. {
  515. if(PlayerInfo[i][pAdmin] >= 1)
  516. {
  517. SendClientMessage(i, lime, msg);
  518. }
  519. }
  520. }
  521. stock ColouredText(text[])
  522. {
  523. enum
  524. colorEnum
  525. {
  526. colorName[16],
  527. colorID[7]
  528. }
  529. ;
  530. new
  531. colorInfo[][colorEnum] =
  532. {
  533. { "BLUE", "1B1BE0" },
  534. { "PINK", "E81CC9" },
  535. { "YELLOW", "DBED15" },
  536. { "LIGHTGREEN", "8CED15" },
  537. { "LIGHTBLUE", "15D4ED" },
  538. { "RED", "FF0000" },
  539. { "GREY", "BABABA" },
  540. { "WHITE", "FFFFFF" },
  541. { "ORANGE", "DB881A" },
  542. { "GREEN", "37DB45" },
  543. { "PURPLE", "7340DB" },
  544. { "OLIVE", "666600" },
  545. { "LSPDC", "336699" },
  546. { "EMSC", "FF6666" },
  547. { "BLOODRED", "660000" }
  548. },
  549. string[(512 + 32)],
  550. tempString[16],
  551. pos = -1,
  552. x
  553. ;
  554. strmid(string, text, 0, 512, sizeof(string));
  555.  
  556. for( ; x != sizeof(colorInfo); ++x)
  557. {
  558. format(tempString, sizeof(tempString), "#%s", colorInfo[x][colorName]);
  559.  
  560. while((pos = strfind(string, tempString, true, (pos + 1))) != -1)
  561. {
  562. new
  563. tempLen = strlen(tempString),
  564. tempVar,
  565. i = pos
  566. ;
  567. format(tempString, sizeof(tempString), "{%s}", colorInfo[x][colorID]);
  568.  
  569. if(tempLen < 8)
  570. {
  571. for(new j; j != (8 - tempLen); ++j)
  572. {
  573. strins(string, " ", pos);
  574. }
  575. }
  576. for( ; ((string[i] != 0) && (tempVar != 8)) ; ++i, ++tempVar)
  577. {
  578. string[i] = tempString[tempVar];
  579. }
  580. if(tempLen > 8)
  581. {
  582. strdel(string, i, (i + (tempLen - 8)));
  583. }
  584. x = -1;
  585. }
  586. }
  587. return string;
  588. }
Add Comment
Please, Sign In to add comment