Cimbur

Untitled

Feb 14th, 2014
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 10.25 KB | None | 0 0
  1. //=================================INCLUDEs===================================//
  2. #include <a_samp>
  3. #include <YSI\y_ini>
  4. //=================================NEWs=======================================//
  5. new Text:registracija1;
  6. new Text:registracija2;
  7. new Text:registracija3;
  8. new Text:registracija4;
  9. new Text:registracija5;
  10. new Text:registracija6;
  11. //=====================
  12.  
  13. //=================================DIALOGs====================================//
  14. #define DIALOG_REGISTER 1
  15. #define DIALOG_LOGIN 2
  16. //=================================PATHs======================================//
  17. #define PATH "/Korisnici/%s.ini"
  18. //=================================ENUMs======================================//
  19. enum pInfo
  20. {
  21. pLozinka,
  22. pNovac,
  23. pAdmin,
  24. pUbistva,
  25. pSmrti
  26. };
  27.  
  28. new PlayerInfo[MAX_PLAYERS][pInfo];
  29. //=================================STOCKs=====================================//
  30. stock UserPath(playerid)
  31. {
  32. new string[128],playername[MAX_PLAYER_NAME];
  33. GetPlayerName(playerid,playername,sizeof(playername));
  34. format(string,sizeof(string),PATH,playername);
  35. return string;
  36. }
  37.  
  38. stock udb_hash(buf[])
  39. {
  40. new length=strlen(buf);
  41. new s1 = 1;
  42. new s2 = 0;
  43. new n;
  44. for (n=0; n<length; n++)
  45. {
  46. s1 = (s1 + buf[n]) % 65521;
  47. s2 = (s2 + s1) % 65521;
  48. }
  49. return (s2 << 16) + s1;
  50. }
  51. //=================================PUBLICs====================================//
  52. public OnGameModeInit()
  53. {
  54. registracija1 = TextDrawCreate(48,55,"~r~~h~d~w~obrodosli");
  55. TextDrawLetterSize(registracija1,0.500000,1.700000);
  56. TextDrawAlignment(registracija1,0);
  57. TextDrawBackgroundColor(registracija1,0x000000FF);
  58. TextDrawFont(registracija1,3);
  59. TextDrawUseBox(registracija1,0);
  60. TextDrawSetOutline(registracija1,1);
  61. TextDrawSetProportional(registracija1,1);
  62. TextDrawSetShadow(registracija1,1);
  63.  
  64. registracija2 = TextDrawCreate(137,73,"~r~~h~n~w~a");
  65. TextDrawLetterSize(registracija2,0.500000,1.700000);
  66. TextDrawAlignment(registracija2,0);
  67. TextDrawBackgroundColor(registracija2,0x000000FF);
  68. TextDrawFont(registracija2,3);
  69. TextDrawUseBox(registracija2,0);
  70. TextDrawSetOutline(registracija2,1);
  71. TextDrawSetProportional(registracija2,1);
  72. TextDrawSetShadow(registracija2,1);
  73.  
  74. registracija3 = TextDrawCreate(151,89,"~r~~h~r~w~adius ~r~~h~g~w~aming");
  75. TextDrawLetterSize(registracija3,0.500000,1.900000);
  76. TextDrawAlignment(registracija3,0);
  77. TextDrawBackgroundColor(registracija3,0x000000FF);
  78. TextDrawFont(registracija3,3);
  79. TextDrawUseBox(registracija3,0);
  80. TextDrawSetOutline(registracija3,1);
  81. TextDrawSetProportional(registracija3,1);
  82. TextDrawSetShadow(registracija3,1);
  83.  
  84. registracija4 = TextDrawCreate(3,431,"~r~~h~v~w~~h~lasnik : ~r~~h~c~w~~h~imbur");
  85. TextDrawLetterSize(registracija4,0.399999,1.600000);
  86. TextDrawAlignment(registracija4,0);
  87. TextDrawBackgroundColor(registracija4,0x000000FF);
  88. TextDrawFont(registracija4,3);
  89. TextDrawUseBox(registracija4,0);
  90. TextDrawSetOutline(registracija4,1);
  91. TextDrawSetProportional(registracija4,1);
  92. TextDrawSetShadow(registracija4,1);
  93.  
  94. registracija5 = TextDrawCreate(-2,431,"_");
  95. TextDrawLetterSize(registracija5,0.600000,1.500000);
  96. TextDrawAlignment(registracija5,0);
  97. TextDrawBackgroundColor(registracija5,0x000000FF);
  98. TextDrawFont(registracija5,3);
  99. TextDrawUseBox(registracija5,1);
  100. TextDrawBoxColor(registracija5,0x00000066);
  101. TextDrawTextSize(registracija5,660.000000,441.000000);
  102. TextDrawSetOutline(registracija5,0);
  103. TextDrawSetProportional(registracija5,1);
  104. TextDrawSetShadow(registracija5,1);
  105.  
  106. registracija6 = TextDrawCreate(597,435,"~r~~h~v~w~~h~0.1");
  107. TextDrawLetterSize(registracija6,0.550000,1.100000);
  108. TextDrawAlignment(registracija6,0);
  109. TextDrawBackgroundColor(registracija6,0x000000FF);
  110. TextDrawFont(registracija6,3);
  111. TextDrawUseBox(registracija6,0);
  112. TextDrawSetOutline(registracija6,1);
  113. TextDrawSetProportional(registracija6,1);
  114. TextDrawSetShadow(registracija6,1);
  115.  
  116. return 1;
  117. }
  118.  
  119. public OnGameModeExit()
  120. {
  121. return 1;
  122. }
  123.  
  124. public OnPlayerRequestClass(playerid, classid)
  125. {
  126. SetSpawnInfo(playerid, 0, 0, 1958.33, 1343.12, 15.36, 269.15, 0, 0, 0, 0, 0, 0);
  127. SpawnPlayer(playerid);
  128. return 1;
  129. }
  130.  
  131. public OnPlayerConnect(playerid)
  132. {
  133. if(fexist(UserPath(playerid)))
  134. {
  135. INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
  136. ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,"Prijavljivanje","Ukucajte lozinku da bi se ulogovali","Prijavi se","Izadji");
  137. }
  138. else
  139. {
  140. TextDrawShowForPlayer(playerid,registracija1);
  141. TextDrawShowForPlayer(playerid,registracija2);
  142. TextDrawShowForPlayer(playerid,registracija3);
  143. TextDrawShowForPlayer(playerid,registracija4);
  144. TextDrawShowForPlayer(playerid,registracija5);
  145. TextDrawShowForPlayer(playerid,registracija6);
  146. SetTimerEx("reg", 30000, false, "i", playerid);
  147. }
  148. return 1;
  149. }
  150.  
  151. public OnPlayerDisconnect(playerid, reason)
  152. {
  153. TextDrawHideForPlayer(playerid,registracija1);
  154. TextDrawHideForPlayer(playerid,registracija2);
  155. TextDrawHideForPlayer(playerid,registracija3);
  156. TextDrawHideForPlayer(playerid,registracija4);
  157. TextDrawHideForPlayer(playerid,registracija5);
  158. TextDrawHideForPlayer(playerid,registracija6);
  159.  
  160. new INI:File = INI_Open(UserPath(playerid));
  161. INI_SetTag(File,"data");
  162. INI_WriteInt(File,"Novac",GetPlayerMoney(playerid));
  163. INI_WriteInt(File,"Admin",PlayerInfo[playerid][pAdmin]);
  164. INI_WriteInt(File,"Ubistva",PlayerInfo[playerid][pUbistva]);
  165. INI_WriteInt(File,"Smrti",PlayerInfo[playerid][pSmrti]);
  166. INI_Close(File);
  167. return 1;
  168. }
  169.  
  170. public OnPlayerSpawn(playerid)
  171. {
  172. TextDrawHideForPlayer(playerid,registracija1);
  173. TextDrawHideForPlayer(playerid,registracija2);
  174. TextDrawHideForPlayer(playerid,registracija3);
  175. TextDrawHideForPlayer(playerid,registracija4);
  176. TextDrawHideForPlayer(playerid,registracija5);
  177. TextDrawHideForPlayer(playerid,registracija6);
  178. return 1;
  179. }
  180.  
  181. public OnPlayerDeath(playerid, killerid, reason)
  182. {
  183. PlayerInfo[killerid][pUbistva]++;
  184. PlayerInfo[playerid][pSmrti]++;
  185. return 1;
  186. }
  187.  
  188. public OnVehicleSpawn(vehicleid)
  189. {
  190. return 1;
  191. }
  192.  
  193. public OnVehicleDeath(vehicleid, killerid)
  194. {
  195. return 1;
  196. }
  197.  
  198. public OnPlayerText(playerid, text[])
  199. {
  200. return 1;
  201. }
  202.  
  203. public OnPlayerCommandText(playerid, cmdtext[])
  204. {
  205. return 1;
  206. }
  207.  
  208. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  209. {
  210. return 1;
  211. }
  212.  
  213. public OnPlayerExitVehicle(playerid, vehicleid)
  214. {
  215. return 1;
  216. }
  217.  
  218. public OnPlayerStateChange(playerid, newstate, oldstate)
  219. {
  220. return 1;
  221. }
  222.  
  223. public OnPlayerEnterCheckpoint(playerid)
  224. {
  225. return 1;
  226. }
  227.  
  228. public OnPlayerLeaveCheckpoint(playerid)
  229. {
  230. return 1;
  231. }
  232.  
  233. public OnPlayerEnterRaceCheckpoint(playerid)
  234. {
  235. return 1;
  236. }
  237.  
  238. public OnPlayerLeaveRaceCheckpoint(playerid)
  239. {
  240. return 1;
  241. }
  242.  
  243. public OnRconCommand(cmd[])
  244. {
  245. return 1;
  246. }
  247.  
  248. public OnPlayerRequestSpawn(playerid)
  249. {
  250. return 1;
  251. }
  252.  
  253. public OnObjectMoved(objectid)
  254. {
  255. return 1;
  256. }
  257.  
  258. public OnPlayerObjectMoved(playerid, objectid)
  259. {
  260. return 1;
  261. }
  262.  
  263. public OnPlayerPickUpPickup(playerid, pickupid)
  264. {
  265. return 1;
  266. }
  267.  
  268. public OnVehicleMod(playerid, vehicleid, componentid)
  269. {
  270. return 1;
  271. }
  272.  
  273. public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
  274. {
  275. return 1;
  276. }
  277.  
  278. public OnVehicleRespray(playerid, vehicleid, color1, color2)
  279. {
  280. return 1;
  281. }
  282.  
  283. public OnPlayerSelectedMenuRow(playerid, row)
  284. {
  285. return 1;
  286. }
  287.  
  288. public OnPlayerExitedMenu(playerid)
  289. {
  290. return 1;
  291. }
  292.  
  293. public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
  294. {
  295. return 1;
  296. }
  297.  
  298. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  299. {
  300. return 1;
  301. }
  302.  
  303. public OnRconLoginAttempt(ip[], password[], success)
  304. {
  305. return 1;
  306. }
  307.  
  308. public OnPlayerUpdate(playerid)
  309. {
  310. return 1;
  311. }
  312.  
  313. public OnPlayerStreamIn(playerid, forplayerid)
  314. {
  315. return 1;
  316. }
  317.  
  318. public OnPlayerStreamOut(playerid, forplayerid)
  319. {
  320. return 1;
  321. }
  322.  
  323. public OnVehicleStreamIn(vehicleid, forplayerid)
  324. {
  325. return 1;
  326. }
  327.  
  328. public OnVehicleStreamOut(vehicleid, forplayerid)
  329. {
  330. return 1;
  331. }
  332.  
  333. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  334. {
  335. switch(dialogid)
  336. {
  337. case DIALOG_REGISTER:
  338. {
  339. if(!response) return Kick(playerid);
  340. if(response)
  341. {
  342. if(!strlen(inputtext)) return ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, "Registracija","Ukucali ste pogresnu lozinku.\nUkucajte ispravnu lozinku da bi se registrovali.","Registruj se","Izadji");
  343. new INI:File = INI_Open(UserPath(playerid));
  344. INI_SetTag(File,"data");
  345. INI_WriteInt(File,"Lozinka",udb_hash(inputtext));
  346. INI_WriteInt(File,"Novac",0);
  347. INI_WriteInt(File,"Admin",0);
  348. INI_WriteInt(File,"Ubistva",0);
  349. INI_WriteInt(File,"Smrti",0);
  350. INI_Close(File);
  351. SetSpawnInfo(playerid, 0, 0, 1958.33, 1343.12, 15.36, 269.15, 0, 0, 0, 0, 0, 0);// Ovde stavite koordinate svog spawna
  352. SpawnPlayer(playerid);
  353. }
  354. }
  355. case DIALOG_LOGIN:
  356. {
  357. if(!response) return Kick(playerid);
  358. if(response)
  359. {
  360. if(udb_hash(inputtext) == PlayerInfo[playerid][pLozinka])
  361. {
  362. INI_ParseFile(UserPath(playerid), "LoadUser_%s", .bExtra = true, .extra = playerid);
  363. GivePlayerMoney(playerid, PlayerInfo[playerid][pNovac]);
  364. TextDrawShowForPlayer(playerid,registracija1);
  365. TextDrawShowForPlayer(playerid,registracija2);
  366. TextDrawShowForPlayer(playerid,registracija3);
  367. TextDrawShowForPlayer(playerid,registracija4);
  368. TextDrawShowForPlayer(playerid,registracija5);
  369. TextDrawShowForPlayer(playerid,registracija6);
  370. }
  371. else
  372. {
  373. ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,"Prijavljivanje","Ukucali ste pogresnu lozinku.\nUkucajte ispravnu lozinku da bi se ulogovali.","Prijavi se","Izadji");
  374. }
  375. return 1;
  376. }
  377. }
  378. }
  379. return 1;
  380. }
  381.  
  382. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  383. {
  384. return 1;
  385. }
  386.  
  387. forward LoadUser_data(playerid,name[],value[]);
  388. public LoadUser_data(playerid,name[],value[])
  389. {
  390. INI_Int("Lozinka",PlayerInfo[playerid][pLozinka]);
  391. INI_Int("Novac",PlayerInfo[playerid][pNovac]);
  392. INI_Int("Admin",PlayerInfo[playerid][pAdmin]);
  393. INI_Int("Ubistva",PlayerInfo[playerid][pUbistva]);
  394. INI_Int("Smrti",PlayerInfo[playerid][pSmrti]);
  395. return 1;
  396. }
  397.  
  398. public reg(playerid)
  399. {
  400. ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT,"Registracija","Ukucajte lozinku da bi se registrovali.","Registruj se","Izadji");
  401. return 1;
  402. }
Advertisement
Add Comment
Please, Sign In to add comment