Guest User

Untitled

a guest
Jun 25th, 2018
91
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 27.34 KB | None | 0 0
  1. //------------------------------INCLUDES----------------------------------------
  2. #include <a_samp>
  3. #include <a_sampdb>
  4. //------------------------------DEFINES-----------------------------------------
  5. #define VERSION_SCRIPT "0.1.1"
  6. #define SCRIPT_NAME "SRP "VERSION_SCRIPT""
  7.  
  8. #define COLOR_GREEN 0x33AA33AA
  9. //------------------------------FORWARDS----------------------------------------
  10. forward UnTime();
  11. //------------------------------VARIABLES---------------------------------------
  12. new sadm[][] = {"Siriuse Roleplay new.pwn [DateBase]"};
  13. new auth[][] = {"Course!®"};
  14. new year[][] = {"15.02.2012"};
  15. new site[][] = {"http;//siriuse-rp.ru"};
  16.  
  17. new DB:BaseData;
  18. new Pclick;
  19. new TimerUnTime;
  20. new untime[MAX_PLAYERS][2];
  21. new PlayerLogin[MAX_PLAYERS];
  22. //--------------------------------ENUMS-----------------------------------------
  23. enum AS_info
  24. {
  25. Name[32],
  26. Password[32],
  27. Money,
  28. Score,
  29. Death,
  30. Admin,
  31. Bans,
  32. Mute,
  33. Jail,
  34. Skin,
  35. Sex,
  36. }
  37. new Account_System[MAX_PLAYERS][AS_info];
  38. //------------------------------MAIN--------------------------------------------
  39. main(){
  40. print("\n--------------------------------------");
  41. printf("Load: %s (%s)", sadm,year);
  42. printf("Site: %s",site);
  43. printf("Author: %s",auth);
  44. print("--------------------------------------\n");
  45. }
  46. //------------------------------GAMEMODE INIT-----------------------------------
  47. public OnGameModeInit()
  48. {
  49. if(!fexist("DataBase.db"))
  50. {
  51. BaseData = db_open("DataBase.db");
  52. db_query(BaseData, "CREATE TABLE account (name VARCHAR, pass VARCHAR, money INT, score INT, death INT, admin SMALLINT, ban TINYINT, mute INT, jail TINYINT, skin INT)");
  53. }
  54. else
  55. {
  56. BaseData = db_open("DataBase.db");
  57. }
  58. TimerUnTime = SetTimer("UnTime",1000,1);
  59. SetGameModeText(SCRIPT_NAME);
  60. return 1;
  61. }
  62. //------------------------------GAMEMODE EXIT-----------------------------------
  63. public OnGameModeExit()
  64. {
  65. KillTimer(TimerUnTime);
  66. return 1;
  67. }
  68. //------------------------------ÊÀÌÅÐÀ-----------------------------------------
  69. public OnPlayerRequestClass(playerid, classid)
  70. {
  71. if(IsPlayerConnected(playerid))
  72. {
  73. OnPlayerSpawn(playerid);
  74. return 0;
  75. }
  76. return 1;
  77. }
  78. //------------------------------רÒÎ ÏÐÈ ÑÏÀÂÍÅ---------------------------------
  79. public OnPlayerRequestSpawn(playerid)
  80. {
  81. return 1;
  82. }
  83. //------------------------------ÊÎÍÍÅÊÒ-----------------------------------------
  84. public OnPlayerConnect(playerid)
  85. {
  86. PlayerLogin[playerid] = 0;
  87. untime[playerid][0] = 0;
  88. untime[playerid][1] = 0;
  89. Account_System[playerid][Money] = 100;
  90. Account_System[playerid][Score] = 0;
  91. Account_System[playerid][Death] = 0;
  92. Account_System[playerid][Admin] = 0;
  93. Account_System[playerid][Bans] = 0;
  94. Account_System[playerid][Mute] = 0;
  95. Account_System[playerid][Jail] = 0;
  96. Account_System[playerid][Skin] = 0;
  97. //---
  98. new str[128];
  99. new DBResult:result;
  100. //---
  101. GetPlayerName(playerid, Account_System[playerid][Name], 32);
  102. format(str,128,"SELECT * FROM account WHERE name = '%s' LIMIT 1", Account_System[playerid][Name]);
  103. result = db_query(BaseData,str);
  104. if(db_num_rows(result))
  105. {
  106. new AS_inf[64];
  107. db_get_field(result, 1, Account_System[playerid][Password], 32);
  108. db_get_field(result, 2, AS_inf, 64);
  109. Account_System[playerid][Money] = strval(AS_inf);
  110. db_get_field(result, 3, AS_inf, 64);
  111. Account_System[playerid][Score] = strval(AS_inf);
  112. db_get_field(result, 4, AS_inf, 64);
  113. Account_System[playerid][Death] = strval(AS_inf);
  114. db_get_field(result, 5, AS_inf, 64);
  115. Account_System[playerid][Admin] = strval(AS_inf);
  116. db_get_field(result, 6, AS_inf, 64);
  117. Account_System[playerid][Bans] = strval(AS_inf);
  118. db_get_field(result, 7, AS_inf, 64);
  119. Account_System[playerid][Mute] = strval(AS_inf);
  120. db_get_field(result, 8, AS_inf, 64);
  121. Account_System[playerid][Jail] = strval(AS_inf);
  122. db_get_field(result, 9, AS_inf, 64);
  123. Account_System[playerid][Skin] = strval(AS_inf);
  124. if(Account_System[playerid][Bans] == 1)
  125. {
  126. SendClientMessage(playerid,0xF60000AA," Âû çàáàíåíû íà ýòîì ñåðâåðå!");
  127. Kick(playerid);
  128. }
  129. format(str,128,"Çäðàâñòâóéòå, %s!\nÂàøà ó÷åòíàÿ çàïèñü íàéäåíà â Áàçå Äàííûõ\nÂâåäèòå, ïîæàëóéñòà, âàø ïàðîëü:",Account_System[playerid][Name]);
  130. ShowPlayerDialog(playerid, 12320, 1, "Âõîä íà ñåðâåð", str, "Âîéòè", "Âûéòè");
  131. }
  132. else
  133. {
  134. format(str,128,"Çäðàâñòâóéòå, %s!\nÂàøà ó÷åòíàÿ çàïèñü íå íàéäåíà â Áàçå Äàííûõ\nÂâåäèòå, ïîæàëóéñòà, âàø ïàðîëü:",Account_System[playerid][Name]);
  135. ShowPlayerDialog(playerid, 12321, 1, "Ðåãèñòðàöèÿ ó÷åòíîé çàïèñè", str, "Âîéòè", "Âûéòè");
  136. }
  137. return 1;
  138. }
  139. //------------------------------Äèàëîãè-----------------------------------------
  140. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  141. {
  142. new str[256];
  143. if(dialogid == 12320)
  144. {
  145. if(!strlen(inputtext))
  146. {
  147. format(str,128,"Çäðàâñòâóéòå, %s!\nÂàøà ó÷åòíàÿ çàïèñü íàéäåíà â Áàçå Äàííûõ\nÂâåäèòå, ïîæàëóéñòà, âàø ïàðîëü:",Account_System[playerid][Name]);
  148. ShowPlayerDialog(playerid, 12320, 1, "Âõîä íà ñåðâåð", str, "Âîéòè", "Âûéòè");
  149. return 1;
  150. }
  151. if(strcmp(inputtext, Account_System[playerid][Password], false))
  152. {
  153. ShowPlayerDialog(playerid, 12320, 1, "Âõîä íà ñåðâåð", "Íåâåðíûé ïàðîëü!\nÏîæàëóéñòà, ââåäèòå âàø ïàðîëü:", "Âîéòè", "Âûéòè");
  154. }
  155. else
  156. {
  157. GivePlayerMoney(playerid, Account_System[playerid][Money]);
  158. SetPlayerScore(playerid, Account_System[playerid][Score]);
  159. ShowPlayerDialog(playerid, 12322, 0, "Âõîä íà ñåðâåð", "Âû óñïåøíî âîøëè â ñâîþ ó÷åòíóþ çàïèñü!", "Çàêðûòü", "Çàêðûòü");
  160. SpawnPlayer(playerid);
  161. PlayerLogin[playerid] = 1;
  162. if(Account_System[playerid][Jail] > 0)
  163. {
  164. format(str,128, "Âàì îñòàëîñü ñèäåòü â òþðüìå %d ñåêóíä!",Account_System[playerid][Jail]);
  165. SendClientMessage(playerid, 0xD7E4C4AA, str);
  166. SetPlayerPos(playerid, 264.6288,77.5742,1001.0391);
  167. SetPlayerInterior(playerid, 6);
  168. }
  169. }
  170. return 1;
  171. }
  172. if(dialogid == 12321)
  173. {
  174. if(!response) return Kick(playerid);
  175. new escape_pass[64], escape_name[MAX_PLAYER_NAME];
  176. new string[256];
  177. db_escape_string(inputtext, escape_pass);
  178. db_escape_string(Account_System[playerid][Name], escape_name);
  179. GetPlayerName(playerid, escape_name, 32);
  180. format(str,256,"INSERT INTO account ( name, pass, money, score, death, admin, ban, mute, jail, skin) VALUES ( '%s', '%s', 100, 0, 0, 0, 0, 0, 0, 0)", escape_name, escape_pass);
  181. db_query(BaseData,str);
  182. Account_System[playerid][Money] = 100;
  183. Account_System[playerid][Score] = 0;
  184. Account_System[playerid][Death] = 0;
  185. Account_System[playerid][Admin] = 1;
  186. Account_System[playerid][Bans] = 0;
  187. Account_System[playerid][Mute] = 0;
  188. Account_System[playerid][Jail] = 0;
  189. Account_System[playerid][Skin] = 0;
  190. GivePlayerMoney(playerid, Account_System[playerid][Money]);
  191. SetPlayerScore(playerid, Account_System[playerid][Score]);
  192. PlayerLogin[playerid] = 1;
  193. SpawnPlayer(playerid);
  194. ShowPlayerDialog(playerid, 12322, 0, "Ðåãèñòðàöèÿ ó÷åòíîé çàïèñè", "Âû óñïåøíî çàðåãèñòðèðîâàëèñü!", "Çàêðûòü", "Çàêðûòü");
  195. new sendername[MAX_PLAYER_NAME];
  196. GetPlayerName(playerid, sendername, sizeof(sendername));
  197. format(string, sizeof(string), "*Ìèãðàöèîííàÿ ñëóæáà: %s ïðèáûë â øòàò", sendername);
  198. SendClientMessageToAll(COLOR_GREEN, string);
  199. SetCameraBehindPlayer(playerid);// âîçâðàùàåì êàìåðó ê èãðîêó
  200. SetPlayerPos(playerid,793.8561,-1332.2249,-0.5078);
  201. SpawnPlayer(playerid);
  202. return 1;
  203. }
  204. new pname[MAX_PLAYER_NAME], admName[MAX_PLAYER_NAME];
  205. if(dialogid == 12323)
  206. {
  207. if(response)
  208. {
  209. new money = GetPlayerMoney(Pclick),score = GetPlayerScore(Pclick),skin = GetPlayerSkin(Pclick),death = Account_System[Pclick][Death],admin = Account_System[Pclick][Admin];
  210. format(str,256,"Äåíåã:[%d] Óáèéñòâà:[%d] Ñêèí:[%d]\nÑìåðòåé:[%d] Óðîâåíü Àäìèíêè:[%d]",money,score,skin,death,admin);
  211. ShowPlayerDialog(playerid, 12322, 0, "Ñòàòèñòèêà ó÷åòíîé çàïèñè", str, "Çàêðûòü", "Çàêðûòü");
  212. }
  213. }
  214. if(dialogid == 12324)
  215. {
  216. if(response)
  217. {
  218. new Float:pX, Float:pY, Float:pZ, car = GetPlayerVehicleID(playerid);
  219. if(listitem == 0)
  220. {
  221. GetPlayerPos(Pclick, pX, pY, pZ);
  222. SetPlayerPos(playerid, pX, pY+1, pZ);
  223. SetVehiclePos(car, pX, pY+1, pZ);
  224. PutPlayerInVehicle(playerid, car, 0);
  225. }
  226. if(listitem == 1)
  227. {
  228. GetPlayerPos(playerid, pX, pY, pZ);
  229. SetPlayerPos(Pclick, pX, pY+1, pZ);
  230. SetVehiclePos(car, pX, pY+1, pZ);
  231. PutPlayerInVehicle(Pclick, car, 0);
  232. }
  233. if(listitem == 2)
  234. {
  235. SetPlayerHealth(Pclick,100);
  236. }
  237. if(listitem == 3)
  238. {
  239. SetPlayerArmour(Pclick,100);
  240. }
  241. if(listitem == 4)
  242. {
  243. GetPlayerName(Pclick,pname,MAX_PLAYER_NAME);
  244. format(str,256,"Ââåäèòå ïðè÷èíó, äëÿ áàíà èãðîêà:\nÈãðîê: %s ID: [%d]",pname,Pclick);
  245. ShowPlayerDialog(playerid,12326,DIALOG_STYLE_INPUT,"Ïðè÷èíà áàíà:",str,"Áàí","Îòìåíà");
  246. }
  247. if(listitem == 5)
  248. {
  249. GetPlayerName(Pclick,pname,sizeof(pname));
  250. format(str,256,"Ââåäèòå ïðè÷èíó, äëÿ êèêà èãðîêà:\nÈãðîê: %s ID: [%d]",pname,Pclick);
  251. ShowPlayerDialog(playerid,12327,DIALOG_STYLE_INPUT,"Ïðè÷èíà êèêà:",str,"Êèê","Îòìåíà");
  252. }
  253. if(listitem == 6)
  254. {
  255. GetPlayerName(Pclick,pname,sizeof(pname)); GetPlayerName(playerid,admName,sizeof(admName));
  256. format(str, 256, " Èãðîê %s áûë çàìîðîæåí Àäìèíèñòðàòîðîì: %s", pname, admName);
  257. SendClientMessageToAll(0xFFFFFFFF, str);
  258. TogglePlayerControllable(Pclick,0);
  259. }
  260. if(listitem == 7)
  261. {
  262. GetPlayerName(Pclick,pname,sizeof(pname)); GetPlayerName(playerid,admName,sizeof(admName));
  263. format(str, 256, " Èãðîê %s áûë ðàçìîðîæåí Àäìèíèñòðàòîðîì: %s", pname, admName);
  264. SendClientMessageToAll(0xFFFFFFFF, str);
  265. TogglePlayerControllable(Pclick,1);
  266. }
  267. if(listitem == 8)
  268. {
  269. GetPlayerName(Pclick,pname,sizeof(pname)); GetPlayerName(playerid,admName,sizeof(admName));
  270. format(str, 256, " Èãðîê %s áûë óáèò àäìèíèñòðàòîðîì: %s", pname, admName);
  271. SendClientMessageToAll(0xFFFFFFFF, str);
  272. SetPlayerHealth(Pclick,0);
  273. }
  274. if(listitem == 9)
  275. {
  276. GetPlayerName(Pclick,pname,sizeof(pname));
  277. format(str,256,"Ââåäèòå ÷èñëî, íà ñêîëüêî ñåêóíä çàòêíóòü èãðîêà:\nÈãðîê: %s ID: [%d]",pname,Pclick);
  278. ShowPlayerDialog(playerid,12328,DIALOG_STYLE_INPUT,"Ñêîëüêî ñåêóíä?",str,"Çàòêíóòü","Îòìåíà");
  279. }
  280. if(listitem == 10)
  281. {
  282. new money = GetPlayerMoney(Pclick),score = GetPlayerScore(Pclick),skin = GetPlayerSkin(Pclick),death = Account_System[Pclick][Death],admin = Account_System[Pclick][Admin];
  283. format(str,256,"Äåíåã:[%d] Óáèéñòâà:[%d] Ñêèí:[%d]\nÑìåðòåé:[%d] Óðîâåíü Àäìèíêè:[%d]",money,score,skin,death,admin);
  284. ShowPlayerDialog(playerid, 12322, 0, "Ñòàòèñòèêà ó÷åòíîé çàïèñè", str, "Çàêðûòü", "Çàêðûòü");
  285. }
  286. if(listitem == 11)
  287. {
  288. GetPlayerName(Pclick,pname,sizeof(pname));
  289. format(str,256,"Ââåäèòå èä ñêèíà, íà êîòîðûé âû õîòèòå ñìåíèòü:\nÈãðîê: %s ID: [%d]",pname,Pclick);
  290. ShowPlayerDialog(playerid,12329,DIALOG_STYLE_INPUT,"Íà êàêîé ñêèí ñìåíèòü?",str,"Ñìåíèòü","Îòìåíà");
  291. }
  292. if(listitem == 12)
  293. {
  294. GetPlayerName(Pclick,pname,sizeof(pname));
  295. new ip[126];
  296. GetPlayerIp(Pclick, ip, sizeof(ip));
  297. format(str,256," Èãðîê: %s[ID:%d] IP: %s",pname,Pclick,ip);
  298. SendClientMessage(playerid,0xFFFFFFFF,str);
  299. }
  300. if(listitem == 13)
  301. {
  302. GetPlayerName(Pclick,pname,sizeof(pname));
  303. new Float:x, Float:y, Float:z, Float:hp;
  304. GetPlayerHealth(Pclick,hp);
  305. SetPlayerHealth(Pclick,hp-5);
  306. GetPlayerPos(Pclick,x,y,z);
  307. SetPlayerPos(Pclick,x,y,z+5);
  308. format(str,256,"Èãðîê %s[%d] áûë ñëàïíóò Âàìè.",pname,Pclick);
  309. SendClientMessage(playerid,0xFFFFFFFF,str);
  310. }
  311. if(listitem == 14)
  312. {
  313. GetPlayerName(Pclick,pname,sizeof(pname));
  314. format(str,256,"Ââåäèòå âðåìÿ, íà ñêîëüêî ïîñàäèòü èãðîêà â òþðüìó:\nÈãðîê: %s ID: [%d]",pname,Pclick);
  315. ShowPlayerDialog(playerid,12330,DIALOG_STYLE_INPUT,"Âðåìÿ",str,"Ïîñàäèòü","Îòìåíà");
  316. }
  317. }
  318. }
  319. if(dialogid == 12325)
  320. {
  321. if(response)
  322. {
  323. new Float:pX, Float:pY, Float:pZ, car = GetPlayerVehicleID(playerid);
  324. if(listitem == 0)
  325. {
  326. GetPlayerPos(Pclick, pX, pY, pZ);
  327. SetPlayerPos(playerid, pX, pY+1, pZ);
  328. SetVehiclePos(car, pX, pY+1, pZ);
  329. PutPlayerInVehicle(playerid, car, 0);
  330. }
  331. if(listitem == 1)
  332. {
  333. GetPlayerPos(playerid, pX, pY, pZ);
  334. SetPlayerPos(Pclick, pX, pY+1, pZ);
  335. SetVehiclePos(car, pX, pY+1, pZ);
  336. PutPlayerInVehicle(Pclick, car, 0);
  337. }
  338. if(listitem == 2)
  339. {
  340. SetPlayerHealth(Pclick,100);
  341. }
  342. if(listitem == 3)
  343. {
  344. SetPlayerArmour(Pclick,100);
  345. }
  346. if(listitem == 4)
  347. {
  348. GetPlayerName(Pclick,pname,MAX_PLAYER_NAME);
  349. format(str,256,"Ââåäèòå ïðè÷èíó, äëÿ áàíà èãðîêà:\nÈãðîê: %s ID: [%d]",pname,Pclick);
  350. ShowPlayerDialog(playerid,12326,DIALOG_STYLE_INPUT,"Ïðè÷èíà áàíà:",str,"Áàí","Îòìåíà");
  351. }
  352. if(listitem == 5)
  353. {
  354. GetPlayerName(Pclick,pname,sizeof(pname));
  355. format(str,256,"Ââåäèòå ïðè÷èíó, äëÿ êèêà èãðîêà:\nÈãðîê: %s ID: [%d]",pname,Pclick);
  356. ShowPlayerDialog(playerid,12327,DIALOG_STYLE_INPUT,"Ïðè÷èíà êèêà:",str,"Êèê","Îòìåíà");
  357. }
  358. if(listitem == 6)
  359. {
  360. GetPlayerName(Pclick,pname,sizeof(pname)); GetPlayerName(playerid,admName,sizeof(admName));
  361. format(str, 256, " Èãðîê %s áûë çàìîðîæåí Àäìèíèñòðàòîðîì: %s", pname, admName);
  362. SendClientMessageToAll(0xFFFFFFFF, str);
  363. TogglePlayerControllable(Pclick,0);
  364. }
  365. if(listitem == 7)
  366. {
  367. GetPlayerName(Pclick,pname,sizeof(pname)); GetPlayerName(playerid,admName,sizeof(admName));
  368. format(str, 256, " Èãðîê %s áûë ðàçìîðîæåí Àäìèíèñòðàòîðîì: %s", pname, admName);
  369. SendClientMessageToAll(0xFFFFFFFF, str);
  370. TogglePlayerControllable(Pclick,1);
  371. }
  372. if(listitem == 8)
  373. {
  374. GetPlayerName(Pclick,pname,sizeof(pname)); GetPlayerName(playerid,admName,sizeof(admName));
  375. format(str, 256, " Èãðîê %s áûë óáèò àäìèíèñòðàòîðîì: %s", pname, admName);
  376. SendClientMessageToAll(0xFFFFFFFF, str);
  377. SetPlayerHealth(Pclick,0);
  378. }
  379. if(listitem == 9)
  380. {
  381. GetPlayerName(Pclick,pname,sizeof(pname));
  382. format(str,256,"Ââåäèòå ÷èñëî, íà ñêîëüêî ñåêóíä çàòêíóòü èãðîêà:\nÈãðîê: %s ID: [%d]",pname,Pclick);
  383. ShowPlayerDialog(playerid,12328,DIALOG_STYLE_INPUT,"Ñêîëüêî ñåêóíä?",str,"Çàòêíóòü","Îòìåíà");
  384. }
  385. if(listitem == 10)
  386. {
  387. new money = GetPlayerMoney(Pclick),score = GetPlayerScore(Pclick),skin = GetPlayerSkin(Pclick),death = Account_System[Pclick][Death],admin = Account_System[Pclick][Admin];
  388. format(str,256,"Äåíåã:[%d] Óáèéñòâà:[%d] Ñêèí:[%d]\nÑìåðòåé:[%d] Óðîâåíü Àäìèíêè:[%d]",money,score,skin,death,admin);
  389. ShowPlayerDialog(playerid, 12322, 0, "Ñòàòèñòèêà ó÷åòíîé çàïèñè", str, "Çàêðûòü", "Çàêðûòü");
  390. }
  391. if(listitem == 11)
  392. {
  393. GetPlayerName(Pclick,pname,sizeof(pname));
  394. format(str,256,"Ââåäèòå èä ñêèíà, íà êîòîðûé âû õîòèòå ñìåíèòü:\nÈãðîê: %s ID: [%d]",pname,Pclick);
  395. ShowPlayerDialog(playerid,12329,DIALOG_STYLE_INPUT,"Íà êàêîé ñêèí ñìåíèòü?",str,"Ñìåíèòü","Îòìåíà");
  396. }
  397. if(listitem == 12)
  398. {
  399. GetPlayerName(Pclick,pname,sizeof(pname));
  400. new ip[126];
  401. GetPlayerIp(Pclick, ip, sizeof(ip));
  402. format(str,256," Èãðîê: %s[ID:%d] IP: %s",pname,Pclick,ip);
  403. SendClientMessage(playerid,0xFFFFFFFF,str);
  404. }
  405. if(listitem == 13)
  406. {
  407. GetPlayerName(Pclick,pname,sizeof(pname));
  408. new Float:x, Float:y, Float:z, Float:hp;
  409. GetPlayerHealth(Pclick,hp);
  410. SetPlayerHealth(Pclick,hp-5);
  411. GetPlayerPos(Pclick,x,y,z);
  412. SetPlayerPos(Pclick,x,y,z+5);
  413. format(str,256,"Èãðîê %s[%d] áûë ñëàïíóò Âàìè.",pname,Pclick);
  414. SendClientMessage(playerid,0xFFFFFFFF,str);
  415. }
  416. if(listitem == 14)
  417. {
  418. GetPlayerName(Pclick,pname,sizeof(pname));
  419. format(str,256,"Ââåäèòå âðåìÿ, íà ñêîëüêî ïîñàäèòü èãðîêà â òþðüìó:\nÈãðîê: %s ID: [%d]",pname,Pclick);
  420. ShowPlayerDialog(playerid,12330,DIALOG_STYLE_INPUT,"Âðåìÿ",str,"Ïîñàäèòü","Îòìåíà");
  421. }
  422. if(listitem == 15)
  423. {
  424. GetPlayerName(Pclick,pname,sizeof(pname));
  425. format(str,256,"Ââåäèòå óðîâåíü, êîòîðûé õîòèòå äàòü:\nÈãðîê: %s ID: [%d]",pname,Pclick);
  426. ShowPlayerDialog(playerid,12331,DIALOG_STYLE_INPUT,"Óðîâåíü",str,"Äàòü","Îòìåíà");
  427. }
  428. }
  429. }
  430. if(dialogid == 12326)
  431. {
  432. if(response)
  433. {
  434. GetPlayerName(Pclick,pname,sizeof(pname)); GetPlayerName(playerid,admName,sizeof(admName));
  435. format(str, 256, " Èãðîê %s áûë çàáàíåí Àäìèíèñòðàòîðîì: %s. Ïðè÷èíà: %s", pname, admName, inputtext);
  436. SendClientMessageToAll(0xFFFFFFFF, str);
  437. Account_System[Pclick][Bans] = 1;
  438. Kick(Pclick);
  439. }
  440. return 1;
  441. }
  442. if(dialogid == 12327)
  443. {
  444. if(response)
  445. {
  446. GetPlayerName(Pclick,pname,sizeof(pname)); GetPlayerName(playerid,admName,sizeof(admName));
  447. format(str, 256, " Èãðîê %s áûë êèêíóò Àäìèíèñòðàòîðîì: %s. Ïðè÷èíà: %s", pname, admName, inputtext);
  448. SendClientMessageToAll(0xFFFFFFFF, str);
  449. Kick(Pclick);
  450. }
  451. return 1;
  452. }
  453. if(dialogid == 12328)
  454. {
  455. if(response)
  456. {
  457. if(strval(inputtext) < 0 || strval(inputtext) > 1200) { SendClientMessage(playerid, 0xFFFFFFFF, " Âðåìÿ çàòûêà íå äîëæíî áûòü íèæå 0 èëè âûøå 1200ñåê."); return 1; }
  458. GetPlayerName(Pclick,pname,sizeof(pname)); GetPlayerName(playerid,admName,sizeof(admName));
  459. format(str, 256, " Èãðîê %s áûë çàòêíóò àäìèíèñòðàòîðîì: %s íà %s ñåêóíä.", pname, admName, inputtext);
  460. SendClientMessageToAll(0xFFFFFFFF, str);
  461. Account_System[Pclick][Mute] = strval(inputtext);
  462. untime[Pclick][0] = 1;
  463. }
  464. return 1;
  465. }
  466. if(dialogid == 12329)
  467. {
  468. if(response)
  469. {
  470. if(strval(inputtext) < 0 || strval(inputtext) > 299) { SendClientMessage(playerid, 0xFFFFFFFF, " Èä ñêèíà äîëæåí áûòü îò 0 äî 299!"); return 1; }
  471. GetPlayerName(Pclick,pname,sizeof(pname)); GetPlayerName(playerid,admName,sizeof(admName));
  472. format(str, 256, " Èãðîêó %s áûë ñìåí¸í ñêèí Àäìèíèñòðàòîðîì %s íà %s", pname, admName, inputtext);
  473. SendClientMessageToAll(0xFFFFFFFF, str);
  474. SetPlayerSkin(Pclick,strval(inputtext));
  475. }
  476. return 1;
  477. }
  478. if(dialogid == 12330)
  479. {
  480. if(response)
  481. {
  482. if(strval(inputtext) < 0 || strval(inputtext) > 1800) { SendClientMessage(playerid, 0xFFFFFFFF, " Âðåìÿ òþðüìû íå äîëæíî áûòü íèæå 0 èëè âûøå 1800ñåê."); return 1; }
  483. GetPlayerName(Pclick,pname,sizeof(pname)); GetPlayerName(playerid,admName,sizeof(admName));
  484. format(str, 256, " Èãðîê %s áûë ïîñàæåí â òþðüìó àäìèíèñòðàòîðîì: %s íà %s ñåêóíä.", pname, admName, inputtext);
  485. SendClientMessageToAll(0xFFFFFFFF, str);
  486. Account_System[Pclick][Jail] = strval(inputtext);
  487. SetPlayerPos(Pclick, 264.6288,77.5742,1001.0391);
  488. SetPlayerInterior(Pclick, 6);
  489. ResetPlayerWeapons(Pclick);
  490. untime[Pclick][1] = 1;
  491. }
  492. return 1;
  493. }
  494. if(dialogid == 12331)
  495. {
  496. if(response)
  497. {
  498. if(strval(inputtext) < 0 || strval(inputtext) > 2) { SendClientMessage(playerid, 0xFFFFFFFF, " Óðîâåíü àäìèíêè íå äîëæåí áûòü íèæå 0 èëè âûøå 2"); return 1; }
  499. GetPlayerName(Pclick,pname,sizeof(pname)); GetPlayerName(playerid,admName,sizeof(admName));
  500. format(str, 256, " Àäìèíèñòðàòîð %s âûäàë èãðîêó %s %s óðîâåíü àäìèíêè", admName, pname, inputtext);
  501. SendClientMessageToAll(0xFFFFFFFF, str);
  502. Account_System[Pclick][Admin] = strval(inputtext);
  503. }
  504. return 1;
  505. }
  506. return 1;
  507. }
  508. //------------------------------ÄÈÑÑÊÎÍÅÊÒ--------------------------------------
  509. public OnPlayerDisconnect(playerid, reason)
  510. {
  511. if(PlayerLogin[playerid] == 1)
  512. {
  513. new str[128], pmoney, pscore, pskin;
  514. pmoney = GetPlayerMoney(playerid);
  515. pscore = GetPlayerScore(playerid);
  516. pskin = GetPlayerSkin(playerid);
  517. GetPlayerName(playerid, Account_System[playerid][Name], 32);
  518. format(str,128,"UPDATE account SET money=%d, score=%d, death=%d, admin=%d, ban=%d, mute=%d, jail=%d, skin=%d WHERE name='%s'", pmoney, pscore, Account_System[playerid][Death], Account_System[playerid][Admin], Account_System[playerid][Bans], Account_System[playerid][Mute], Account_System[playerid][Jail], pskin);
  519. db_query(BaseData,str);
  520. }
  521. return 1;
  522. }
  523. //------------------------------ÑÏÀÂÍ-------------------------------------------
  524. public OnPlayerSpawn(playerid)
  525. {
  526. new str[128];
  527. if(Account_System[playerid][Jail] != 0)
  528. {
  529. format(str,128, "Âàì îñòàëîñü ñèäåòü â òþðüìå %d ñåêóíä!",Account_System[playerid][Jail]);
  530. SendClientMessage(playerid, 0xD7E4C4AA, str);
  531. SetPlayerPos(playerid, 264.6288,77.5742,1001.0391);
  532. SetPlayerInterior(playerid, 6);
  533. }
  534. SetPlayerSkin(playerid, Account_System[playerid][Skin]);
  535. return 1;
  536. }
  537. //------------------------------ÑÌÅÐÒÜ------------------------------------------
  538. public OnPlayerDeath(playerid, killerid, reason)
  539. {
  540. Account_System[playerid][Death] += 1;
  541. Account_System[killerid][Score] += 1;
  542. SetPlayerScore(killerid, Account_System[killerid][Score]);
  543. return 1;
  544. }
  545. //------------------------------ÒÀ×ÊÀ ÑÏÀÂÍ-------------------------------------
  546. public OnVehicleSpawn(vehicleid)
  547. {
  548. return 1;
  549. }
  550. //------------------------------ÑÌÅÐÒÜ ÒÀ×ÊÅ-----------------------------------
  551. public OnVehicleDeath(vehicleid, killerid)
  552. {
  553. return 1;
  554. }
  555. //------------------------------ÒÅÊÑÒ-------------------------------------------
  556. public OnPlayerText(playerid,text[])
  557. {
  558. if(Account_System[playerid][Mute] > 0)return SendClientMessage(playerid, 0xD7E4C4AA, " Âû íå ìîæåòå ãîâîðèòü, Âàñ çàòêíóëè");
  559. new playername[24], playertext[256],ye,mo,da,ho,mi,se;
  560. GetPlayerName(playerid, playername, 24);
  561. getdate(ye,mo,da);
  562. gettime(ho,mi,se);
  563. format(playertext, sizeof(playertext), "[%d.%d.%d|%d:%d:%d]: %s [%d]: %s\r\n",ye,mo,da,ho,mi,se,playername, playerid, text[0]);
  564. SendClientMessageToAll(GetPlayerColor(playerid), playertext);
  565. return 0;
  566. }
  567. //------------------------------ÊÎÌÌÀÍÄ ÒÅÊÑÒ-----------------------------------
  568. public OnPlayerCommandText(playerid, cmdtext[])
  569. {
  570. return 0;
  571. }
  572.  
  573. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  574. {
  575. return 1;
  576. }
  577.  
  578. public OnPlayerExitVehicle(playerid, vehicleid)
  579. {
  580. return 1;
  581. }
  582.  
  583. public OnPlayerStateChange(playerid, newstate, oldstate)
  584. {
  585. return 1;
  586. }
  587.  
  588. public OnPlayerEnterCheckpoint(playerid)
  589. {
  590. return 1;
  591. }
  592.  
  593. public OnPlayerLeaveCheckpoint(playerid)
  594. {
  595. return 1;
  596. }
  597.  
  598. public OnPlayerEnterRaceCheckpoint(playerid)
  599. {
  600. return 1;
  601. }
  602.  
  603. public OnPlayerLeaveRaceCheckpoint(playerid)
  604. {
  605. return 1;
  606. }
  607.  
  608. public OnRconCommand(cmd[])
  609. {
  610. return 1;
  611. }
  612.  
  613. public OnObjectMoved(objectid)
  614. {
  615. return 1;
  616. }
  617.  
  618. public OnPlayerObjectMoved(playerid, objectid)
  619. {
  620. return 1;
  621. }
  622.  
  623. public OnPlayerPickUpPickup(playerid, pickupid)
  624. {
  625. return 1;
  626. }
  627.  
  628. public OnPlayerSelectedMenuRow(playerid, row)
  629. {
  630. return 1;
  631. }
  632.  
  633. public OnPlayerExitedMenu(playerid)
  634. {
  635. return 1;
  636. }
  637.  
  638. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  639. {
  640. Pclick = clickedplayerid;
  641. switch(Account_System[playerid][Admin])
  642. {
  643. case 0:ShowPlayerDialog(playerid,12323,DIALOG_STYLE_LIST,"Îïöèè","Ïðîñìîòðåòü ñòàòèñòèêó","Âûáðàòü","Îòìåíà");
  644. case 1:ShowPlayerDialog(playerid,12324,DIALOG_STYLE_LIST,"Îïöèè","Òï ê íåìó\nÒï åãî ê ñåáå\nÏîïîëíèòü õï\nÏîïîëíèòü áðîíü\nÁàí\nÊèê\nÇàìîðîçèòü\nÐàçìîðîçèòü\nÓáèòü\nÇàòêíóòü\nÏðîñìîòðåòü ñòàòèñòèêó\nÑìåíèòü ñêèí\nÓçíàòü IP\nÑëàïíóòü\nÏîñàäèòü â òþðüìó","Âûáðàòü","Îòìåíà");
  645. case 2:ShowPlayerDialog(playerid,12325,DIALOG_STYLE_LIST,"Îïöèè","Òï ê íåìó\nÒï åãî ê ñåáå\nÏîïîëíèòü õï\nÏîïîëíèòü áðîíü\nÁàí\nÊèê\nÇàìîðîçèòü\nÐàçìîðîçèòü\nÓáèòü\nÇàòêíóòü\nÏðîñìîòðåòü ñòàòèñòèêó\nÑìåíèòü ñêèí\nÓçíàòü IP\nÑëàïíóòü\nÏîñàäèòü â òþðüìó\nÄàòü àäìèíêó","Âûáðàòü","Îòìåíà");
  646. }
  647. return 1;
  648. }
  649.  
  650. stock db_escape_string(const string[], escaped_string[], length = sizeof(escaped_string)) // by Ym[0]n
  651. {
  652. for(new i, k = strlen(string); i != k; i++)
  653. {
  654. switch(string[i])
  655. {
  656. case '\'':strcat(escaped_string, "\\'", length);
  657. case '"':strcat(escaped_string, "\\\"", length);
  658. case '\\':strcat(escaped_string, "\\\\", length);
  659. default:
  660. {
  661. new symbol[2]; symbol[0] = string[i]; symbol[1] = '\0';
  662. strcat(escaped_string, symbol, length);
  663. }
  664. }
  665. }
  666. }
  667.  
  668. public UnTime()
  669. {
  670. for(new i; i<MAX_PLAYERS; i++)
  671. {
  672. if(PlayerLogin[i] == 1)
  673. {
  674. // çàòûê
  675. if(Account_System[i][Mute] != 0)
  676. {
  677. Account_System[i][Mute]--;
  678. }
  679. else
  680. {
  681. if(untime[i][0] == 1)
  682. {
  683. SendClientMessage(i, 0xFFFFFFFF, " Âû ðàçîòêíóòû!");
  684. untime[i][0] = 0;
  685. }
  686. }
  687. // òþðüìà
  688. if(Account_System[i][Jail] != 0)
  689. {
  690. Account_System[i][Jail]--;
  691. }
  692. else
  693. {
  694. if(untime[i][1] == 1)
  695. {
  696. SendClientMessage(i, 0xFFFFFFFF, " Âû îñâîáîæäåíû!");
  697. untime[i][1] = 0;
  698. SpawnPlayer(i);
  699. SetPlayerInterior(Pclick, 0);
  700. }
  701. }
  702. }
  703. }
  704. return 1;
  705. }
Add Comment
Please, Sign In to add comment