artyom_triodin1

GM

Dec 21st, 2014
268
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.13 KB | None | 0 0
  1. #include <a_samp>
  2. #include <YSI\y_ini>
  3.  
  4. #define Save "Accounts/%s.ini"
  5.  
  6. enum pInfo
  7. {
  8. pPass,
  9. pCash,
  10. pScore,
  11. pKills,
  12. pDeaths
  13. }
  14. new PlayerInfo[MAX_PLAYERS][pInfo];
  15.  
  16. #if defined FILTERSCRIPT
  17.  
  18. public OnFilterScriptInit()
  19. {
  20. print("\n--------------------------------------");
  21. print(" Blank Filterscript by your name here");
  22. print("--------------------------------------\n");
  23. return 1;
  24. }
  25.  
  26. public OnFilterScriptExit()
  27. {
  28. return 1;
  29. }
  30.  
  31. #else
  32.  
  33. main()
  34. {
  35. print("\n----------------------------------");
  36. print(" Blank Gamemode by your name here");
  37. print("----------------------------------\n");
  38. }
  39.  
  40. #endif
  41.  
  42. forward UserData_Data(playerid, name[], value[]);
  43.  
  44. public UserData_Data(playerid, name[], value[])
  45. {
  46. INI_Int("Password", PlayerInfo[playerid][pPass]);
  47. INI_Int("Cash", PlayerInfo[playerid][pCash]);
  48. INI_Int("Score", PlayerInfo[playerid][pScore]);
  49. INI_Int("Kills", PlayerInfo[playerid][pKills]);
  50. INI_Int("Cash", PlayerInfo[playerid][pDeaths]);
  51. return 1;
  52. }
  53.  
  54. public OnGameModeInit()
  55. {
  56. // Don't use these lines if it's a filterscript
  57. SetGameModeText("Blank Script");
  58. AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
  59. return 1;
  60. }
  61.  
  62. public OnGameModeExit()
  63. {
  64. return 1;
  65. }
  66.  
  67. public OnPlayerRequestClass(playerid, classid)
  68. {
  69. SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
  70. SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
  71. SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
  72. return 1;
  73. }
  74.  
  75. public OnPlayerConnect(playerid)
  76. {
  77. new pName[MAX_PLAYER_NAME], y, d, m, Str[128], Str2[128];
  78. GetPlayerName(playerid, pName, sizeof(pName));
  79. getdate(y, m, d);
  80. format(Str2, sizeof(Str2), "{FFFFFF}Welcome To Our Server! {00FFFF}%s , {FFFFFF}Thx For Joining!, Date : {FFFF00}%02d/%02d/%02d", pName, y, m, d);
  81. format(Str, sizeof(Str), "{FFFFFF}Welcome Back {00FFFF}%s , {FFFFFF}Thx For Joining Back!, Date : {FFFF00}%02d/%02d/%02d", pName, y, m, d);
  82. if(fexist(User(playerid)))
  83. {
  84. INI_ParseFile(User(playerid), "UserData_%s", .bExtra = true, .extra = playerid);
  85. ShowPlayerDialog(playerid, 1, DIALOG_STYLE_PASSWORD, "Login", Str, "Login", "Quit");
  86. }
  87. else
  88. {
  89. ShowPlayerDialog(playerid, 0, DIALOG_STYLE_INPUT, "Register", Str2, "Register", "Quit");
  90. }
  91. return 1;
  92. }
  93.  
  94. public OnPlayerDisconnect(playerid, reason)
  95. {
  96. new y, m, d;
  97. new LJoined[128];
  98. getdate(y, m, d);
  99. format(LJoined, sizeof(LJoined), "%02d/%02d/%02d", y, m, d);
  100. new INI:File = INI_Open(User(playerid));
  101. INI_SetTag(File, "Data");
  102. INI_WriteInt(File, "Cash", GetPlayerMoney(playerid));
  103. INI_WriteInt(File, "Score", GetPlayerScore(playerid));
  104. INI_WriteInt(File, "Kills", PlayerInfo[playerid][pKills]);
  105. INI_WriteInt(File, "Deaths", PlayerInfo[playerid][pDeaths]);
  106. INI_WriteString(File, "Last Visited", LJoined);
  107. INI_Close(File);
  108. return 1;
  109. }
  110.  
  111. public OnPlayerSpawn(playerid)
  112. {
  113. return 1;
  114. }
  115.  
  116. public OnPlayerDeath(playerid, killerid, reason)
  117. {
  118. PlayerInfo[playerid][pKills]++;
  119. PlayerInfo[playerid][pDeaths]++;
  120. return 1;
  121. }
  122.  
  123. public OnVehicleSpawn(vehicleid)
  124. {
  125. return 1;
  126. }
  127.  
  128. public OnVehicleDeath(vehicleid, killerid)
  129. {
  130. return 1;
  131. }
  132.  
  133. public OnPlayerText(playerid, text[])
  134. {
  135. return 1;
  136. }
  137.  
  138. public OnPlayerCommandText(playerid, cmdtext[])
  139. {
  140. if (strcmp("/mycommand", cmdtext, true, 10) == 0)
  141. {
  142. // Do something here
  143. return 1;
  144. }
  145. return 0;
  146. }
  147.  
  148. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  149. {
  150. return 1;
  151. }
  152.  
  153. public OnPlayerExitVehicle(playerid, vehicleid)
  154. {
  155. return 1;
  156. }
  157.  
  158. public OnPlayerStateChange(playerid, newstate, oldstate)
  159. {
  160. return 1;
  161. }
  162.  
  163. public OnPlayerEnterCheckpoint(playerid)
  164. {
  165. return 1;
  166. }
  167.  
  168. public OnPlayerLeaveCheckpoint(playerid)
  169. {
  170. return 1;
  171. }
  172.  
  173. public OnPlayerEnterRaceCheckpoint(playerid)
  174. {
  175. return 1;
  176. }
  177.  
  178. public OnPlayerLeaveRaceCheckpoint(playerid)
  179. {
  180. return 1;
  181. }
  182.  
  183. public OnRconCommand(cmd[])
  184. {
  185. return 1;
  186. }
  187.  
  188. public OnPlayerRequestSpawn(playerid)
  189. {
  190. return 1;
  191. }
  192.  
  193. public OnObjectMoved(objectid)
  194. {
  195. return 1;
  196. }
  197.  
  198. public OnPlayerObjectMoved(playerid, objectid)
  199. {
  200. return 1;
  201. }
  202.  
  203. public OnPlayerPickUpPickup(playerid, pickupid)
  204. {
  205. return 1;
  206. }
  207.  
  208. public OnVehicleMod(playerid, vehicleid, componentid)
  209. {
  210. return 1;
  211. }
  212.  
  213. public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
  214. {
  215. return 1;
  216. }
  217.  
  218. public OnVehicleRespray(playerid, vehicleid, color1, color2)
  219. {
  220. return 1;
  221. }
  222.  
  223. public OnPlayerSelectedMenuRow(playerid, row)
  224. {
  225. return 1;
  226. }
  227.  
  228. public OnPlayerExitedMenu(playerid)
  229. {
  230. return 1;
  231. }
  232.  
  233. public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
  234. {
  235. return 1;
  236. }
  237.  
  238. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  239. {
  240. return 1;
  241. }
  242.  
  243. public OnRconLoginAttempt(ip[], password[], success)
  244. {
  245. return 1;
  246. }
  247.  
  248. public OnPlayerUpdate(playerid)
  249. {
  250. return 1;
  251. }
  252.  
  253. public OnPlayerStreamIn(playerid, forplayerid)
  254. {
  255. return 1;
  256. }
  257.  
  258. public OnPlayerStreamOut(playerid, forplayerid)
  259. {
  260. return 1;
  261. }
  262.  
  263. public OnVehicleStreamIn(vehicleid, forplayerid)
  264. {
  265. return 1;
  266. }
  267.  
  268. public OnVehicleStreamOut(vehicleid, forplayerid)
  269. {
  270. return 1;
  271. }
  272.  
  273. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  274. {
  275. if(dialogid == 0)
  276. {
  277. new Joined[128];
  278. new y, m, d;
  279. getdate(y, m, d);
  280. if(!response) return Kick(playerid);
  281. if(!strlen (inputtext)) return ShowPlayerDialog(playerid, 0, DIALOG_STYLE_INPUT, "Register", "{FF0000}To Play You Must Register!!!", "Register", "Quit");
  282. format(Joined, sizeof(Joined), "%02d/%02d/%02d", y, m, d);
  283. new INI:File = INI_Open(User(playerid));
  284. INI_SetTag(File, "Data");
  285. INI_WriteInt(File, "Password", udb_hash(inputtext));
  286. INI_WriteInt(File, "Cash", 0);
  287. INI_WriteInt(File, "Score", 0);
  288. INI_WriteInt(File, "Kills", PlayerInfo[playerid][pKills]);
  289. INI_WriteInt(File, "Deaths", PlayerInfo[playerid][pDeaths]);
  290. INI_WriteString(File, "Joining Date", Joined);
  291. INI_Close(File);
  292.  
  293. PlayerPlaySound(playerid, 1057, 0.0, 0.0, 0.0);
  294. SendClientMessage(playerid, 0x00FF00FF, "You Have Been Registered Succes Fully!!!");
  295. }
  296. if(dialogid == 1)
  297. {
  298. if(!response) return Kick(playerid);
  299. if(udb_hash (inputtext) == PlayerInfo[playerid][pPass])
  300. {
  301. INI_ParseFile(User(playerid), "UserData_%s", .bExtra = true, .extra = playerid);
  302. GivePlayerMoney(playerid, PlayerInfo[playerid][pCash]);
  303. SetPlayerScore(playerid, PlayerInfo[playerid][pScore]);
  304. PlayerPlaySound(playerid, 1057, 0.0, 0.0, 0.0);
  305.  
  306.  
  307. SendClientMessage(playerid, 0x00FF00FF, "Welcome Back!");
  308. }
  309. else
  310. {
  311. ShowPlayerDialog(playerid, 1, DIALOG_STYLE_PASSWORD, "Login", "{FF0000}Wrong Password Try Again!!!", "Login", "Quit");
  312. }
  313. }
  314. return 1;
  315. }
  316.  
  317. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  318. {
  319. return 1;
  320. }
  321.  
  322. stock User(playerid)
  323. {
  324. new String[128], Name[MAX_PLAYER_NAME];
  325. GetPlayerName(playerid, Name, sizeof(Name));
  326. format(String, sizeof(String), Save, Name);
  327. return String;
  328. }
  329.  
  330. stock udb_hash(buf[]) {
  331. new length=strlen(buf);
  332. new s1 = 1;
  333. new s2 = 0;
  334. new n;
  335. for (n=0; n<length; n++)
  336. {
  337. s1 = (s1 + buf[n]) % 65521;
  338. s2 = (s2 + s1) % 65521;
  339. }
  340. return (s2 << 16) + s1;
  341. }
Advertisement
Add Comment
Please, Sign In to add comment