Guest User

Walker's Administration - Version 3

a guest
May 31st, 2014
900
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 38.14 KB | None | 0 0
  1. /*
  2. | Walker's Administration System - ENG - 0.3Z |
  3. | Copyright |
  4. */
  5. #include <a_samp>
  6. #include <sscanf2>
  7. #include <YSI\y_ini>
  8. #include <zcmd>
  9. // ===============[COLORS]===================
  10. #define COLOR_GREEN 0x008000FF
  11. #define COLOR_YELLOW 0xECD400F6
  12. #define COLOR_WHITE 0xFFFFFFFF
  13.  
  14. #define SCM SendClientMessage
  15. #define USER_PATH "/Users/%s.ini"
  16.  
  17. #define DIALOG_SNAME 1
  18. #define DIALOG_SMAP 2
  19. #define DIALOG_STIME 3
  20. #define DIALOG_LOGIN 4
  21.  
  22. new Servertime1;
  23. new Servertime2;
  24. new Servertime3;
  25. new ServerName[300];
  26. new ServerMap[300];
  27.  
  28.  
  29. public OnFilterScriptInit()
  30. {
  31. print("\n--------------------------------------");
  32. print(" Walker's Administration System - v0.1");
  33. print("--------------------------------------\n");
  34. // Jail
  35. CreateObject(19303, 218.04221, 1866.39355, 13.36293, 0.00000, 0.00000, 0.00000);
  36. CreateObject(19303, 216.30815, 1866.39380, 13.36290, 0.00000, 0.00000, 180.00000);
  37. CreateObject(19364, 215.50836, 1864.81128, 13.15941, 0.00000, 0.00000, 0.00000);
  38. CreateObject(19364, 218.85277, 1861.62036, 13.15941, 0.00000, 0.00000, 0.00000);
  39. CreateObject(19364, 216.91484, 1860.34424, 13.15940, 0.00000, 0.00000, 90.00000);
  40. CreateObject(19364, 215.49251, 1861.62512, 13.15941, 0.00000, 0.00000, 0.00000);
  41. CreateObject(19364, 215.56862, 1861.16565, 13.15940, 0.00000, 0.00000, -127.00000);
  42. CreateObject(19364, 218.54053, 1860.76672, 13.15940, 0.00000, 0.00000, 127.00000);
  43. CreateObject(19364, 218.84845, 1864.82092, 13.15941, 0.00000, 0.00000, 0.00000);
  44. CreateObject(19377, 216.25209, 1861.57703, 14.67330, 0.00000, 90.00000, 0.00000);
  45. // Admin Panel
  46. LoadAdminPanel();
  47. gettime(Servertime1, Servertime2, Servertime3);
  48. SetTimer("ChangeTextdraws", 1000, true);
  49. return 1;
  50. }
  51. enum pInfo
  52. {
  53. Float:Health,
  54. Float:Armour,
  55. Skin,
  56. Money,
  57. Float:pX,
  58. Float:pY,
  59. Float:pZ,
  60. Float:Angle,
  61. pMuted,
  62. pFreezed,
  63. pJailed,
  64. Kills,
  65. Deaths,
  66. Admin,
  67. AdminLevel,
  68. AdminDuty
  69. };
  70. new PlayerInfo[MAX_PLAYERS][pInfo];
  71.  
  72. // Admin Panel
  73. new Text:txd1;
  74. new Text:txd2;
  75. new Text:gmtext;
  76. new Text:gmmap;
  77. new Text:gmtime;
  78. new Text:close;
  79.  
  80. public OnFilterScriptExit()
  81. {
  82. return 1;
  83. }
  84.  
  85. public OnPlayerConnect(playerid)
  86. {
  87. new uFile[35];
  88. format(uFile, 35, USER_PATH, GetName(playerid));
  89. {
  90. INI_ParseFile(uFile, "LoadUserData", .bExtra = true, .extra = playerid);
  91. }
  92. ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_MSGBOX, "Walker's Administration", "Welcome to Walker's Administration System,made by Jonathan walker.Press Login to proceed.", "Login", "");
  93. return 1;
  94. }
  95. // ==============================================[ADMIN COMMANDS]======================================
  96. CMD:setadmin(playerid, params[])
  97. {
  98. new targetid, level;
  99. new string[128];
  100. if(!IsPlayerAdmin(playerid)) return SCM(playerid, COLOR_WHITE, "{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  101. else if (sscanf(params, "ui", targetid, level)) return SCM(playerid, COLOR_WHITE,"{E5AC00}[Usage]: {FFFFFF}/setadmin [ID] [Level]");
  102. else if(targetid == INVALID_PLAYER_ID) return SCM(playerid, COLOR_WHITE, "{B3B3B3}[INFO]: {FFFFFF}Invalid Player ID.");
  103. else
  104. {
  105. format(string, sizeof(string),"{37A63D}[INFO]{FFFFFF}You have set %s's Admin Level to %d.", GetName(targetid), level);
  106. SCM(playerid, COLOR_WHITE, string);
  107. format(string, sizeof(string),"{37A63D}[INFO]{FFFFFF}You have been promoted to Admin level %d by Administrator %s.", level, GetName(playerid));
  108. SCM(targetid, COLOR_WHITE, string);
  109. PlayerInfo[targetid][Admin] = 1;
  110. PlayerInfo[targetid][AdminLevel] = level;
  111. SavePlayer(targetid);
  112. }
  113. return 1;
  114. }
  115. CMD:ahelp(playerid, params[])
  116. {
  117. if(!PlayerInfo[playerid][Admin]) return SCM(playerid,COLOR_WHITE,"{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  118. if(PlayerInfo[playerid][AdminLevel] >= 1)
  119. {
  120. SCM(playerid, COLOR_WHITE, "{EED811}[Level 1] {FFFFFF} | /a | /kick | /get | /aduty | /ban | /goto | /mute | /unmute | /freeze /unfreeze | /givemoney |");
  121. }
  122. if(PlayerInfo[playerid][AdminLevel] >= 2)
  123. {
  124. SCM(playerid, COLOR_WHITE,"{EED811}[Level 2] {FFFFFF}| /setskin | /sethealth | /setarmour |");
  125. }
  126. if(PlayerInfo[playerid][AdminLevel] >= 3)
  127. {
  128. SCM(playerid, COLOR_WHITE, "{EED811}[Level 3] {FFFFFF}| /givegun| /jail | /unjail | /settime |");
  129. }
  130. if(PlayerInfo[playerid][AdminLevel] >= 4)
  131. {
  132. SCM(playerid, COLOR_WHITE, "{EED811}[Level 4] {FFFFFF}| /setmoney | /setvw | /setinterior | /setscore |");
  133. }
  134. if(PlayerInfo[playerid][AdminLevel] >= 5)
  135. {
  136. SCM(playerid, COLOR_WHITE, "{EED811}[Level 5] {FFFFFF}| /setadmin | /kickall | /banall |");
  137. }
  138. SCM(playerid, COLOR_WHITE,"{1B951D}[================================================================]");
  139. return 1;
  140. }
  141. CMD:a(playerid, params[])
  142. {
  143. new string[256];
  144. if(!PlayerInfo[playerid][Admin]) return SCM(playerid,COLOR_WHITE,"{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  145. if(isnull(params)) return SCM(playerid, COLOR_WHITE, "{E5AC00}[Usage]:{FFFFFF} /a(nnounce) [text]");
  146. format(string, sizeof(string), "{B52535}[Adminstrator %s]:{FFFFFF} %s", GetName(playerid), params);
  147. SendClientMessageToAll(COLOR_WHITE, string);
  148. return 1;
  149. }
  150. CMD:announce(playerid, params[]) return cmd_a(playerid, params);
  151.  
  152. CMD:kick(playerid,params[])
  153. {
  154. new targetid, reason[128], string[128];
  155. if(!PlayerInfo[playerid][Admin]) return SCM(playerid,COLOR_WHITE,"{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  156. if(sscanf(params,"us[128]",targetid,reason)) return SCM(playerid, COLOR_WHITE,"{E5AC00}[USAGE]:{FFFFFF} /kick [playerid] [Reason]");
  157. if(!IsPlayerConnected(targetid)) return SCM(playerid, COLOR_WHITE, "{AF1C1C}(INFO){FFFFFF}Invalid Player ID.");
  158. format(string, sizeof(string),"{E5AC00}[INFO]:{FFFFFF} %s is kicked from the Server by Administrator %s.(Reason: %s)",GetName(targetid),GetName(playerid),reason);
  159. SendClientMessageToAll(COLOR_WHITE,string);
  160. format(string, sizeof(string),"{E5AC00}[INFO]:{FFFFFF} You are kicked from the Server by Administrator %s.(Reason: %s)",GetName(playerid),reason);
  161. SCM(targetid,COLOR_WHITE,string);
  162. SetTimerEx("KickPlayer", 2000, 0, "d", targetid);
  163. return 1;
  164. }
  165. CMD:ban(playerid,params[])
  166. {
  167. new targetid, reason[128], string[128];
  168. if(!PlayerInfo[playerid][Admin]) return SCM(playerid,COLOR_WHITE,"{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  169. if(sscanf(params,"us[128]",targetid,reason)) return SCM(playerid, COLOR_WHITE,"{E5AC00}[USAGE]:{FFFFFF} /ban [playerid] [Reason]");
  170. if(!IsPlayerConnected(targetid)) return SCM(playerid, COLOR_WHITE, "{AF1C1C}(INFO){FFFFFF}Invalid Player ID.");
  171. format(string, sizeof(string),"{E5AC00}[INFO]:{FFFFFF} %s is Banned from the Server by Administrator %s.(Reason: %s)",GetName(targetid),GetName(playerid),reason);
  172. SendClientMessageToAll(COLOR_WHITE,string);
  173. format(string, sizeof(string),"{E5AC00}[INFO]:{FFFFFF} You are Banned from the Server by Administrator %s.(Reason: %s)",GetName(playerid),reason);
  174. SCM(targetid,COLOR_WHITE,string);
  175. SetTimerEx("BanPlayer", 2000, 0, "d", targetid);
  176. return 1;
  177. }
  178. CMD:kickall(playerid,params[]) // Version 3
  179. {
  180. new reason[128], string[128];
  181. if(!PlayerInfo[playerid][Admin]) return SCM(playerid,COLOR_WHITE,"{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  182. if(sscanf(params,"s[128]",reason)) return SCM(playerid, COLOR_WHITE,"{E5AC00}[USAGE]:{FFFFFF} /kickall [Reason]");
  183. format(string, sizeof(string),"{E5AC00}[INFO]:{FFFFFF} Everyone is kicked from the Server by Administrator %s.(Reason: %s)",GetName(playerid),reason);
  184. SendClientMessageToAll(COLOR_WHITE,string);
  185. KickAll();
  186. return 1;
  187. }
  188. CMD:banall(playerid,params[]) // Version 3
  189. {
  190. new reason[128], string[128];
  191. if(!PlayerInfo[playerid][Admin]) return SCM(playerid,COLOR_WHITE,"{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  192. if(sscanf(params,"s[128]",reason)) return SCM(playerid, COLOR_WHITE,"{E5AC00}[USAGE]:{FFFFFF} /banall [Reason]");
  193. format(string, sizeof(string),"{E5AC00}[INFO]:{FFFFFF} Everyone is banned from the Server by Administrator %s.(Reason: %s)",GetName(playerid),reason);
  194. SendClientMessageToAll(COLOR_WHITE,string);
  195. BanAll();
  196. return 1;
  197. }
  198. CMD:createpickup(playerid, params[]) // Version 3
  199. {
  200. new string[128];
  201. SendClientMessage(playerid, COLOR_WHITE, "{E5AC00}(TYPES):{FFFFFF}1 - Always Exist | 2 - Disappears on pickup |");
  202. if(!PlayerInfo[playerid][Admin]) return SCM(playerid,COLOR_WHITE,"{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  203. new PModel, PType, Float:PX, Float:PY, Float:PZ;
  204. if(sscanf(params, "ih", PModel, PType)) return SendClientMessage(playerid, COLOR_WHITE, "{E5AC00}[USAGE]:{FFFFFF} /createpickup [ID] [Type]");
  205. GetPlayerPos(playerid, PX, PY, PZ);
  206. CreatePickup(PModel, PType, PX, PY, PZ, -1);
  207. format(string,sizeof(string),"[INFO]: {FFFFFF}Pickup successfully Added.Model: (%d) Spawn Type: (%d)",PModel, PType);
  208. return SendClientMessage(playerid, COLOR_WHITE, string);
  209. }
  210. CMD:createlabel(playerid, params[]) // Version 3
  211. {
  212. new string[128];
  213. if(!PlayerInfo[playerid][Admin]) return SCM(playerid,COLOR_WHITE,"{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  214. new Float:X, Float:Y, Float:Z,Colour;
  215. if(sscanf(params, "s[128]h",params,Colour)) return SendClientMessage(playerid, COLOR_WHITE, "{E5AC00}[USAGE]:{FFFFFF} /createlabel [text] [Colour]");
  216. GetPlayerPos(playerid, X, Y, Z);
  217. Create3DTextLabel(params, Colour, X, Y, Z, 15, 0, 0);
  218. format(string, sizeof(string), "[INFO]: {FFFFFF}3D Text Label successfully Added.Text: (%s)",params);
  219. return SendClientMessage(playerid, COLOR_WHITE, string);
  220. }
  221. CMD:get(playerid,params[])
  222. {
  223. new targetid, Float:x,Float:y,Float:z;
  224. new string[128];
  225. if(!PlayerInfo[playerid][Admin]) return SCM(playerid,COLOR_WHITE,"{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  226. if(sscanf(params,"u",targetid)) return SCM(playerid, COLOR_WHITE,"{E5AC00}[USAGE]:{FFFFFF} /get [playerid]");
  227. if(!IsPlayerConnected(targetid)) return SCM(playerid, COLOR_WHITE, "{AF1C1C}(INFO){FFFFFF}Invalid Player ID.");
  228. GetPlayerPos(playerid, x, y, z);
  229. SetPlayerPos(targetid, x+1, y+1, z);
  230. format(string, sizeof(string),"{E5AC00}[INFO]:{FFFFFF} You have teleported %s to your position.",GetName(targetid));
  231. SendClientMessage(playerid, COLOR_WHITE,string);
  232. format(string, sizeof(string),"{E5AC00}[INFO]:{FFFFFF} Administrator %s has teleported you to his Position.",GetName(playerid));
  233. SCM(targetid,COLOR_WHITE,string);
  234. return 1;
  235. }
  236. CMD:goto(playerid,params[])
  237. {
  238. new targetid, Float:x,Float:y,Float:z;
  239. new string[128];
  240. if(!PlayerInfo[playerid][Admin]) return SCM(playerid,COLOR_WHITE,"{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  241. if(sscanf(params,"u",targetid)) return SCM(playerid, COLOR_WHITE,"{E5AC00}[USAGE]:{FFFFFF} /goto [playerid]");
  242. if(!IsPlayerConnected(targetid)) return SCM(playerid, COLOR_WHITE, "{AF1C1C}(INFO){FFFFFF}Invalid Player ID.");
  243. GetPlayerPos(targetid, x, y, z);
  244. SetPlayerPos(playerid, x+1, y+1, z);
  245. format(string, sizeof(string),"{E5AC00}[INFO]:{FFFFFF} You have teleported to %s's Position.",GetName(targetid));
  246. SCM(playerid, COLOR_WHITE,string);
  247. format(string, sizeof(string),"{E5AC00}[INFO]:{FFFFFF} Administrator %s has teleported to your position.",GetName(playerid));
  248. SCM(targetid,COLOR_WHITE,string);
  249. return 1;
  250. }
  251. CMD:mute(playerid, params[])
  252. {
  253. new targetid;
  254. new string[128];
  255. if(!PlayerInfo[playerid][Admin]) return SCM(playerid,COLOR_WHITE,"{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  256. if(sscanf(params,"u",targetid)) return SCM(playerid, COLOR_WHITE,"{E5AC00}[USAGE]:{FFFFFF} /mute [playerid]");
  257. if(!IsPlayerConnected(targetid)) return SCM(playerid, COLOR_WHITE, "{AF1C1C}(INFO){FFFFFF}Invalid Player ID.");
  258. format(string, sizeof(string),"{E5AC00}[INFO]:{FFFFFF} You have Muted %s.",GetName(targetid));
  259. SCM(playerid, COLOR_WHITE,string);
  260. format(string, sizeof(string),"{E5AC00}[INFO]:{FFFFFF} Administrator %s has Muted you.",GetName(playerid));
  261. SCM(targetid,COLOR_WHITE,string);
  262. PlayerInfo[targetid][pMuted] = 1;
  263. SavePlayer(targetid);
  264. return 1;
  265. }
  266. CMD:unmute(playerid, params[])
  267. {
  268. new targetid;
  269. new string[128];
  270. if(!PlayerInfo[playerid][Admin]) return SCM(playerid,COLOR_WHITE,"{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  271. if(sscanf(params,"u",targetid)) return SCM(playerid, COLOR_WHITE,"{E5AC00}[USAGE]:{FFFFFF} /unmute [playerid]");
  272. if(!IsPlayerConnected(targetid)) return SCM(playerid, COLOR_WHITE, "{AF1C1C}(INFO){FFFFFF}Invalid Player ID.");
  273. format(string, sizeof(string),"{E5AC00}[INFO]:{FFFFFF} You have Un-Muted %s.",GetName(targetid));
  274. SCM(playerid, COLOR_WHITE,string);
  275. format(string, sizeof(string),"{E5AC00}[INFO]:{FFFFFF} Administrator %s has Un-Muted you.",GetName(playerid));
  276. SCM(targetid,COLOR_WHITE,string);
  277. PlayerInfo[targetid][pMuted] = 0;
  278. SavePlayer(targetid);
  279. return 1;
  280. }
  281. CMD:freeze(playerid, params[])
  282. {
  283. new targetid;
  284. new string[128];
  285. if(!PlayerInfo[playerid][Admin]) return SCM(playerid,COLOR_WHITE,"{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  286. if(sscanf(params,"u",targetid)) return SCM(playerid, COLOR_WHITE,"{E5AC00}[USAGE]:{FFFFFF} /freeze [playerid]");
  287. if(!IsPlayerConnected(targetid)) return SCM(playerid, COLOR_WHITE, "{AF1C1C}(INFO){FFFFFF}Invalid Player ID.");
  288. format(string, sizeof(string),"{E5AC00}[INFO]:{FFFFFF} You have Freezed %s.",GetName(targetid));
  289. SCM(playerid, COLOR_WHITE,string);
  290. format(string, sizeof(string),"{E5AC00}[INFO]:{FFFFFF} Administrator %s has Freezed you.",GetName(playerid));
  291. SCM(targetid,COLOR_WHITE,string);
  292. PlayerInfo[targetid][pFreezed] = 1;
  293. TogglePlayerControllable(playerid, 0);
  294. SavePlayer(targetid);
  295. return 1;
  296. }
  297. CMD:unfreeze(playerid, params[])
  298. {
  299. new targetid;
  300. new string[128];
  301. if(!PlayerInfo[playerid][Admin]) return SCM(playerid,COLOR_WHITE,"{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  302. if(sscanf(params,"u",targetid)) return SCM(playerid, COLOR_WHITE,"{E5AC00}[USAGE]:{FFFFFF} /unfreeze [playerid]");
  303. if(!IsPlayerConnected(targetid)) return SCM(playerid, COLOR_WHITE, "{AF1C1C}(INFO){FFFFFF}Invalid Player ID.");
  304. format(string, sizeof(string),"{E5AC00}[INFO]:{FFFFFF} You have Un-Freezed %s.",GetName(targetid));
  305. SCM(playerid, COLOR_WHITE,string);
  306. format(string, sizeof(string),"{E5AC00}[INFO]:{FFFFFF} Administrator %s has Un-Freezed you.",GetName(playerid));
  307. SCM(targetid,COLOR_WHITE,string);
  308. PlayerInfo[targetid][pFreezed] = 0;
  309. TogglePlayerControllable(playerid, 1);
  310. SavePlayer(targetid);
  311. return 1;
  312. }
  313. CMD:jail(playerid, params[])
  314. {
  315. new targetid;
  316. new string[128];
  317. if(!PlayerInfo[playerid][Admin]) return SCM(playerid,COLOR_WHITE,"{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  318. if(sscanf(params,"u",targetid)) return SCM(playerid, COLOR_WHITE,"{E5AC00}[USAGE]:{FFFFFF} /jail [playerid]");
  319. if(!IsPlayerConnected(targetid)) return SCM(playerid, COLOR_WHITE, "{AF1C1C}(INFO){FFFFFF}Invalid Player ID.");
  320. format(string, sizeof(string),"{E5AC00}[INFO]:{FFFFFF} You have Jailed %s.",GetName(targetid));
  321. SCM(playerid, COLOR_WHITE,string);
  322. format(string, sizeof(string),"{E5AC00}[INFO]:{FFFFFF} Administrator %s has Jailed you.",GetName(playerid));
  323. SCM(targetid,COLOR_WHITE,string);
  324. PlayerInfo[targetid][pJailed] = 1;
  325. SetPlayerPos(targetid, 217.2644, 1863.2052, 12.5388);
  326. SavePlayer(targetid);
  327. return 1;
  328. }
  329. CMD:unjail(playerid, params[])
  330. {
  331. new targetid;
  332. new string[128];
  333. if(!PlayerInfo[playerid][Admin]) return SCM(playerid,COLOR_WHITE,"{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  334. if(sscanf(params,"u",targetid)) return SCM(playerid, COLOR_WHITE,"{E5AC00}[USAGE]:{FFFFFF} /unjail [playerid]");
  335. if(!IsPlayerConnected(targetid)) return SCM(playerid, COLOR_WHITE, "{AF1C1C}(INFO){FFFFFF}Invalid Player ID.");
  336. format(string, sizeof(string),"{E5AC00}[INFO]:{FFFFFF} You have Un-Jailed %s.",GetName(targetid));
  337. SCM(playerid, COLOR_WHITE,string);
  338. format(string, sizeof(string),"{E5AC00}[INFO]:{FFFFFF} Administrator %s has Un-Jailed you.",GetName(playerid));
  339. SCM(targetid,COLOR_WHITE,string);
  340. PlayerInfo[targetid][pJailed] = 0;
  341. SetPlayerPos(playerid, -185.5223, 977.4722, 19.0640);
  342. SavePlayer(targetid);
  343. return 1;
  344. }
  345. CMD:gotopos(playerid,params[])
  346. {
  347. new Float: PosX, Float: PosY, Float: PosZ, Interior, str[128];
  348. if(!PlayerInfo[playerid][Admin]) return SCM(playerid,COLOR_WHITE,"{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  349. if(sscanf(params,"fffd" ,PosX, PosY, PosZ, Interior))return SendClientMessage(playerid, COLOR_WHITE, "{E5AC00}[USAGE]:{FFFFFF} /gotopos [X] [Y] [Z] [Interior]");
  350. SetPlayerPos(playerid ,PosX, PosY, PosZ);
  351. SetPlayerInterior(playerid, Interior);
  352. format(str, sizeof(str), "{E5AC00}[INFO]:{FFFFFF} Teleported to X: %f, Y: %f, Z: %f and Interior: %d.", PosX, PosY, PosZ, Interior);
  353. SendClientMessage(playerid, COLOR_WHITE, str);
  354. return 1;
  355. }
  356. CMD:setmoney(playerid, params[])
  357. {
  358. new targetid;
  359. new string[128];
  360. new quantity;
  361. if(!PlayerInfo[playerid][Admin]) return SCM(playerid,COLOR_WHITE,"{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  362. if(sscanf(params,"ud",targetid, quantity)) return SCM(playerid, COLOR_WHITE,"{E5AC00}[USAGE]:{FFFFFF} /setmoney [playerid] [Amount]");
  363. if(!IsPlayerConnected(targetid)) return SCM(playerid, COLOR_WHITE, "{AF1C1C}(INFO){FFFFFF}Invalid Player ID.");
  364. format(string, sizeof(string),"{E5AC00}[INFO]:{FFFFFF} You have set %s's Money to $%d.",GetName(targetid),quantity);
  365. SCM(playerid, COLOR_WHITE,string);
  366. format(string, sizeof(string),"{E5AC00}[INFO]:{FFFFFF} Administrator %s has set your money to $%d.",GetName(playerid),quantity);
  367. SCM(targetid,COLOR_WHITE,string);
  368. SetMoney(targetid, quantity);
  369. SavePlayer(targetid);
  370. return 1;
  371. }
  372. CMD:setscore(playerid, params[]) // Version 3
  373. {
  374. new targetid;
  375. new string[128];
  376. new quantity;
  377. if(!PlayerInfo[playerid][Admin]) return SCM(playerid,COLOR_WHITE,"{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  378. if(sscanf(params,"ud",targetid, quantity)) return SCM(playerid, COLOR_WHITE,"{E5AC00}[USAGE]:{FFFFFF} /setscore [playerid] [Amount]");
  379. if(!IsPlayerConnected(targetid)) return SCM(playerid, COLOR_WHITE, "{AF1C1C}(INFO){FFFFFF}Invalid Player ID.");
  380. format(string, sizeof(string),"{E5AC00}[INFO]:{FFFFFF} You have set %s's Level to %d.",GetName(targetid),quantity);
  381. SCM(playerid, COLOR_WHITE,string);
  382. format(string, sizeof(string),"{E5AC00}[INFO]:{FFFFFF} Administrator %s has set your level to %d.",GetName(playerid),quantity);
  383. SCM(targetid,COLOR_WHITE,string);
  384. SetPlayerScore(targetid, quantity);
  385. SavePlayer(targetid);
  386. return 1;
  387. }
  388. CMD:setinterior(playerid, params[]) // Version 3
  389. {
  390. new targetid;
  391. new string[128];
  392. new quantity;
  393. if(!PlayerInfo[playerid][Admin]) return SCM(playerid,COLOR_WHITE,"{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  394. if(sscanf(params,"ud",targetid, quantity)) return SCM(playerid, COLOR_WHITE,"{E5AC00}[USAGE]:{FFFFFF} /setinterior [playerid] [Amount]");
  395. if(!IsPlayerConnected(targetid)) return SCM(playerid, COLOR_WHITE, "{AF1C1C}(INFO){FFFFFF}Invalid Player ID.");
  396. format(string, sizeof(string),"{E5AC00}[INFO]:{FFFFFF} You have set %s's Interior to %d.",GetName(targetid),quantity);
  397. SCM(playerid, COLOR_WHITE,string);
  398. format(string, sizeof(string),"{E5AC00}[INFO]:{FFFFFF} Administrator %s has set your interior to %d.",GetName(playerid),quantity);
  399. SCM(targetid,COLOR_WHITE,string);
  400. SetPlayerInterior(targetid, quantity);
  401. return 1;
  402. }
  403. CMD:setvw(playerid, params[]) // Version 3
  404. {
  405. new targetid;
  406. new string[128];
  407. new quantity;
  408. if(!PlayerInfo[playerid][Admin]) return SCM(playerid,COLOR_WHITE,"{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  409. if(sscanf(params,"ud",targetid, quantity)) return SCM(playerid, COLOR_WHITE,"{E5AC00}[USAGE]:{FFFFFF} /setvw [playerid] [Amount]");
  410. if(!IsPlayerConnected(targetid)) return SCM(playerid, COLOR_WHITE, "{AF1C1C}(INFO){FFFFFF}Invalid Player ID.");
  411. format(string, sizeof(string),"{E5AC00}[INFO]:{FFFFFF} You have set %s's Virtual World to %d.",GetName(targetid),quantity);
  412. SCM(playerid, COLOR_WHITE,string);
  413. format(string, sizeof(string),"{E5AC00}[INFO]:{FFFFFF} Administrator %s has set your Virtual World to %d.",GetName(playerid),quantity);
  414. SCM(targetid,COLOR_WHITE,string);
  415. SetPlayerVirtualWorld(targetid, quantity);
  416. return 1;
  417. }
  418. CMD:setskin(playerid, params[])
  419. {
  420. new targetid;
  421. new string[128];
  422. new quantity;
  423. if(!PlayerInfo[playerid][Admin]) return SCM(playerid,COLOR_WHITE,"{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  424. if(sscanf(params,"ud",targetid, quantity)) return SCM(playerid, COLOR_WHITE,"{E5AC00}[USAGE]:{FFFFFF} /setskin [playerid] [Model]");
  425. if(!IsPlayerConnected(targetid)) return SCM(playerid, COLOR_WHITE, "{AF1C1C}(INFO){FFFFFF}Invalid Player ID.");
  426. format(string, sizeof(string),"{E5AC00}[INFO]:{FFFFFF} You have set %s's Skin ID to %d.",GetName(targetid),quantity);
  427. SCM(playerid, COLOR_WHITE,string);
  428. format(string, sizeof(string),"{E5AC00}[INFO]:{FFFFFF} Administrator %s has set your Skin ID to %d.",GetName(playerid),quantity);
  429. SCM(targetid,COLOR_WHITE,string);
  430. SetPlayerSkin(targetid, quantity);
  431. SavePlayer(targetid);
  432. return 1;
  433. }
  434. CMD:setname(playerid, params[])
  435. {
  436. new targetid;
  437. new string[128];
  438. new name[128];
  439. if(!PlayerInfo[playerid][Admin]) return SCM(playerid,COLOR_WHITE,"{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  440. if(sscanf(params,"us[128]",targetid, name)) return SCM(playerid, COLOR_WHITE,"{E5AC00}[USAGE]:{FFFFFF} /setname [playerid] [Name]");
  441. if(!IsPlayerConnected(targetid)) return SCM(playerid, COLOR_WHITE, "{AF1C1C}(INFO){FFFFFF}Invalid Player ID.");
  442. format(string, sizeof(string),"{E5AC00}[INFO]:{FFFFFF} You have set %s's name to %s.",GetName(targetid),name);
  443. SCM(playerid, COLOR_WHITE,string);
  444. format(string, sizeof(string),"{E5AC00}[INFO]:{FFFFFF} Administrator %s has set your name to %s.",GetName(playerid),name);
  445. SCM(targetid,COLOR_WHITE,string);
  446. SetPlayerName(targetid,name);
  447. return 1;
  448. }
  449. CMD:givegun(playerid, params[])
  450. {
  451. new weaponid;
  452. new targetid;
  453. new ammo;
  454. if(!PlayerInfo[playerid][Admin]) return SCM(playerid,COLOR_WHITE,"{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  455. if(sscanf(params,"uii",targetid,weaponid,ammo)) return SCM(playerid, COLOR_WHITE, "{E5AC00}[USAGE]:{FFFFFF}/givegun [playerid] [weaponid] [ammo]");
  456. new string[128];
  457. format(string, sizeof(string), "{E5AC00}[INFO]:{FFFFFF} Administrator %s has given %s weapon ID %i.(Ammo: %i)",GetName(playerid),GetName(targetid),weaponid,ammo);
  458. for(new i=0; i < MAX_PLAYERS; i++)
  459. {
  460. if(PlayerInfo[i][Admin] == 1) SendClientMessage(i,COLOR_WHITE,string);
  461. }
  462. GivePlayerWeapon(targetid,weaponid,ammo);
  463. format(string, sizeof(string), "{E5AC00}[INFO]:{FFFFFF} Administrator %s has given you weapon ID %i.(Ammo: %i)",GetName(playerid),weaponid,ammo);
  464. SCM(playerid,COLOR_WHITE,string);
  465. return 1;
  466. }
  467. CMD:repair(playerid, params[])
  468. {
  469. if(!PlayerInfo[playerid][Admin]) return SCM(playerid,COLOR_WHITE,"{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  470. if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, COLOR_WHITE, "{AF1C1C}[USAGE]: {FFFFFF}You must be in a vehicle to use this command.");
  471. RepairVehicle(GetPlayerVehicleID(playerid));
  472. return 1;
  473. }
  474. CMD:aduty(playerid, params[])
  475. {
  476. if(!PlayerInfo[playerid][Admin]) return SCM(playerid,COLOR_WHITE,"{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  477. if(PlayerInfo[playerid][AdminDuty] == 0)
  478. {
  479. new string[128];
  480. format(string, sizeof(string), "[INFO]: {FFFFFF}Administrator %s is now {37A63D}On-Duty{FFFFFF}.",GetName(playerid));
  481. SendClientMessageToAll(COLOR_GREEN, string);
  482. SetPlayerColor(playerid, COLOR_GREEN);
  483. PlayerInfo[playerid][AdminDuty] = 1;
  484. SetPlayerHealth(playerid, 9999);
  485. SetPlayerArmour(playerid, 9999);
  486. }
  487. else
  488. {
  489. new string[128];
  490. format(string, sizeof(string), "[INFO]: {FFFFFF}Administrator %s is now Off-Duty{FFFFFF}.",GetName(playerid));
  491. SendClientMessageToAll(COLOR_GREEN, string);
  492. SetPlayerColor(playerid, 0xDDDDDDC8);
  493. SetPlayerArmour(playerid, 100);
  494. SetPlayerHealth(playerid, 100);
  495. PlayerInfo[playerid][AdminDuty] = 0;
  496. }
  497. return 1;
  498. }
  499. CMD:givemoney(playerid, params[])
  500. {
  501. new targetid;
  502. new amount;
  503. new string[128];
  504. if(!PlayerInfo[playerid][Admin]) return SCM(playerid,COLOR_WHITE,"{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  505. if(sscanf(params,"ud", targetid, amount))return SendClientMessage(playerid, COLOR_WHITE, "{E5AC00}[USAGE]:{FFFFFF} /givemoney [playerid] [amount]");
  506. if(amount <= 0) return SendClientMessage(playerid, COLOR_WHITE, "{AF1C1C}(INFO):{FFFFFF} Amount should be above 0.");
  507. format(string, sizeof(string), "{E5AC00}(INFO):{FFFFFF}Administrator %s has added $%d to your wealth.",GetName(playerid), amount);
  508. SCM(targetid, COLOR_GREEN, string);
  509. format(string, sizeof(string), "{E5AC00}(INFO):{FFFFFF}You have added $%d to %s's Wealth.",amount, GetName(targetid));
  510. SCM(playerid, COLOR_GREEN, string);
  511. GivePlayerMoney(targetid, amount);
  512. SavePlayer(targetid);
  513. return 1;
  514. }
  515. CMD:sethealth(playerid, params[])
  516. {
  517. new targetid;
  518. new string[128];
  519. new health;
  520. if(!PlayerInfo[playerid][Admin]) return SCM(playerid,COLOR_WHITE,"{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  521. if(sscanf(params,"ud", targetid, health))return SCM(playerid, COLOR_WHITE, "{E5AC00}[USAGE]:{FFFFFF} /sethealth [playerid] [health]");
  522. if(health < 0) return SendClientMessage(playerid, COLOR_WHITE, "{AF1C1C}(INFO):{FFFFFF}Please enter a value above 0.");
  523. format(string, sizeof(string),"{37A63D}(INFO):{FFFFFF}Administrator %s has set your health to %d.",GetName(playerid), health);
  524. SendClientMessage(targetid, COLOR_GREEN, string);
  525. format(string, sizeof(string),"{37A63D}(INFO):{FFFFFF}You have set %s's health to %d.",GetName(targetid), health);
  526. SendClientMessage(playerid, COLOR_GREEN, string);
  527. SetPlayerHealth(targetid, health);
  528. SavePlayer(targetid);
  529. return 1;
  530. }
  531. CMD:setarmour(playerid, params[])
  532. {
  533. new targetid;
  534. new string[128];
  535. new armour;
  536. if(!PlayerInfo[playerid][Admin]) return SCM(playerid,COLOR_WHITE,"{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  537. if(sscanf(params,"ud", targetid, armour))return SCM(playerid, COLOR_WHITE, "{E5AC00}[USAGE]:{FFFFFF} /setarmour [playerid] [armour]");
  538. if(armour < 0) return SendClientMessage(playerid, COLOR_WHITE, "{AF1C1C}(INFO):{FFFFFF}Please enter a value above 0.");
  539. format(string, sizeof(string),"{37A63D}(INFO):{FFFFFF}Administrator %s has set your armour to %d.",GetName(playerid), armour);
  540. SendClientMessage(targetid, COLOR_GREEN, string);
  541. format(string, sizeof(string),"{37A63D}(INFO):{FFFFFF}You have set %s's armour to %d.",GetName(targetid), armour);
  542. SendClientMessage(playerid, COLOR_GREEN, string);
  543. SetPlayerArmour(targetid, armour);
  544. SavePlayer(targetid);
  545. return 1;
  546. }
  547. // Server Panel
  548. CMD:panel(playerid, params[])
  549. {
  550. if(!PlayerInfo[playerid][Admin]) return SCM(playerid,COLOR_WHITE,"{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  551. ServerPanel(playerid);
  552. SendClientMessage(playerid, COLOR_GREEN, "[INFO]: {FFFFFF}You are now editing the Server Settings.");
  553. return 1;
  554. }
  555. CMD:closepanel(playerid, params[])
  556. {
  557. if(!PlayerInfo[playerid][Admin]) return SCM(playerid,COLOR_WHITE,"{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  558. HidePanel(playerid);
  559. SendClientMessage(playerid, COLOR_GREEN, "[INFO]: {FFFFFF}You have closed the Server Panel.");
  560. return 1;
  561. }
  562. CMD:servername(playerid, params[])
  563. {
  564. if(!PlayerInfo[playerid][Admin]) return SCM(playerid,COLOR_WHITE,"{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  565. ShowPlayerDialog(playerid, DIALOG_SNAME, DIALOG_STYLE_INPUT, "Server Name", "Type the new Server's Name.", "Proceed", "");
  566. return 1;
  567. }
  568. CMD:servermap(playerid, params[])
  569. {
  570. if(!PlayerInfo[playerid][Admin]) return SCM(playerid,COLOR_WHITE,"{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  571. ShowPlayerDialog(playerid, DIALOG_SMAP, DIALOG_STYLE_INPUT, "Server Mapname", "Type the new Server's Map.", "Proceed", "");
  572. return 1;
  573. }
  574. CMD:servertime(playerid, params[])
  575. {
  576. if(!PlayerInfo[playerid][Admin]) return SCM(playerid,COLOR_WHITE,"{AF1C1C}[INFO]:{FFFFFF}You are not allowed to use this Command.");
  577. ShowPlayerDialog(playerid, DIALOG_STIME, DIALOG_STYLE_INPUT, "Server Time", "Type the new Time.", "Proceed", "");
  578. return 1;
  579. }
  580. // Server Panel
  581. // =======================[STOCKS]======================
  582. stock GetName(playerid)
  583. {
  584. new name[MAX_PLAYER_NAME];
  585. GetPlayerName(playerid,name,sizeof(name));
  586. for(new i = 0; i < MAX_PLAYER_NAME; i++)
  587. {
  588. if(name[i] == '_') name[i] = ' ';
  589. }
  590. return name;
  591. }
  592. stock SetMoney(playerid, money)
  593. {
  594. PlayerInfo[playerid][Money] = money;
  595. ResetPlayerMoney(playerid);
  596. GivePlayerMoney(playerid, money);
  597. return 1;
  598. }
  599. stock KickAll()
  600. {
  601. for(new i = 0; i < MAX_PLAYERS; i++)
  602. {
  603. if(IsPlayerConnected(i)) Kick(i);
  604. }
  605. return 1;
  606. }
  607. stock BanAll()
  608. {
  609. for(new i = 0; i < MAX_PLAYERS; i++)
  610. {
  611. if(IsPlayerConnected(i)) Ban(i);
  612. }
  613. return 1;
  614. }
  615. stock SavePlayer(playerid)
  616. {
  617. GetPlayerPos(playerid, PlayerInfo[playerid][pX], PlayerInfo[playerid][pY], PlayerInfo[playerid][pZ]);
  618. GetPlayerFacingAngle(playerid, PlayerInfo[playerid][Angle]);
  619. GetPlayerHealth(playerid,PlayerInfo[playerid][Health]);
  620. GetPlayerArmour(playerid,PlayerInfo[playerid][Armour]);
  621. // FILES
  622. new uFile[35];
  623. format(uFile, 35, USER_PATH, GetName(playerid));
  624. new INI:playerFile = INI_Open(uFile);
  625. INI_WriteInt(playerFile, "Administrator", PlayerInfo[playerid][Admin]);
  626. INI_WriteInt(playerFile, "AdminLevel", PlayerInfo[playerid][AdminLevel]);
  627. INI_WriteInt(playerFile, "AdminDuty", PlayerInfo[playerid][AdminDuty]);
  628. INI_WriteInt(playerFile, "Skin", GetPlayerSkin(playerid));
  629. INI_WriteInt(playerFile, "Money", GetPlayerMoney(playerid));
  630. INI_WriteFloat(playerFile, "Health", PlayerInfo[playerid][Health]);
  631. INI_WriteFloat(playerFile, "Armour",PlayerInfo[playerid][Armour]);
  632. INI_WriteInt(playerFile, "Muted", PlayerInfo[playerid][pMuted]);
  633. INI_WriteInt(playerFile, "Freezed", PlayerInfo[playerid][pFreezed]);
  634. INI_WriteInt(playerFile, "Jailed", PlayerInfo[playerid][pJailed]);
  635. INI_WriteInt(playerFile, "Kills", PlayerInfo[playerid][Kills]);
  636. INI_WriteInt(playerFile, "Deaths", PlayerInfo[playerid][Deaths]);
  637. INI_WriteFloat(playerFile,"X",PlayerInfo[playerid][pX]);
  638. INI_WriteFloat(playerFile,"Y",PlayerInfo[playerid][pY]);
  639. INI_WriteFloat(playerFile,"Z",PlayerInfo[playerid][pZ]);
  640. INI_WriteFloat(playerFile,"Angle",PlayerInfo[playerid][Angle]);
  641. INI_Close(playerFile);
  642. return 1;
  643. }
  644. forward LoadUserData(playerid, name[], value[]);
  645. public LoadUserData(playerid, name[], value[])
  646. {
  647. INI_Int("Money",PlayerInfo[playerid][Money]);
  648. INI_Int("Skin",PlayerInfo[playerid][Skin]);
  649. INI_Int("Administrator",PlayerInfo[playerid][Admin]);
  650. INI_Int("AdminLevel",PlayerInfo[playerid][AdminLevel]);
  651. INI_Int("AdminDuty",PlayerInfo[playerid][AdminDuty]);
  652. INI_Float("Health",PlayerInfo[playerid][Health]);
  653. INI_Int("Muted",PlayerInfo[playerid][pMuted]);
  654. INI_Int("Freezed",PlayerInfo[playerid][pFreezed]);
  655. INI_Int("Jailed",PlayerInfo[playerid][pJailed]);
  656. INI_Int("Kills",PlayerInfo[playerid][Kills]);
  657. INI_Int("Deaths",PlayerInfo[playerid][Deaths]);
  658. INI_Float("Armour",PlayerInfo[playerid][Armour]);
  659. INI_Float("X",PlayerInfo[playerid][pX]);
  660. INI_Float("Y",PlayerInfo[playerid][pY]);
  661. INI_Float("Z",PlayerInfo[playerid][pZ]);
  662. INI_Float("Angle",PlayerInfo[playerid][Angle]);
  663. return 1;
  664. }
  665. stock LoadAdminPanel()
  666. {
  667. txd1 = TextDrawCreate(555.000000, 142.812500, "usebox");
  668. TextDrawLetterSize(txd1, 0.000000, 15.919445);
  669. TextDrawTextSize(txd1, 98.000000, 0.000000);
  670. TextDrawAlignment(txd1, 1);
  671. TextDrawColor(txd1, 0);
  672. TextDrawUseBox(txd1, true);
  673. TextDrawBoxColor(txd1, 102);
  674. TextDrawSetShadow(txd1, 0);
  675. TextDrawSetOutline(txd1, 0);
  676. TextDrawFont(txd1, 0);
  677.  
  678. txd2 = TextDrawCreate(204.000000, 146.562500, "Walker's Administration");
  679. TextDrawLetterSize(txd2, 0.449999, 1.600000);
  680. TextDrawAlignment(txd2, 1);
  681. TextDrawColor(txd2, -1378294017);
  682. TextDrawSetShadow(txd2, 0);
  683. TextDrawSetOutline(txd2, 1);
  684. TextDrawBackgroundColor(txd2, 51);
  685. TextDrawFont(txd2, 2);
  686. TextDrawSetProportional(txd2, 1);
  687.  
  688. gmtext = TextDrawCreate(126.000000, 185.937500, "Server Name: ~y~");
  689. TextDrawLetterSize(gmtext, 0.449999, 1.600000);
  690. TextDrawAlignment(gmtext, 1);
  691. TextDrawColor(gmtext, -1);
  692. TextDrawSetShadow(gmtext, 0);
  693. TextDrawSetOutline(gmtext, 1);
  694. TextDrawBackgroundColor(gmtext, 51);
  695. TextDrawFont(gmtext, 1);
  696. TextDrawSetProportional(gmtext, 1);
  697.  
  698. gmmap = TextDrawCreate(126.000000, 208.250000, "Server Map: ~y~");
  699. TextDrawLetterSize(gmmap, 0.449999, 1.600000);
  700. TextDrawAlignment(gmmap, 1);
  701. TextDrawColor(gmmap, -1);
  702. TextDrawSetShadow(gmmap, 0);
  703. TextDrawSetOutline(gmmap, 1);
  704. TextDrawBackgroundColor(gmmap, 51);
  705. TextDrawFont(gmmap, 1);
  706. TextDrawSetProportional(gmmap, 1);
  707.  
  708. gmtime = TextDrawCreate(126.500000, 231.000000, "Server Time: ~y~");
  709. TextDrawLetterSize(gmtime, 0.449999, 1.600000);
  710. TextDrawAlignment(gmtime, 1);
  711. TextDrawColor(gmtime, -1);
  712. TextDrawSetShadow(gmtime, 0);
  713. TextDrawSetOutline(gmtime, 1);
  714. TextDrawBackgroundColor(gmtime, 51);
  715. TextDrawFont(gmtime, 1);
  716. TextDrawSetProportional(gmtime, 1);
  717.  
  718. close = TextDrawCreate(505.500000, 268.187500, "Close");
  719. TextDrawLetterSize(close, 0.449999, 1.600000);
  720. TextDrawAlignment(close, 1);
  721. TextDrawColor(close, -1523963137);
  722. TextDrawSetShadow(close, 0);
  723. TextDrawSetOutline(close, 1);
  724. TextDrawBackgroundColor(close, 51);
  725. TextDrawFont(close, 1);
  726. TextDrawSetProportional(close, 1);
  727. return 1;
  728. }
  729. stock ServerPanel(playerid)
  730. {
  731. TextDrawShowForPlayer(playerid, txd1);
  732. TextDrawShowForPlayer(playerid, txd2);
  733. TextDrawShowForPlayer(playerid, gmtext);
  734. TextDrawShowForPlayer(playerid, gmtime);
  735. TextDrawShowForPlayer(playerid, gmmap);
  736. TextDrawShowForPlayer(playerid, close);
  737. SelectTextDraw(playerid, 0xFFFFFFCC);
  738. return 1;
  739. }
  740. stock HidePanel(playerid)
  741. {
  742. TextDrawHideForPlayer(playerid, txd1);
  743. TextDrawHideForPlayer(playerid, txd2);
  744. TextDrawHideForPlayer(playerid, gmtext);
  745. TextDrawHideForPlayer(playerid, gmmap);
  746. TextDrawHideForPlayer(playerid, gmtime);
  747. TextDrawHideForPlayer(playerid, close);
  748. return 1;
  749. }
  750. forward ChangeTextdraws();
  751. public ChangeTextdraws()
  752. {
  753. new String[1000];
  754.  
  755. format(String, sizeof(String), "Server Name: ~y~%s", ServerName);
  756. TextDrawSetString(gmtext, String);
  757.  
  758. format(String, sizeof(String), "Server Map: ~y~%s", ServerMap);
  759. TextDrawSetString(gmmap, String);
  760.  
  761. GetPlayerTime(Servertime1, Servertime2, Servertime3);
  762. format(String, sizeof(String), "Server Time:~y~ %d:%d", Servertime1, Servertime2);
  763. TextDrawSetString(gmtime, String);
  764.  
  765. return 1;
  766. }
  767. forward KickPlayer(playerid);
  768. public KickPlayer(playerid)
  769. {
  770. Kick(playerid);
  771. }
  772. forward BanPlayer(playerid);
  773. public BanPlayer(playerid)
  774. {
  775. Ban(playerid);
  776. }
  777. forward LoadingObjects(playerid);
  778. public LoadingObjects(playerid)
  779. {
  780. TogglePlayerControllable(playerid, 1);
  781. }
  782. public OnPlayerDisconnect(playerid, reason)
  783. {
  784. SavePlayer(playerid);
  785. return 1;
  786. }
  787.  
  788. public OnPlayerSpawn(playerid)
  789. {
  790. // Position
  791. if(PlayerInfo[playerid][pX] == 0.0 && PlayerInfo[playerid][pY] == 0.0)
  792. {
  793. SetPlayerPos(playerid, -185.5223, 977.4722, 19.0640);
  794. }
  795. else
  796. {
  797. SetSpawnInfo(playerid, 0, PlayerInfo[playerid][Skin], PlayerInfo[playerid][pX], PlayerInfo[playerid][pY], PlayerInfo[playerid][pZ], PlayerInfo[playerid][Angle], 0, 0, 0, 0, 0, 0);
  798. }
  799. // Health & Armour
  800. if(PlayerInfo[playerid][Health] == 0.0 && PlayerInfo[playerid][Skin] == 0)
  801. {
  802. SetPlayerHealth(playerid, 100);
  803. SetPlayerSkin(playerid, 120);
  804. }
  805. SetPlayerArmour(playerid, PlayerInfo[playerid][Armour]);
  806. SetPlayerSkin(playerid, PlayerInfo[playerid][Skin]);
  807. SetMoney(playerid, PlayerInfo[playerid][Money]);
  808. TogglePlayerControllable(playerid, 1);
  809. SetTimerEx("Loading Objects", 2000, 0, "d", playerid);
  810. GameTextForPlayer(playerid, "~w~Loading Objects...", 2000, 3);
  811. return 1;
  812. }
  813.  
  814. public OnPlayerText(playerid, text[])
  815. {
  816. if(PlayerInfo[playerid][pMuted] == 1)
  817. {
  818. SendClientMessage(playerid, COLOR_WHITE, "[INFO]: {FFFFFF}You cannot speak as you're muted by an Administrator.");
  819. return 0;
  820. }
  821. return 1;
  822. }
  823. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  824. {
  825. return 1;
  826. }
  827.  
  828. public OnPlayerExitVehicle(playerid, vehicleid)
  829. {
  830. return 1;
  831. }
  832.  
  833. public OnPlayerStateChange(playerid, newstate, oldstate)
  834. {
  835. return 1;
  836. }
  837.  
  838. public OnPlayerDeath(playerid, killerid, reason)
  839. {
  840. SendDeathMessage(killerid, playerid, reason);
  841. if(killerid != INVALID_PLAYER_ID)
  842. {
  843. PlayerInfo[killerid][Kills]++;
  844. }
  845. PlayerInfo[playerid][Deaths]++;
  846. return 1;
  847. }
  848.  
  849. public OnRconCommand(cmd[])
  850. {
  851. return 1;
  852. }
  853.  
  854. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  855. {
  856. if(dialogid == DIALOG_SNAME)
  857. {
  858. new String[128];
  859. format(ServerName, sizeof(ServerName), "%s", inputtext);
  860. format(String, sizeof(String), "hostname %s", ServerName);
  861. SendRconCommand(String);
  862. }
  863. if(dialogid == DIALOG_SMAP)
  864. {
  865. new String[128];
  866. format(ServerMap, sizeof(ServerMap), "%s", inputtext);
  867. format(String, sizeof(String), "mapname %s", ServerMap);
  868. SendRconCommand(String);
  869. }
  870. if(dialogid == DIALOG_STIME)
  871. {
  872. Servertime1 = strval(inputtext);
  873. SetWorldTime(Servertime1);
  874. }
  875. if(dialogid == DIALOG_LOGIN)
  876. {
  877. SetSpawnInfo(playerid, 0, PlayerInfo[playerid][Skin], PlayerInfo[playerid][pX], PlayerInfo[playerid][pY], PlayerInfo[playerid][pZ], PlayerInfo[playerid][Angle], 0, 0, 0, 0, 0, 0);
  878. SpawnPlayer(playerid);
  879. SetCameraBehindPlayer(playerid);
  880. }
  881. return 1;
  882. }
  883.  
  884. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  885. {
  886. return 1;
  887. }
Advertisement
Add Comment
Please, Sign In to add comment