Advertisement
Guest User

Untitled

a guest
Nov 20th, 2017
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 13.94 KB | None | 0 0
  1. main(){}
  2. #include <a_samp>
  3. #include <a_mysql>//Ñàìà áèáëèîòåêà ìóñêîë
  4. #include <sscanf2>
  5. #include <streamer>
  6. #include <dc_cmd>
  7. #include <Objectgame>
  8.  
  9. #define mysql_host "localhost"//host
  10. #define mysql_user "root"//user
  11. #define mysql_db "mini"//database
  12. #define mysql_pass ""//password
  13. #define Baza "Accountss"//Íàçâàíèå áàçû
  14.  
  15. new MYSQL_ARG;//Àðãóìåíò ïîäêëþ÷åíèÿ
  16. new asd[256];//ß÷åéêà äëÿ ðàáîòû ñ ìóñêóëîì
  17. new Float:spdm[10][4] = {
  18. {1782.0048,1797.1227,15.4243,190.8296}, // spawndm1
  19. {1703.0983,1802.2744,15.5417,190.8296}, // spawndm2
  20. {1725.6852,1823.3074,15.6175,190.8296}, // spawndm3
  21. {1845.4434,1641.7676,15.3433,190.8296}, // spawndm4
  22. {1883.1743,1684.2142,15.4000,190.8296}, // spawndm5
  23. {1876.2991,1730.4795,15.4925,190.8296}, // spawndm6
  24. {1836.6703,1753.7504,15.2948,190.8296}, // spawndm7
  25. {1733.4017,1774.3527,15.3263,190.8296}, // spawndm8
  26. {1705.5745,1663.7019,15.2794,190.8296}, // spawndm9
  27. {1753.2860,1653.3665,15.5636,190.8296} // spawndm10
  28. };
  29.  
  30. enum Info
  31. {
  32. pName[24],
  33. pPassword[15],
  34. pLevel,
  35. Float:pKaord,
  36. pSkype[20],
  37. pLogged
  38. };
  39. new PlayerInfo[MAX_PLAYERS][Info];
  40.  
  41. enum GInfo
  42. {
  43. GLogged
  44. };
  45. new PlayGame[MAX_PLAYERS][GInfo];
  46.  
  47.  
  48. public OnGameModeInit()
  49. {
  50. MYSQL_ARG = mysql_connect(mysql_host, mysql_user, mysql_db, mysql_pass);//Ïîäêëþ÷àåì ìóñêîë(ïëàãèí) ê ñåðâåðó
  51.  
  52. new stats[100];
  53. mysql_stat(stats);//Âîçâðàùàåò òåêóùèé ñòàòóñ ñåðâåðà (âðåìÿ ðàáîòû,êîëè÷åñòâî ïîòîêîâ,çàïðîñîâ,îòêðûòûõ òàáëèö è êîëè÷åñòâî çàïðîñîâ â ñåêóíäó)
  54. print(stats);
  55. AddPlayerClass(1, -255.54, 3576.69,36.67, 90.000, 0, 0, 0, 0, 0, 0);
  56. AddStaticVehicle(410,-255.54, 3576.69,36.67, 180.000,0,0,0,100000);
  57. LoadObjectes();
  58. return 1;
  59. }
  60.  
  61. public OnGameModeExit()
  62. {
  63. return 1;
  64. }
  65.  
  66. public OnPlayerRequestClass(playerid, classid)
  67. {
  68. return 1;
  69. }
  70.  
  71. public OnPlayerCommandText(playerid, cmdtext[])
  72. {
  73. return 1;
  74. }
  75. public OnPlayerDeath(playerid, killerid, reason)
  76. {
  77. RandomSpawn(playerid,PlayGame[playerid][GLogged]);
  78. return 1;
  79. }
  80. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  81. {
  82. if(dialogid == 1)
  83. {
  84. if(!response) return Kick(playerid);//Êèêàåì èãðîêà ò.ê îí íàæàë Êèê
  85. if(!strlen(inputtext))
  86. {
  87. ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "Ðåãèñòðàöèÿ[MINI GAME]","Çäðàñòâóéòå âû íå çàðåãèñòðèðîâàíû\nÂâåäèòå ñâîé ïàðîëü â îêîøå÷êî","Âîéòè","Êèê");
  88. SendClientMessage(playerid, -1, "Âû íå ÷åãî íå ââåëè");
  89. return 0;
  90. }
  91. if(strlen(inputtext) < 5 || strlen(inputtext) > 15)//Ïðîâåðêà íà ââîäíûå äàííûå
  92. {
  93. ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "Ðåãèñòðàöèÿ","Çäðàñòâóéòå âû íå çàðåãèñòðèðîâàíû\nÂâåäèòå ñâîé ïàðîëü â îêîøå÷êî","Âîéòè","Êèê");
  94. SendClientMessage(playerid, -1, "Âàø ïàðîëü äîëæåí áûòü îò 5 äî 15 ñèìâîëîâ");
  95. return 0;
  96. }
  97. format(PlayerInfo[playerid][pPassword], 15,"%s", inputtext);//ÇÀïèñûâàåì ïàðîëü â ïåðåìåííóþ
  98. Reg(playerid);//Ðåãèñòðèðóåì íîâîãî èãðîêà â áàçå(îí ñîçäàë äëÿ òîãî,÷òîáû áûëî óäîáíåé)
  99. SendClientMessage(playerid, -1, "Âû çàðåãèñòðèðîâàëèñü! Helloy and GAME");
  100. PlayerInfo[playerid][pLogged] = 1;//Ñòàâèì çíà÷åíèå íà 1 ò.ê çàøëè
  101. SetPlayerPos(playerid,-1421.8978,-291.1276,14.1484);//Ïîñûëàåì èãðîê íà êàîðäèíàòû
  102. }
  103. if(dialogid == 2)
  104. {
  105. if(!response) return Kick(playerid);//Êèêàåì èãðîêà ò.ê îí íàæàë Êèê
  106. if(!strlen(inputtext))
  107. {
  108. ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "Ðåãèñòðàöèÿ","Çäðàñòâóéòå âû íå çàðåãèñòðèðîâàíû\nÂâåäèòå ñâîé ïàðîëü â îêîøå÷êî","Âîéòè","Êèê");
  109. SendClientMessage(playerid, -1, "Âû íå ÷åãî íå ââåëè");
  110. return 0;
  111. }
  112. mysql_format(MYSQL_ARG, asd,90, "SELECT * FROM `"Baza"` WHERE `Name` = '%e' AND `Password` = '%e'", PlayerInfo[playerid][pName], inputtext);//Óçíà¸ì ëîãèí èãðîêà,è ââåä¸ííûé ïàðîëü
  113. mysql_function_query(MYSQL_ARG, asd, true, "Avtoriz","ds", playerid, inputtext); //Îòïðàâëÿåì ëîãèí èãðîêà è ââåä¸ííûé ïàðîëü
  114. }
  115. if(dialogid == 3)//Gmenu
  116. {
  117. if(response)
  118. {
  119. if(listitem == 0)
  120. {
  121. PlayGame[playerid][GLogged]= 1;//Çàøåë TDM
  122. SetPlayerSkin(playerid, 29);
  123. SendClientMessage(playerid,0x88AA88AA,"Âû áûëè âêëþ÷åíû â èãðó 'TDM'");
  124. }
  125. if(listitem == 1)
  126. {
  127. PlayGame[playerid][GLogged]= 2;//Çàøåë â DM
  128. new rand = random (sizeof(spdm));
  129. SetPlayerPos(playerid, spdm[rand][0], spdm[rand][1], spdm[rand][2]);
  130. SetPlayerFacingAngle(playerid, spdm[rand][3]);
  131. SetPlayerSkin(playerid, 30);
  132. GivePlayerWeapon(playerid,24,100);
  133. GivePlayerWeapon(playerid,25,100);
  134. GivePlayerWeapon(playerid,29,650);
  135. GivePlayerWeapon(playerid,31,1000);
  136. SendClientMessage(playerid,0x88AA88AA,"Âû áûëè âêëþ÷åíû â èãðó 'DM'");
  137. }
  138. if(listitem == 2)
  139. {
  140. PlayGame[playerid][GLogged]= 3;//Çàøåë â Äåðáè
  141. SetPlayerSkin(playerid, 33);
  142. ResetPlayerWeapons(playerid);
  143. SendClientMessage(playerid,0x88AA88AA,"Âû áûëè âêëþ÷åíû â èãðó 'DERBY'");
  144. }
  145. if(listitem == 3)
  146. {
  147. PlayGame[playerid][GLogged]= 4;//Çàøåë â Minigun
  148. SetPlayerSkin(playerid, 33);
  149. SendClientMessage(playerid,0x88AA88AA,"Âû áûëè âêëþ÷åíû â èãðó 'MINIGUN'");
  150. }
  151. }
  152. }
  153. return 1;
  154. }
  155. public OnPlayerConnect(playerid)
  156. {
  157. PlayerInfo[playerid][pLogged] = 0;//Ïðîâåðêà íà âõîä
  158. PlayerInfo[playerid][pLevel] = 500;//Çàïèøåì êîë-âî ëåâåëà äëÿ íîâîãî èãðîêà
  159.  
  160. GetPlayerName(playerid, PlayerInfo[playerid][pName], 24);//Óçíà¸ì íèê èãðîêà è çàïèñûâàåì â ïåðìåííóþ PlayerInfo[playerid][pName]
  161. mysql_format(MYSQL_ARG, asd, 90, "SELECT `Name` FROM `"Baza"` WHERE `Name` = '%e'", PlayerInfo[playerid][pName]);//Ôîðìàòèðóåì ñòðîêó è çàïèñûâàåì ëîãèí
  162. mysql_function_query(MYSQL_ARG, asd, true, "Start_R_A","d", playerid);//Îòïðàâëÿåì çàïðîñ è óçíà¸ì åñòü ëè â áä íèê èãðîêà
  163. return 1;
  164. }
  165.  
  166. public OnPlayerDisconnect(playerid, reason)
  167. {
  168. if(PlayerInfo[playerid][pLogged] == 1)//Ïðîâåðÿåì ïîäêëþ÷åí ëè èãðîê
  169. {
  170. Save(playerid);//Ñîõðîíèì åãî àêêàóíò
  171. }
  172. return 1;
  173. }
  174.  
  175. public OnPlayerSpawn(playerid)
  176. {
  177. return 1;
  178. }
  179. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  180. {
  181. return 1;
  182. }
  183.  
  184.  
  185. forward Start_R_A(playerid);
  186. public Start_R_A(playerid)//Òóò ìû óçíà¸ì ñòàòóñ èãðîêà(çàðåãèñòðèðîâà èëè íàîáîðîò)
  187. {
  188. new rows, fields;
  189. cache_get_data(rows, fields);
  190. if(rows)
  191. {
  192. ShowPlayerDialog(playerid, 2, DIALOG_STYLE_PASSWORD, "Àâòîðèçàöèÿ","Çäðàñòâóéòå\nÂû çäåñü óæå çàðåãåñòðèðîâàíû\nÂâåäèòå ñâîé ïàðîëü, äëÿ âõîäà â èãðó","Âîéòè","Êèê");
  193. }
  194. else
  195. {
  196. ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "Ðåãèñòðàöèÿ","Çäðàñòâóéòå âû íå çàðåãèñòðèðîâàíû\nÂâåäèòå ñâîé ïàðîëü â îêîøå÷êî","Âîéòè","Êèê");
  197. }
  198. return 1;
  199. }
  200.  
  201. forward Avtoriz(playerid, password[]);
  202. public Avtoriz(playerid, password[])//Òóò ìû óçíà¸ì âåðíûå äàííûå îí ââ¸ë èëè íåò(Ïàðîëü)
  203. {
  204. new rows, fields;
  205. cache_get_data(rows, fields);
  206. if(!rows)
  207. {
  208. ShowPlayerDialog(playerid, 2, DIALOG_STYLE_PASSWORD, "Àâòîðèçàöèÿ","Çäðàñòâóéòå\nÂû çäåñü óæå çàðåãåñòðèðîâàíû\nÂâåäèòå ñâîé ïàðîëü, äëÿ âõîäà â èãðó","Âîéòè","Êèê");
  209. SendClientMessage(playerid,-1,"Âû ââåëè íå âåðíûé ïàðîëü");
  210. return 1;
  211. }
  212. PlayerInfo[playerid][pLogged] = 1;//Ñòàâèì çíà÷åíèå íà 1 ò.ê çàøëè
  213. for(new i = 0; i < rows;i++)
  214. {
  215. Avt(i,playerid);//Òóò ÷èòàåì áä è çàïèñûâàåì â ïåðåìåííóþ(ñòîê ñîçäàë ÷òîáû âû íå çàïóòàëèñü è áûëî óäîáíåé)
  216. }
  217. SetPlayerPos(playerid,-1421.8978,-291.1276,14.1484);//Ïîñûëàåì èãðîê íà êàîðäèíàòû
  218. SendClientMessage(playerid, -1, "Âû óñïåøíî âîøëè");
  219. return 1;
  220. }
  221.  
  222. stock Avt(i,playerid)//Ñòîê ÷èòàåì áä è çàïèñûâàåì â ïåðåìåííóþ
  223. {
  224. PlayerInfo[playerid][pLevel] = cache_get_field_content_int(i, "Level", MYSQL_ARG);//×òåíèå öûôðîâîãî çíà÷íèå
  225. PlayerInfo[playerid][pKaord] = cache_get_field_content_float(i, "Kaord", MYSQL_ARG);//×òåíèå äðîáíîãî çíà÷åíèÿ
  226. cache_get_field_content(i, "Skype", PlayerInfo[playerid][pSkype], MYSQL_ARG, 20);//×òåíèå òåêñòîâîãî çíà÷åíèÿ
  227. //Äàëüøå ìîæíî äåëàòü àíàëîãè÷íî
  228. }
  229.  
  230. stock Reg(playerid)//Ñòîê äëÿ ñîçäàíèÿ íîâîãî èãðîêà â áàçå
  231. {
  232. format(PlayerInfo[playerid][pSkype], 20, "%s", "Qwerty");//Ïðèäóìàåì ñêàéï èãðîêó
  233. PlayerInfo[playerid][pKaord] = 190.13122;//Çàïèøåì â çíà÷åíèå äðîáü 190.13122
  234. mysql_function_query(MYSQL_ARG, asd, false, "", "");
  235. mysql_format(MYSQL_ARG, asd, sizeof(asd), "INSERT INTO `"Baza"` (`Name`, `Password`,`Level`,`Kaord`,`Skype`) VALUES ('%e', '%e', '%d', '%f', '%e')",
  236. PlayerInfo[playerid][pName],
  237. PlayerInfo[playerid][pPassword],
  238. PlayerInfo[playerid][pLevel],
  239. PlayerInfo[playerid][pKaord],
  240. PlayerInfo[playerid][pSkype]
  241. ); //Çàïèøåì â asd ëîãèí,ïàðîëü,äåíüãè,êàîðäèíàò 1,ñêàéï
  242. mysql_function_query(MYSQL_ARG, asd, false, "", "");//Îòïðàâëÿåì çàïðîñ
  243.  
  244. }
  245.  
  246. stock Save(playerid)//Ñòîê äëÿ ñîõðîíåíèÿ äàííûõ
  247. {
  248. mysql_format(MYSQL_ARG, asd, sizeof(asd),"UPDATE `"Baza"` SET `Password` = '%e', `Level` = '%d', `Kaord` = '%f', `Skype` = '%e' WHERE `Name` = '%e'",
  249. PlayerInfo[playerid][pPassword],
  250. PlayerInfo[playerid][pLevel],
  251. PlayerInfo[playerid][pKaord],
  252. PlayerInfo[playerid][pSkype],
  253. PlayerInfo[playerid][pName]
  254. );//Çàïèøåì â asd ëîãèí,ïàðîëü,äåíüãè,êàîðäèíàò 1,ñêàéï
  255. mysql_tquery(MYSQL_ARG, asd, "", "");//Îòïðàâëÿåì çàïðîñ
  256. }
  257. stock RandomSpawn(playerid,game)
  258. {
  259. new rand;
  260. switch(game)
  261. {
  262. case 0:
  263. {
  264. return 1;
  265. }
  266. case 1:
  267. {
  268. rand = random(sizeof(spdm));
  269. SetSpawnInfo(playerid, 0, 30, spdm[rand][0], spdm[rand][1], spdm[rand][2], spdm[rand][3], 0, 0, 0, 0, 0, 0);
  270. }
  271. case 2:
  272. {
  273. return 1;
  274. }
  275. }
  276. return 1;
  277. }
  278. CMD:gmenu(playerid)
  279. {
  280. if(PlayGame[playerid][GLogged] >= 1)
  281. {
  282. SendClientMessage(playerid, -1, "Âû óæå â èãðå ! /exit ×òîáû âûéòè èç ìèíè-èãðû !");
  283. }
  284. else
  285. {
  286. ShowPlayerDialog(playerid, 3, DIALOG_STYLE_LIST, "Èãðîâîå ìåíþ", "1. TDM\r\n2. DM\r\n3. DERBY\r\n3. MINIGUN", "Âûéòè", "Âûáðàòü");
  287. SendClientMessage(playerid, -1, "Âû çàøëè â èãðîâîå ìåíþ!");
  288. }
  289. return 1;
  290. }
  291. CMD:commands(playerid)
  292. {
  293. new String[1024];
  294. strins(String,"/gmenu - ìèíè èãðû\n",strlen(String));
  295. strins(String,"\n",strlen(String));
  296. strins(String,"Âàøè ïðàâèëà ñåðâåðà!\n",strlen(String));
  297. strins(String,"Âàøè ïðàâèëà ñåðâåðà!\n",strlen(String));
  298. ShowPlayerDialog(playerid,10,DIALOG_STYLE_MSGBOX,"{00B366}CMD ñåðâåðà",String,"Âûéòè","Ïðîäîëæèòü");
  299. }
  300. CMD:exit(playerid)
  301. {
  302. if(PlayGame[playerid][GLogged] == 0)
  303. {
  304. SendClientMessage(playerid,-1,"Âû óæå íà ñïàâíå");
  305. }
  306. if(PlayGame[playerid][GLogged] == 1)
  307. {
  308. SendClientMessage(playerid,-1,"Âû âûøëè ñ TDM! Âû çàñïàâëåíû íà SPAWN !");
  309. SetPlayerSkin(playerid, 1);
  310. ResetPlayerWeapons(playerid);
  311. PlayGame[playerid][GLogged] = 0;
  312. }
  313. if(PlayGame[playerid][GLogged] == 2)
  314. {
  315. SendClientMessage(playerid,-1,"Âû âûøëè ñ DM! Âû çàñïàâëåíû íà SPAWN !");
  316. SetPlayerSkin(playerid, 1);
  317. ResetPlayerWeapons(playerid);
  318. PlayGame[playerid][GLogged] = 0;
  319. }
  320. if(PlayGame[playerid][GLogged] == 3)
  321. {
  322. SendClientMessage(playerid,-1,"Âû âûøëè ñ DERBY! Âû çàñïàâëåíû íà SPAWN !");
  323. SetPlayerSkin(playerid, 1);
  324. PlayGame[playerid][GLogged] = 0;
  325. }
  326. if(PlayGame[playerid][GLogged] == 4)
  327. {
  328. SendClientMessage(playerid,-1,"Âû âûøëè ñ MINIGUN! Âû çàñïàâëåíû íà SPAWN !");
  329. SetPlayerSkin(playerid, 1);
  330. ResetPlayerWeapons(playerid);
  331. PlayGame[playerid][GLogged] = 0;
  332. }
  333. }
  334. CMD:info(playerid)
  335. {
  336. new String[1024];
  337. strins(String," DM - Êàæäûé ñàì çà ñåáÿ ! \n",strlen(String));
  338. strins(String," TDM - Äâå êîìàíäû CT VS TT! \n",strlen(String));
  339. strins(String," DERBY - Ðåæèì ãäå âàì íóæíî ñòàëêíóòü â âîäó ñîïåðíèêà ! \n",strlen(String));
  340. strins(String," Ìèíè - Èãðû áóäó ïîïîëíÿòüñÿ !\n",strlen(String));
  341. ShowPlayerDialog(playerid,11,DIALOG_STYLE_MSGBOX,"{00B366}Èíôîðìàöèÿ î Ìèíè-Èãðàõ",String,"Âûéòè","Ïðîäîëæèòü");
  342. }
  343. CMD:kill(playerid)
  344. {
  345. SetPlayerHealth(playerid, 0);
  346. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement