Advertisement
Guest User

Untitled

a guest
Feb 11th, 2016
118
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.87 KB | None | 0 0
  1. ////////////////////////////////////////////////////////////////////////////////
  2. // //
  3. // Dieses Script wurde von Buzzy gescriptet und ist Copyright (c) //
  4. // geschützt. Das weitergeben/verkaufen wird zu einer Anzeige //
  5. // Gebracht //
  6. // //
  7. // //
  8. // (c) Copyright by Buzzy //
  9. ////////////////////////////////////////////////////////////////////////////////
  10. //==============================================================================
  11. //============================> Includes <======================================
  12. #include <a_samp>
  13. #include <a_mysql>
  14. #include <streamer>
  15. #include <sscanf2>
  16. //==============================================================================
  17. //============================> ServerDaten <===================================
  18. #define ServerName "NewLife-Roleplay"
  19. #define ServerMode "German Roleplay"
  20. #define ServerTag "[NLR]"
  21. #define ServerFarbe ""
  22. #define ServerOwner "Buzzy und Saaltofreak"
  23. #define ServerScripter "Buzzy"
  24. #define ServerCopyright"(c) by Buzzy"
  25. //MySQL
  26. #define SQL_HOST "127.0.0.1"
  27. #define SQL_USER "root"
  28. #define SQL_DATA "samp"
  29. #define SQL_PASS ""
  30. //==============================================================================
  31. //============================> Defines <=======================================
  32. //Dialoge
  33. #define DIALOG_REGISTER (1)
  34. #define DIALOG_LOGIN (2)
  35.  
  36. //==============================================================================
  37. //============================> Enums <=========================================
  38. enum SpielerDaten {
  39. pEingeloggt,
  40. pLevel,
  41. pGeld
  42. };
  43. //==============================================================================
  44. //============================> Globare Variabeln <=============================
  45. new Handle;
  46. new sInfo[MAX_PLAYERS][SpielerDaten];
  47.  
  48.  
  49. //==============================================================================
  50. //============================> ScriptBeginn <==================================
  51. main() {}
  52. public OnGameModeInit()
  53. {
  54. SetGameModeText(ServerMode);
  55. //MySQL
  56. Connect_To_Database();
  57. return 1;
  58. }
  59.  
  60. public OnGameModeExit()
  61. {
  62. //MySQL
  63. mysql_close(Handle);
  64. return 1;
  65. }
  66.  
  67. public OnPlayerRequestClass(playerid, classid)
  68. {
  69. return 1;
  70. }
  71.  
  72. public OnPlayerConnect(playerid)
  73. {
  74. //MySQL Login/Register
  75. new query[256];
  76. format(query, sizeof(query), "SELECT id FROM user WHERE username='%s'", SpielerName(playerid));
  77. mysql_function_query(Handle, query, true, "OnUserCheck", "i", playerid);
  78. return 1;
  79. }
  80.  
  81. public OnPlayerDisconnect(playerid, reason)
  82. {
  83. return 1;
  84. }
  85.  
  86. public OnPlayerSpawn(playerid)
  87. {
  88. return 1;
  89. }
  90.  
  91. public OnPlayerDeath(playerid, killerid, reason)
  92. {
  93. return 1;
  94. }
  95.  
  96. public OnVehicleSpawn(vehicleid)
  97. {
  98. return 1;
  99. }
  100.  
  101. public OnVehicleDeath(vehicleid, killerid)
  102. {
  103. return 1;
  104. }
  105.  
  106. public OnPlayerText(playerid, text[])
  107. {
  108. return 1;
  109. }
  110.  
  111. public OnPlayerCommandText(playerid, cmdtext[])
  112. {
  113. if (strcmp("/mycommand", cmdtext, true, 10) == 0)
  114. {
  115. return 1;
  116. }
  117. return 0;
  118. }
  119.  
  120. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  121. {
  122. return 1;
  123. }
  124.  
  125. public OnPlayerExitVehicle(playerid, vehicleid)
  126. {
  127. return 1;
  128. }
  129.  
  130. public OnPlayerStateChange(playerid, newstate, oldstate)
  131. {
  132. return 1;
  133. }
  134.  
  135. public OnPlayerEnterCheckpoint(playerid)
  136. {
  137. return 1;
  138. }
  139.  
  140. public OnPlayerLeaveCheckpoint(playerid)
  141. {
  142. return 1;
  143. }
  144.  
  145. public OnPlayerEnterRaceCheckpoint(playerid)
  146. {
  147. return 1;
  148. }
  149.  
  150. public OnPlayerLeaveRaceCheckpoint(playerid)
  151. {
  152. return 1;
  153. }
  154.  
  155. public OnRconCommand(cmd[])
  156. {
  157. return 1;
  158. }
  159.  
  160. public OnPlayerRequestSpawn(playerid)
  161. {
  162. return 1;
  163. }
  164.  
  165. public OnObjectMoved(objectid)
  166. {
  167. return 1;
  168. }
  169.  
  170. public OnPlayerObjectMoved(playerid, objectid)
  171. {
  172. return 1;
  173. }
  174.  
  175. public OnPlayerPickUpPickup(playerid, pickupid)
  176. {
  177. return 1;
  178. }
  179.  
  180. public OnVehicleMod(playerid, vehicleid, componentid)
  181. {
  182. return 1;
  183. }
  184.  
  185. public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
  186. {
  187. return 1;
  188. }
  189.  
  190. public OnVehicleRespray(playerid, vehicleid, color1, color2)
  191. {
  192. return 1;
  193. }
  194.  
  195. public OnPlayerSelectedMenuRow(playerid, row)
  196. {
  197. return 1;
  198. }
  199.  
  200. public OnPlayerExitedMenu(playerid)
  201. {
  202. return 1;
  203. }
  204.  
  205. public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
  206. {
  207. return 1;
  208. }
  209.  
  210. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  211. {
  212. return 1;
  213. }
  214.  
  215. public OnRconLoginAttempt(ip[], password[], success)
  216. {
  217. return 1;
  218. }
  219.  
  220. public OnPlayerUpdate(playerid)
  221. {
  222. return 1;
  223. }
  224.  
  225. public OnPlayerStreamIn(playerid, forplayerid)
  226. {
  227. return 1;
  228. }
  229.  
  230. public OnPlayerStreamOut(playerid, forplayerid)
  231. {
  232. return 1;
  233. }
  234.  
  235. public OnVehicleStreamIn(vehicleid, forplayerid)
  236. {
  237. return 1;
  238. }
  239.  
  240. public OnVehicleStreamOut(vehicleid, forplayerid)
  241. {
  242. return 1;
  243. }
  244.  
  245. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  246. {
  247. if(dialogid == DIALOG_REGISTER)
  248. {
  249. if(response)
  250. {
  251. if(strlen(inputtext) >= 5)
  252. {
  253. //Regestrierung
  254. new query[256], passwort[32];
  255. mysql_escape_string(inputtext, passwort, Handle);
  256. format(query, sizeof(query), "INSERT INTO user (username, password) VALUES ('%s', '%s')", SpielerName(playerid), passwort);
  257. mysql_function_query(Handle, query, false, "", "");
  258. }
  259. else
  260. {
  261. SendClientMessage(playerid, -1, "Dein Passwort muss mindestens 5 Zeichen lang sein!");
  262. ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, ""ServerTag"Regestrierung", "Bitte gebe ein Passwort ein:", "Anmelden", "Abbrechen");
  263. return 1;
  264. }
  265. }
  266. else
  267. {
  268. Kick(playerid);
  269. return 1;
  270. }
  271. return 1;
  272. }
  273. if(dialogid == DIALOG_LOGIN)
  274. {
  275. if(response)
  276. {
  277. new query[128], passwort[32];
  278. if(strlen(inputtext) > 0)
  279. {
  280. mysql_escape_string(inputtext, passwort, Handle);
  281. format(query, sizeof(query), "SELECT * FROM user WHERE username='%s' AND password='%s'", SpielerName(playerid), passwort);
  282. mysql_function_query(Handle, query, true, "OnPasswortResponse", "i", SpielerName(playerid));
  283. }
  284. else
  285. {
  286. //Keine Eingabe
  287. SendClientMessage(playerid, -1, "Gib bitte dein Passwort ein!");
  288. ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, ""ServerTag"Login", "Bitte gebe ein Passwort ein:", "Login", "Abbrechen");
  289. return 1;
  290. }
  291. }
  292. else
  293. {
  294. Kick(playerid);
  295. return 1;
  296. }
  297. return 1;
  298. }
  299. return 1;
  300. }
  301.  
  302. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  303. {
  304. return 1;
  305. }
  306. //==============================================================================
  307. //============================> Public's <=======================================
  308. forward OnUserCheck(playerid);
  309. public OnUserCheck(playerid)
  310. {
  311. new num_rows, num_fields;
  312. cache_get_data(num_rows, num_fields, Handle);
  313. if(num_fields == 1)
  314. {
  315. //Registrierung
  316. ShowPlayerDialog(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT, ""ServerTag"Regestrierung", "Bitte gebe ein Passwort ein:", "Anmelden", "Abbrechen");
  317. }
  318. else
  319. {
  320. //Login
  321. ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, ""ServerTag"Login", "Bitte gebe ein Passwort ein:", "Login", "Abbrechen");
  322. }
  323. return 1;
  324. }
  325.  
  326. forward OnPasswortResponse(playerid);
  327. public OnPasswortResponse(playerid)
  328. {
  329. new num_rows, num_fields;
  330. cache_get_data(num_rows, num_fields, Handle);
  331. if(num_rows == 1)
  332. {
  333. //Passwort richtig
  334. SpielerLaden(playerid);
  335. }
  336. else
  337. {
  338. //Passwort falsch
  339. SendClientMessage(playerid, -1, "Das eingegebene Passwort ist falsch!");
  340. ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, ""ServerTag"Login", "Bitte gebe ein Passwort ein:", "Login", "Abbrechen");
  341. }
  342. return 1;
  343. }
  344.  
  345. //==============================================================================
  346. //============================> Stock's <=======================================
  347. stock Connect_To_Database()
  348. {
  349. Handle = mysql_connect(SQL_HOST, SQL_USER, SQL_DATA, SQL_PASS);
  350. if(mysql_errno(Handle) == 0)
  351. {
  352. printf("|>MySQL<| - Es konnte Verbindung zur der Datenbank "SQL_DATA" aufgebaut werden");
  353. }
  354. else
  355. {
  356. printf("|>MySQL<| - Es konnte keine Verbindung aufgebaut werden!");
  357. SendRconCommand("exit");
  358. }
  359. return 1;
  360. }
  361.  
  362. stock SpielerName(playerid)
  363. {
  364. new name[MAX_PLAYERS];
  365. GetPlayerName(playerid,name,sizeof(name));
  366. return name;
  367. }
  368.  
  369. stock SpielerLaden(playerid)
  370. {
  371. sInfo[playerid][pEingeloggt] = 1;
  372. sInfo[playerid][pLevel] = cache_get_field_content_int(0,"Level",Handle);
  373. printf("Der Spieler %s hat das Level %i", SpielerName(playerid), sInfo[playerid][pLevel]);
  374. return 1;
  375. }
  376.  
  377. stock SpielerSpeichern(playerid)
  378. {
  379. return 1;
  380. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement