hlmod.hu

Magyar Half-Life Mód közösség!
Pontos idő: 2024.04.28. 09:35



Jelenlévő felhasználók

Jelenleg 526 felhasználó van jelen :: 0 regisztrált, 0 rejtett és 526 vendég

A legtöbb felhasználó (1565 fő) 2020.11.21. 11:26-kor tartózkodott itt.

Regisztrált felhasználók: nincs regisztrált felhasználó az elmúlt 5 percben aktív felhasználók alapján

Utoljára aktív
Ahhoz hogy lásd ki volt utoljára aktív, be kell jelentkezned.



Az oldal teljeskörű
használatához regisztrálj.

Regisztráció

Kereső


Új téma nyitása  Hozzászólás a témához  [ 3 hozzászólás ] 
Szerző Üzenet
 Hozzászólás témája: Registrációs Menü!
HozzászólásElküldve: 2015.02.26. 19:46 
Offline
Jómunkásember
Avatar

Csatlakozott: 2014.10.31. 14:51
Hozzászólások: 462
Megköszönt másnak: 73 alkalommal
Megköszönték neki: 29 alkalommal
Helló..
Valaki javítaná? :shock:
SMA Forráskód: [ Mindet kijelol ]
  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <sqlx>
  4.  
  5. #define PLUGIN "New Plug-In"
  6. #define VERSION "1.0"
  7. #define AUTHOR "x"
  8.  
  9.  
  10. //regisztráció
  11. new bool:g_LoggedIn[33]
  12. new g_RegisterSelection[33]
  13. new g_szTempName[33][100]
  14. new g_szTempPassWord[33][100]
  15. new Handle:g_SqlTuple
  16. new bool:kerdezze[33] = true
  17.  
  18. //Mysql csatlakozás
  19. new Host[] = "mysql host"
  20. new User[] = "mysql felhasznev"
  21. new Pass[] = "mysql jelszo"
  22. new Db[] = "mysql adatbazis neve"
  23.  
  24. public plugin_init()
  25. {
  26. register_plugin(PLUGIN, VERSION, AUTHOR)
  27. register_clcmd("say /reg", "regiszraciofomenu")
  28. register_logevent("round_start", 2, "1=Round_Start")
  29. register_clcmd("FELHASZNALONEV", "cmdUsername")
  30. register_clcmd("JELSZO", "cmdPw")
  31. makeTuple()
  32. createTable()
  33. }
  34.  
  35.  
  36. public regiszraciofomenu(id)
  37. {
  38.  
  39. new szTemp[192]
  40. formatex(szTemp, charsmax(szTemp), "\y[SG]\r ~\y Regisztrációs Menü^n\rStátusz:\d %s",g_LoggedIn[id] ? "Bejelentkezve":"Kijelentkezve" )
  41. new menuLoginCreate = menu_create(szTemp, "menuLoginCreateHandler")
  42.  
  43. formatex(szTemp, charsmax(szTemp), "\w%s^n", g_LoggedIn[id] ? "Biztonsági mentés":"Nem regisztrálok")
  44. menu_additem(menuLoginCreate, szTemp, "0")
  45.  
  46. formatex(szTemp, charsmax(szTemp), "\w%s", g_LoggedIn[id] ? "Kijelentkezés":"Bejelentkezés")
  47.  
  48. menu_additem(menuLoginCreate, szTemp, "1")
  49. menu_additem(menuLoginCreate, "\yRegisztrA?ciAl", "2")
  50.  
  51. menu_setprop(menuLoginCreate, MPROP_EXIT, MEXIT_ALL);
  52. menu_setprop(menuLoginCreate, MPROP_PERPAGE, 7);
  53. menu_display(id, menuLoginCreate, 0);
  54. }
  55.  
  56. public menuLoginCreateHandler(id, menuLoginCreate, item)
  57. {
  58. if(item == MENU_EXIT)
  59. {
  60. menu_cancel(id);
  61. return PLUGIN_HANDLED;
  62. }
  63. new data[6], iName[64], access, callback
  64. menu_item_getinfo(menuLoginCreate, item, access, data, 5, iName, 63, callback)
  65.  
  66. new key = str_to_num(data)
  67.  
  68. switch(key)
  69. {
  70. case 0:
  71. {
  72. if(g_LoggedIn[id])
  73. {
  74. updateTable(id)
  75. print_color(id, "!g[SG]!t ~!y Sikeresen elkészítetted a!g biztonsági!y mentést.")
  76. }
  77. else if(g_LoggedIn[id] == false)
  78. {
  79. kerdezomenu(id)
  80. }
  81. }
  82. case 1:
  83. {
  84. if(!g_LoggedIn[id])
  85. {
  86. g_RegisterSelection[id] = 2
  87. client_cmd(id, "messagemode FELHASZNALONEV")
  88. }
  89. else if(g_LoggedIn[id])
  90. {
  91. g_LoggedIn[id] = false
  92. print_color(id, "!g[SG]!t ~!y Sikeresen kijelentkeztél.")
  93. }
  94. }
  95.  
  96. case 2:
  97. {
  98. if(!g_LoggedIn[id]) {
  99. g_RegisterSelection[id] = 1
  100. client_cmd(id, "messagemode FELHASZNALONEV")
  101. }
  102. else if(g_LoggedIn[id])
  103. {
  104. print_color(id, "!g[SG]!t ~!y Be vagy jelentkezve ezért nem regisztrálhatsz.")
  105. }
  106. }
  107. }
  108. return PLUGIN_CONTINUE
  109. }
  110.  
  111. public cmdUsername(id)
  112. {
  113. if(g_LoggedIn[id])
  114. {
  115. return PLUGIN_HANDLED
  116. }
  117.  
  118. read_args(g_szTempName[id], 99)
  119. remove_quotes(g_szTempName[id])
  120.  
  121. if(contain(g_szTempName[id], " ") != -1 || strlen(g_szTempName[id]) < 3)
  122. {
  123. print_color(id, "!g[SG]!t ~!y Hibás felhasználónév, próbáld meg még egyszer.")
  124. client_cmd(id, "messagemode FELHASZNALONEV")
  125.  
  126. return PLUGIN_HANDLED
  127. }
  128.  
  129. if(g_RegisterSelection[id] == 2 || g_RegisterSelection[id] == 1)
  130. {
  131. new ErrorCode
  132. new Error[512]
  133. new Handle:SqlConnection = SQL_Connect(g_SqlTuple, ErrorCode, Error, 511)
  134.  
  135. if(SqlConnection == Empty_Handle)
  136. {
  137. set_fail_state(Error)
  138. }
  139.  
  140. new Handle:Query = SQL_PrepareQuery(SqlConnection, "SELECT * FROM reg_system_kes WHERE username='%s'", g_szTempName[id])
  141.  
  142. if(!SQL_Execute(Query))
  143. {
  144. SQL_QueryError(Query, Error, 511)
  145. set_fail_state(Error)
  146. }
  147.  
  148. new iRowsFound = SQL_NumRows(Query)
  149.  
  150. switch(g_RegisterSelection[id])
  151. {
  152. case 1:
  153. {
  154. // No Resluts
  155. if(iRowsFound < 1)
  156. {
  157. client_cmd(id, "messagemode JELSZO")
  158. }
  159. // Username Found
  160. else
  161. {
  162. print_color(id, "![SG]!t ~!y Ez a felhasználónév már foglalt. Válassz másikat.")
  163. client_cmd(id, "messagemode FELHASZNALONEV")
  164. }
  165. }
  166. case 2:
  167. {
  168. // No Resluts
  169. if(iRowsFound < 1)
  170. {
  171. print_color(id, "!g[SG]!t ~!y Nincs ilyen felhasználónév az adatbázisban, próbáld meg egy másikkal.")
  172. client_cmd(id, "messagemode FELHASZNALONEV")
  173. }
  174. // Username Found
  175. else
  176. {
  177. client_cmd(id, "messagemode JELSZO")
  178. }
  179. }
  180. }
  181.  
  182.  
  183. SQL_FreeHandle(Query)
  184. SQL_FreeHandle(SqlConnection)
  185. }
  186.  
  187. return PLUGIN_CONTINUE
  188. }
  189.  
  190. public cmdPw(id)
  191. {
  192. // if user is already logged in stop him
  193. if(g_LoggedIn[id] == true)
  194. {
  195. return PLUGIN_HANDLED
  196. }
  197.  
  198. read_args(g_szTempPassWord[id], 99)
  199. remove_quotes(g_szTempPassWord[id])
  200.  
  201. if(contain(g_szTempPassWord[id], " ") != -1 || strlen(g_szTempPassWord[id]) < 3 || strlen(g_szTempName[id]) < 3)
  202. {
  203. print_color(id, "!g[SG]!t ~!y Érvénytelen jelszó. Válassz másikat.")
  204.  
  205. client_cmd(id, "messagemode JELSZO")
  206.  
  207. return PLUGIN_HANDLED
  208. }
  209.  
  210. switch(g_RegisterSelection[id])
  211. {
  212. // Register new User
  213. case 1:
  214. {
  215. new ErrorCode
  216. new Error[512]
  217. new Handle:SqlConnection = SQL_Connect(g_SqlTuple, ErrorCode, Error, 511)
  218.  
  219. if(SqlConnection == Empty_Handle)
  220. {
  221. set_fail_state(Error)
  222. }
  223.  
  224. new Handle:Query = SQL_PrepareQuery(SqlConnection, "INSERT INTO reg_system_kes VALUES('%s','%s','0','0', '0', '0', '0', '0', '0')", g_szTempName[id], g_szTempPassWord[id])
  225.  
  226. if(!SQL_Execute(Query))
  227. {
  228. SQL_QueryError(Query, Error, 511)
  229. set_fail_state(Error)
  230. }
  231. g_LoggedIn[id] = true
  232.  
  233. print_color(id, "!g[SG]!t ~!y Sikeres regisztráció! - Nevedet, jelszavadat:!t NE FELEJTSD EL - NE ADD MEG SENKINEK!")
  234. print_color(id, "!g[SG]!t ~!y Felhasználó neved:!t %s", g_szTempName[id])
  235. print_color(id, "!g[SG]!t ~!y Jelszavad:!t %s",g_szTempPassWord[id])
  236.  
  237. SQL_FreeHandle(Query)
  238. SQL_FreeHandle(SqlConnection)
  239. }
  240. // Login User
  241. case 2:
  242. {
  243. new ErrorCode
  244. new Error[512]
  245. new Handle:SqlConnection = SQL_Connect(g_SqlTuple, ErrorCode, Error, 511)
  246.  
  247. if(SqlConnection == Empty_Handle)
  248. {
  249. set_fail_state(Error)
  250. }
  251.  
  252. new Handle:Query = SQL_PrepareQuery(SqlConnection, "SELECT * FROM reg_system_kes WHERE username='%s'", g_szTempName[id])
  253.  
  254. if(!SQL_Execute(Query))
  255. {
  256. SQL_QueryError(Query, Error, 511)
  257. set_fail_state(Error)
  258. }
  259.  
  260. new szSqlPassword[100]
  261. SQL_ReadResult(Query, 1, szSqlPassword, 99)
  262.  
  263.  
  264. // if password is right
  265. if(equal(g_szTempPassWord[id], szSqlPassword))
  266. {
  267. // Kick Player who has logged in with same data
  268. new players[32], pnum, tempid
  269. get_players(players, pnum)
  270. for(new i; i<pnum; i++)
  271. {
  272. tempid = players[i]
  273. if(equal(g_szTempName[id], g_szTempName[tempid]) && id != tempid)
  274. {
  275. client_cmd(tempid, "disconnect")
  276. }
  277. }
  278. g_LoggedIn[id] = true
  279. print_color(id, "!g[SG]!t ~!y Szia!t %s!!y - Kellemes Idotöltést a szerveren!", g_szTempName[id])
  280.  
  281. }
  282. else
  283. {
  284. print_color(id, "!g[SG]!t ~!y Hibás jelszó, nézd meg hogy mindent helyesen írtál-e be.")
  285. client_cmd(id, "messagemode JELSZO")
  286. }
  287.  
  288. SQL_FreeHandle(Query)
  289. SQL_FreeHandle(SqlConnection)
  290. }
  291. }
  292.  
  293. return PLUGIN_CONTINUE
  294. }
  295.  
  296. public updateTable(id)
  297. {
  298. // Save Data
  299. if(g_LoggedIn[id])
  300. {
  301. new szTemp[512]
  302. format(szTemp,charsmax(szTemp),"UPDATE `reg_system_kes` SET `arany` = '%i', `ezust` = '%i', `szint` = '%i', `kes` = '%i', `tor` = '%i', `lila` = '%i', `xp` = '%i' WHERE `reg_system_kes`.`username` = '%s';", g_szTempName[id])
  303.  
  304. SQL_ThreadQuery(g_SqlTuple,"updateTableThread", szTemp)
  305. }
  306. }
  307.  
  308. public updateTableThread(FailState,Handle:Query,Error[],Errcode,Data[],DataSize)
  309. {
  310. // lots of error checking
  311. if(FailState == TQUERY_CONNECT_FAILED)
  312. return set_fail_state("Could not connect to SQL database.")
  313. else if(FailState == TQUERY_QUERY_FAILED)
  314. return set_fail_state("Query failed.")
  315.  
  316. if(Errcode)
  317. return log_amx("Error on query: %s",Error)
  318.  
  319. return PLUGIN_CONTINUE
  320. }
  321.  
  322.  
  323. public updateTableStatsThread(FailState,Handle:Query,Error[],Errcode,Data[],DataSize)
  324. {
  325. // lots of error checking
  326. if(FailState == TQUERY_CONNECT_FAILED)
  327. return set_fail_state("Nem tudtam letrehozni az adatbazist.")
  328. else if(FailState == TQUERY_QUERY_FAILED)
  329. return set_fail_state("Te fasz, elrontottal valamit.")
  330.  
  331. if(Errcode)
  332. return log_amx("Hibat dobtam: %s",Error)
  333.  
  334. return PLUGIN_CONTINUE
  335. }
  336.  
  337. public plugin_end()
  338. {
  339. SQL_FreeHandle(g_SqlTuple)
  340. }
  341.  
  342. public makeTuple()
  343. {
  344.  
  345. g_SqlTuple = SQL_MakeDbTuple(Host,User,Pass,Db)
  346. }
  347.  
  348. public createTable()
  349. {
  350.  
  351. SQL_ThreadQuery(g_SqlTuple,"createTableThread", "CREATE TABLE IF NOT EXISTS reg_system_kes (username varchar(32),password varchar(32), `arany` INT(255), `ezust` INT(255), `szint` INT(255), `kes` INT(11), `tor` INT(11), `lila` INT(11), `xp` INT(11) )")
  352. }
  353.  
  354. public createTableThread(FailState,Handle:Query,Error[],Errcode,Data[],DataSize)
  355. {
  356. if(FailState == TQUERY_CONNECT_FAILED)
  357. return set_fail_state("Nem tudtam csatlakozni az adatbazishoz.")
  358. else if(FailState == TQUERY_QUERY_FAILED)
  359. return set_fail_state("Te fasz, elbasztal valamit.")
  360.  
  361. if(Errcode)
  362. return log_amx("Hibat dobtam: %s",Error)
  363.  
  364. return PLUGIN_CONTINUE
  365. }
  366.  
  367. public kerdezomenu(id)
  368. {
  369. new menu = menu_create("\y[SG]\r ~\y Regisztrációs Menü^n\rVálassz:", "kerd_hand");
  370.  
  371. menu_additem(menu, "\yNe kérdezze többet", "", 0); // case 0
  372. menu_additem(menu, "\wKövetkező körben is kérdezze meg", "", 0); // case 1
  373.  
  374. menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
  375.  
  376. menu_display(id, menu, 0);
  377.  
  378. return PLUGIN_HANDLED;
  379. }
  380.  
  381. public kerd_hand(id, menu, item)
  382. {
  383. if(item == MENU_EXIT)
  384. {
  385. menu_cancel(id);
  386. return PLUGIN_HANDLED;
  387. }
  388.  
  389. new command[6], name[64], access, callback;
  390.  
  391. menu_item_getinfo(menu, item, access, command, sizeof command - 1, name, sizeof name - 1, callback);
  392.  
  393. switch(item)
  394. {
  395. case 0: {
  396. kerdezze[id] = false
  397.  
  398.  
  399.  
  400. }
  401. case 1: {
  402. kerdezze[id] = true
  403.  
  404. }
  405. }
  406.  
  407. menu_destroy(menu);
  408.  
  409. return PLUGIN_HANDLED;
  410. }
  411.  
  412. public round_start()
  413. {
  414. new players[32], pnum, tempid
  415. get_players(players, pnum)
  416.  
  417. for(new i; i<pnum; i++)
  418. {
  419. tempid = players[i]
  420. if(!g_LoggedIn[tempid])
  421. {
  422. if(kerdezze[tempid] == false)
  423. {
  424. show_menu(tempid, 0, "^n", 1)
  425. }
  426. else if(kerdezze[tempid] == true)
  427. {
  428. regiszraciofomenu(tempid)
  429. }
  430. }
  431.  
  432. }
  433. return PLUGIN_CONTINUE
  434. }
  435.  
  436. public client_disconnect(id)
  437. {
  438. updateTable(id)
  439. g_LoggedIn[id] = false
  440. }
  441.  
  442. public client_putinserver(id)
  443. {
  444. g_LoggedIn[id] = false
  445. set_task(3.0, "regiszraciofomenu", id)
  446.  
  447. }
  448.  
  449. stock print_color(const id, const input[], any:...)
  450. {
  451. new count = 1, players[32]
  452. static msg[191]
  453. vformat(msg, 190, input, 3)
  454.  
  455. replace_all(msg, 190, "!g", "^4")
  456. replace_all(msg, 190, "!y", "^1")
  457. replace_all(msg, 190, "!t", "^3")
  458. replace_all(msg, 190, "á", "A?")
  459. replace_all(msg, 190, "é", "A©")
  460. replace_all(msg, 190, "í", "A)
  461. replace_all(msg, 190, "ó", "Al")
  462. replace_all(msg, 190, "ö", "")
  463. replace_all(msg, 190, "o", "L‘")
  464. replace_all(msg, 190, "ú", "As")
  465. replace_all(msg, 190, "ü", "AL")
  466. replace_all(msg, 190, "u", "")
  467. replace_all(msg, 190, "Á", "")
  468. replace_all(msg, 190, "É", "A‰")
  469. replace_all(msg, 190, "Í", "AT")
  470. replace_all(msg, 190, "Ó", "A“")
  471. replace_all(msg, 190, "Ö", "A–")
  472. replace_all(msg, 190, "O", "")
  473. replace_all(msg, 190, "Ú", "")
  474. replace_all(msg, 190, "Ü", "As")
  475. replace_all(msg, 190, "U", "")
  476.  
  477. if (id) players[0] = id; else get_players(players, count, "ch")
  478. {
  479. for (new i = 0; i < count; i++)
  480. {
  481. if (is_user_connected(players[i]))
  482. {
  483. message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
  484. write_byte(players[i])
  485. write_string(msg)
  486. message_end()
  487. }
  488. }
  489. }
  490. return PLUGIN_HANDLED
  491. }


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Registrációs Menü!
HozzászólásElküldve: 2015.02.26. 19:50 
Offline
Jómunkásember
Avatar

Csatlakozott: 2014.09.27. 19:51
Hozzászólások: 411
Megköszönt másnak: 89 alkalommal
Megköszönték neki: 14 alkalommal
Próbáld
SMA Forráskód: [ Mindet kijelol ]
  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <sqlx>
  4.  
  5. #define PLUGIN "New Plug-In"
  6. #define VERSION "1.0"
  7. #define AUTHOR "x"
  8.  
  9.  
  10. //regisztráció
  11. new bool:g_LoggedIn[33]
  12. new g_RegisterSelection[33]
  13. new g_szTempName[33][100]
  14. new g_szTempPassWord[33][100]
  15. new Handle:g_SqlTuple
  16. new bool:kerdezze[33] = true
  17.  
  18. //Mysql csatlakozás
  19. new Host[] = "mysql host"
  20. new User[] = "mysql felhasznev"
  21. new Pass[] = "mysql jelszo"
  22. new Db[] = "mysql adatbazis neve"
  23.  
  24. public plugin_init()
  25. {
  26. register_plugin(PLUGIN, VERSION, AUTHOR)
  27. register_clcmd("say /reg", "regiszraciofomenu")
  28. register_logevent("round_start", 2, "1=Round_Start")
  29. register_clcmd("FELHASZNALONEV", "cmdUsername")
  30. register_clcmd("JELSZO", "cmdPw")
  31. makeTuple()
  32. createTable()
  33. }
  34.  
  35.  
  36. public regiszraciofomenu(id)
  37. {
  38.  
  39. new szTemp[192]
  40. formatex(szTemp, charsmax(szTemp), "\y[SG]\r ~\y Regisztrációs Menü^n\rStátusz:\d %s",g_LoggedIn[id] ? "Bejelentkezve":"Kijelentkezve" )
  41. new menuLoginCreate = menu_create(szTemp, "menuLoginCreateHandler")
  42.  
  43. formatex(szTemp, charsmax(szTemp), "\w%s^n", g_LoggedIn[id] ? "Biztonsági mentés":"Nem regisztrálok")
  44. menu_additem(menuLoginCreate, szTemp, "0")
  45.  
  46. formatex(szTemp, charsmax(szTemp), "\w%s", g_LoggedIn[id] ? "Kijelentkezés":"Bejelentkezés")
  47.  
  48. menu_additem(menuLoginCreate, szTemp, "1")
  49. menu_additem(menuLoginCreate, "\yRegisztrA?ciAl", "2")
  50.  
  51. menu_setprop(menuLoginCreate, MPROP_EXIT, MEXIT_ALL);
  52. menu_setprop(menuLoginCreate, MPROP_PERPAGE, 7);
  53. menu_display(id, menuLoginCreate, 0);
  54. }
  55.  
  56. public menuLoginCreateHandler(id, menuLoginCreate, item)
  57. {
  58. if(item == MENU_EXIT)
  59. {
  60. menu_cancel(id);
  61. return PLUGIN_HANDLED;
  62. }
  63. new data[6], iName[64], access, callback
  64. menu_item_getinfo(menuLoginCreate, item, access, data, 5, iName, 63, callback)
  65.  
  66. new key = str_to_num(data)
  67.  
  68. switch(key)
  69. {
  70. case 0:
  71. {
  72. if(g_LoggedIn[id])
  73. {
  74. updateTable(id)
  75. print_color(id, "!g[SG]!t ~!y Sikeresen elkészítetted a!g biztonsági!y mentést.")
  76. }
  77. else if(g_LoggedIn[id] == false)
  78. {
  79. kerdezomenu(id)
  80. }
  81. }
  82. case 1:
  83. {
  84. if(!g_LoggedIn[id])
  85. {
  86. g_RegisterSelection[id] = 2
  87. client_cmd(id, "messagemode FELHASZNALONEV")
  88. }
  89. else if(g_LoggedIn[id])
  90. {
  91. g_LoggedIn[id] = false
  92. print_color(id, "!g[SG]!t ~!y Sikeresen kijelentkeztél.")
  93. }
  94. }
  95.  
  96. case 2:
  97. {
  98. if(!g_LoggedIn[id]) {
  99. g_RegisterSelection[id] = 1
  100. client_cmd(id, "messagemode FELHASZNALONEV")
  101. }
  102. else if(g_LoggedIn[id])
  103. {
  104. print_color(id, "!g[SG]!t ~!y Be vagy jelentkezve ezért nem regisztrálhatsz.")
  105. }
  106. }
  107. }
  108. return PLUGIN_CONTINUE
  109. }
  110.  
  111. public cmdUsername(id)
  112. {
  113. if(g_LoggedIn[id])
  114. {
  115. return PLUGIN_HANDLED
  116. }
  117.  
  118. read_args(g_szTempName[id], 99)
  119. remove_quotes(g_szTempName[id])
  120.  
  121. if(contain(g_szTempName[id], " ") != -1 || strlen(g_szTempName[id]) < 3)
  122. {
  123. print_color(id, "!g[SG]!t ~!y Hibás felhasználónév, próbáld meg még egyszer.")
  124. client_cmd(id, "messagemode FELHASZNALONEV")
  125.  
  126. return PLUGIN_HANDLED
  127. }
  128.  
  129. if(g_RegisterSelection[id] == 2 || g_RegisterSelection[id] == 1)
  130. {
  131. new ErrorCode
  132. new Error[512]
  133. new Handle:SqlConnection = SQL_Connect(g_SqlTuple, ErrorCode, Error, 511)
  134.  
  135. if(SqlConnection == Empty_Handle)
  136. {
  137. set_fail_state(Error)
  138. }
  139.  
  140. new Handle:Query = SQL_PrepareQuery(SqlConnection, "SELECT * FROM reg_system_kes WHERE username='%s'", g_szTempName[id])
  141.  
  142. if(!SQL_Execute(Query))
  143. {
  144. SQL_QueryError(Query, Error, 511)
  145. set_fail_state(Error)
  146. }
  147.  
  148. new iRowsFound = SQL_NumRows(Query)
  149.  
  150. switch(g_RegisterSelection[id])
  151. {
  152. case 1:
  153. {
  154. // No Resluts
  155. if(iRowsFound < 1)
  156. {
  157. client_cmd(id, "messagemode JELSZO")
  158. }
  159. // Username Found
  160. else
  161. {
  162. print_color(id, "![SG]!t ~!y Ez a felhasználónév már foglalt. Válassz másikat.")
  163. client_cmd(id, "messagemode FELHASZNALONEV")
  164. }
  165. }
  166. case 2:
  167. {
  168. // No Resluts
  169. if(iRowsFound < 1)
  170. {
  171. print_color(id, "!g[SG]!t ~!y Nincs ilyen felhasználónév az adatbázisban, próbáld meg egy másikkal.")
  172. client_cmd(id, "messagemode FELHASZNALONEV")
  173. }
  174. // Username Found
  175. else
  176. {
  177. client_cmd(id, "messagemode JELSZO")
  178. }
  179. }
  180. }
  181.  
  182.  
  183. SQL_FreeHandle(Query)
  184. SQL_FreeHandle(SqlConnection)
  185. }
  186.  
  187. return PLUGIN_CONTINUE
  188. }
  189.  
  190. public cmdPw(id)
  191. {
  192. // if user is already logged in stop him
  193. if(g_LoggedIn[id] == true)
  194. {
  195. return PLUGIN_HANDLED
  196. }
  197.  
  198. read_args(g_szTempPassWord[id], 99)
  199. remove_quotes(g_szTempPassWord[id])
  200.  
  201. if(contain(g_szTempPassWord[id], " ") != -1 || strlen(g_szTempPassWord[id]) < 3 || strlen(g_szTempName[id]) < 3)
  202. {
  203. print_color(id, "!g[SG]!t ~!y Érvénytelen jelszó. Válassz másikat.")
  204.  
  205. client_cmd(id, "messagemode JELSZO")
  206.  
  207. return PLUGIN_HANDLED
  208. }
  209.  
  210. switch(g_RegisterSelection[id])
  211. {
  212. // Register new User
  213. case 1:
  214. {
  215. new ErrorCode
  216. new Error[512]
  217. new Handle:SqlConnection = SQL_Connect(g_SqlTuple, ErrorCode, Error, 511)
  218.  
  219. if(SqlConnection == Empty_Handle)
  220. {
  221. set_fail_state(Error)
  222. }
  223.  
  224. new Handle:Query = SQL_PrepareQuery(SqlConnection, "INSERT INTO reg_system_kes VALUES('%s','%s','0','0', '0', '0', '0', '0', '0')", g_szTempName[id], g_szTempPassWord[id])
  225.  
  226. if(!SQL_Execute(Query))
  227. {
  228. SQL_QueryError(Query, Error, 511)
  229. set_fail_state(Error)
  230. }
  231. g_LoggedIn[id] = true
  232.  
  233. print_color(id, "!g[SG]!t ~!y Sikeres regisztráció! - Nevedet, jelszavadat:!t NE FELEJTSD EL - NE ADD MEG SENKINEK!")
  234. print_color(id, "!g[SG]!t ~!y Felhasználó neved:!t %s", g_szTempName[id])
  235. print_color(id, "!g[SG]!t ~!y Jelszavad:!t %s",g_szTempPassWord[id])
  236.  
  237. SQL_FreeHandle(Query)
  238. SQL_FreeHandle(SqlConnection)
  239. }
  240. // Login User
  241. case 2:
  242. {
  243. new ErrorCode
  244. new Error[512]
  245. new Handle:SqlConnection = SQL_Connect(g_SqlTuple, ErrorCode, Error, 511)
  246.  
  247. if(SqlConnection == Empty_Handle)
  248. {
  249. set_fail_state(Error)
  250. }
  251.  
  252. new Handle:Query = SQL_PrepareQuery(SqlConnection, "SELECT * FROM reg_system_kes WHERE username='%s'", g_szTempName[id])
  253.  
  254. if(!SQL_Execute(Query))
  255. {
  256. SQL_QueryError(Query, Error, 511)
  257. set_fail_state(Error)
  258. }
  259.  
  260. new szSqlPassword[100]
  261. SQL_ReadResult(Query, 1, szSqlPassword, 99)
  262.  
  263.  
  264. // if password is right
  265. if(equal(g_szTempPassWord[id], szSqlPassword))
  266. {
  267. // Kick Player who has logged in with same data
  268. new players[32], pnum, tempid
  269. get_players(players, pnum)
  270. for(new i; i<pnum; i++)
  271. {
  272. tempid = players[i]
  273. if(equal(g_szTempName[id], g_szTempName[tempid]) && id != tempid)
  274. {
  275. client_cmd(tempid, "disconnect")
  276. }
  277. }
  278. g_LoggedIn[id] = true
  279. print_color(id, "!g[SG]!t ~!y Szia!t %s!!y - Kellemes Idotöltést a szerveren!", g_szTempName[id])
  280.  
  281. }
  282. else
  283. {
  284. print_color(id, "!g[SG]!t ~!y Hibás jelszó, nézd meg hogy mindent helyesen írtál-e be.")
  285. client_cmd(id, "messagemode JELSZO")
  286. }
  287.  
  288. SQL_FreeHandle(Query)
  289. SQL_FreeHandle(SqlConnection)
  290. }
  291. }
  292.  
  293. return PLUGIN_CONTINUE
  294. }
  295.  
  296. public updateTable(id)
  297. {
  298. // Save Data
  299. if(g_LoggedIn[id])
  300. {
  301. new szTemp[512]
  302. format(szTemp,charsmax(szTemp),"UPDATE `reg_system_kes` SET `arany` = '%i', `ezust` = '%i', `szint` = '%i', `kes` = '%i', `tor` = '%i', `lila` = '%i', `xp` = '%i' WHERE `reg_system_kes`.`username` = '%s';", g_szTempName[id])
  303.  
  304. SQL_ThreadQuery(g_SqlTuple,"updateTableThread", szTemp)
  305. }
  306. }
  307.  
  308. public updateTableThread(FailState,Handle:Query,Error[],Errcode,Data[],DataSize)
  309. {
  310. // lots of error checking
  311. if(FailState == TQUERY_CONNECT_FAILED)
  312. return set_fail_state("Could not connect to SQL database.")
  313. else if(FailState == TQUERY_QUERY_FAILED)
  314. return set_fail_state("Query failed.")
  315.  
  316. if(Errcode)
  317. return log_amx("Error on query: %s",Error)
  318.  
  319. return PLUGIN_CONTINUE
  320. }
  321.  
  322.  
  323. public updateTableStatsThread(FailState,Handle:Query,Error[],Errcode,Data[],DataSize)
  324. {
  325. // lots of error checking
  326. if(FailState == TQUERY_CONNECT_FAILED)
  327. return set_fail_state("Nem tudtam letrehozni az adatbazist.")
  328. else if(FailState == TQUERY_QUERY_FAILED)
  329. return set_fail_state("Te fasz, elrontottal valamit.")
  330.  
  331. if(Errcode)
  332. return log_amx("Hibat dobtam: %s",Error)
  333.  
  334. return PLUGIN_CONTINUE
  335. }
  336.  
  337. public plugin_end()
  338. {
  339. SQL_FreeHandle(g_SqlTuple)
  340. }
  341.  
  342. public makeTuple()
  343. {
  344.  
  345. g_SqlTuple = SQL_MakeDbTuple(Host,User,Pass,Db)
  346. }
  347.  
  348. public createTable()
  349. {
  350.  
  351. SQL_ThreadQuery(g_SqlTuple,"createTableThread", "CREATE TABLE IF NOT EXISTS reg_system_kes (username varchar(32),password varchar(32), `arany` INT(255), `ezust` INT(255), `szint` INT(255), `kes` INT(11), `tor` INT(11), `lila` INT(11), `xp` INT(11) )")
  352. }
  353.  
  354. public createTableThread(FailState,Handle:Query,Error[],Errcode,Data[],DataSize)
  355. {
  356. if(FailState == TQUERY_CONNECT_FAILED)
  357. return set_fail_state("Nem tudtam csatlakozni az adatbazishoz.")
  358. else if(FailState == TQUERY_QUERY_FAILED)
  359. return set_fail_state("Te fasz, elbasztal valamit.")
  360.  
  361. if(Errcode)
  362. return log_amx("Hibat dobtam: %s",Error)
  363.  
  364. return PLUGIN_CONTINUE
  365. }
  366.  
  367. public kerdezomenu(id)
  368. {
  369. new menu = menu_create("\y[SG]\r ~\y Regisztrációs Menü^n\rVálassz:", "kerd_hand");
  370.  
  371. menu_additem(menu, "\yNe kérdezze többet", "", 0); // case 0
  372. menu_additem(menu, "\wKövetkező körben is kérdezze meg", "", 0); // case 1
  373.  
  374. menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
  375.  
  376. menu_display(id, menu, 0);
  377.  
  378. return PLUGIN_HANDLED;
  379. }
  380.  
  381. public kerd_hand(id, menu, item)
  382. {
  383. if(item == MENU_EXIT)
  384. {
  385. menu_cancel(id);
  386. return PLUGIN_HANDLED;
  387. }
  388.  
  389. new command[6], name[64], access, callback;
  390.  
  391. menu_item_getinfo(menu, item, access, command, sizeof command - 1, name, sizeof name - 1, callback);
  392.  
  393. switch(item)
  394. {
  395. case 0: {
  396. kerdezze[id] = false
  397.  
  398.  
  399.  
  400. }
  401. case 1: {
  402. kerdezze[id] = true
  403.  
  404. }
  405. }
  406.  
  407. menu_destroy(menu);
  408.  
  409. return PLUGIN_HANDLED;
  410. }
  411.  
  412. public round_start()
  413. {
  414. new players[32], pnum, tempid
  415. get_players(players, pnum)
  416.  
  417. for(new i; i<pnum; i++)
  418. {
  419. tempid = players[i]
  420. if(!g_LoggedIn[tempid])
  421. {
  422. if(kerdezze[tempid] == false)
  423. {
  424. show_menu(tempid, 0, "^n", 1)
  425. }
  426. else if(kerdezze[tempid] == true)
  427. {
  428. regiszraciofomenu(tempid)
  429. }
  430. }
  431.  
  432. }
  433. return PLUGIN_CONTINUE
  434. }
  435.  
  436. public client_disconnect(id)
  437. {
  438. updateTable(id)
  439. g_LoggedIn[id] = false
  440. }
  441.  
  442. public client_putinserver(id)
  443. {
  444. g_LoggedIn[id] = false
  445. set_task(3.0, "regiszraciofomenu", id)
  446.  
  447. }
  448.  
  449. stock print_color(const id, const input[], any:...)
  450. {
  451. new count = 1, players[32]
  452. static msg[191]
  453. vformat(msg, 190, input, 3)
  454.  
  455. replace_all(msg, 190, "!g", "^4")
  456. replace_all(msg, 190, "!y", "^1")
  457. replace_all(msg, 190, "!t", "^3")
  458. replace_all(msg, 190, "á", "A?")
  459. replace_all(msg, 190, "é", "A©")
  460. replace_all(msg, 190, "í", "A")
  461. replace_all(msg, 190, "ó", "Al")
  462. replace_all(msg, 190, "ö", "A¶")
  463. replace_all(msg, 190, "o", "L‘")
  464. replace_all(msg, 190, "ú", "As")
  465. replace_all(msg, 190, "ü", "AL")
  466. replace_all(msg, 190, "u", "L±")
  467. replace_all(msg, 190, "Á", "A")
  468. replace_all(msg, 190, "É", "A‰")
  469. replace_all(msg, 190, "Í", "AT")
  470. replace_all(msg, 190, "Ó", "A“")
  471. replace_all(msg, 190, "Ö", "A–")
  472. replace_all(msg, 190, "O", "L")
  473. replace_all(msg, 190, "Ú", "Aš")
  474. replace_all(msg, 190, "Ü", "As")
  475. replace_all(msg, 190, "U", "L°")
  476.  
  477. if (id) players[0] = id; else get_players(players, count, "ch")
  478. {
  479. for (new i = 0; i < count; i++)
  480. {
  481. if (is_user_connected(players[i]))
  482. {
  483. message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
  484. write_byte(players[i])
  485. write_string(msg)
  486. message_end()
  487. }
  488. }
  489. }
  490. return PLUGIN_HANDLED
  491. }


A hozzászólást 1 alkalommal szerkesztették, utoljára PiStA99 2015.02.26. 19:51-kor.

Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Registrációs Menü!
HozzászólásElküldve: 2015.02.26. 19:51 
Offline
Fanatikus
Avatar

Csatlakozott: 2015.01.19. 20:54
Hozzászólások: 170
Megköszönt másnak: 13 alkalommal
Megköszönték neki: 3 alkalommal
try:
SMA Forráskód: [ Mindet kijelol ]
  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <sqlx>
  4.  
  5. #define PLUGIN "New Plug-In"
  6. #define VERSION "1.0"
  7. #define AUTHOR "x"
  8.  
  9.  
  10. //regisztráció
  11. new bool:g_LoggedIn[33]
  12. new g_RegisterSelection[33]
  13. new g_szTempName[33][100]
  14. new g_szTempPassWord[33][100]
  15. new Handle:g_SqlTuple
  16. new bool:kerdezze[33] = true
  17.  
  18. //Mysql csatlakozás
  19. new Host[] = "mysql host"
  20. new User[] = "mysql felhasznev"
  21. new Pass[] = "mysql jelszo"
  22. new Db[] = "mysql adatbazis neve"
  23.  
  24. public plugin_init()
  25. {
  26. register_plugin(PLUGIN, VERSION, AUTHOR)
  27. register_clcmd("say /reg", "regiszraciofomenu")
  28. register_logevent("round_start", 2, "1=Round_Start")
  29. register_clcmd("FELHASZNALONEV", "cmdUsername")
  30. register_clcmd("JELSZO", "cmdPw")
  31. makeTuple()
  32. createTable()
  33. }
  34.  
  35.  
  36. public regiszraciofomenu(id)
  37. {
  38.  
  39. new szTemp[192]
  40. formatex(szTemp, charsmax(szTemp), "\y[SG]\r ~\y Regisztrációs Menü^n\rStátusz:\d %s",g_LoggedIn[id] ? "Bejelentkezve":"Kijelentkezve" )
  41. new menuLoginCreate = menu_create(szTemp, "menuLoginCreateHandler")
  42.  
  43. formatex(szTemp, charsmax(szTemp), "\w%s^n", g_LoggedIn[id] ? "Biztonsági mentés":"Nem regisztrálok")
  44. menu_additem(menuLoginCreate, szTemp, "0")
  45.  
  46. formatex(szTemp, charsmax(szTemp), "\w%s", g_LoggedIn[id] ? "Kijelentkezés":"Bejelentkezés")
  47.  
  48. menu_additem(menuLoginCreate, szTemp, "1")
  49. menu_additem(menuLoginCreate, "\yRegisztrA?ciAl", "2")
  50.  
  51. menu_setprop(menuLoginCreate, MPROP_EXIT, MEXIT_ALL);
  52. menu_setprop(menuLoginCreate, MPROP_PERPAGE, 7);
  53. menu_display(id, menuLoginCreate, 0);
  54. }
  55.  
  56. public menuLoginCreateHandler(id, menuLoginCreate, item)
  57. {
  58. if(item == MENU_EXIT)
  59. {
  60. menu_cancel(id);
  61. return PLUGIN_HANDLED;
  62. }
  63. new data[6], iName[64], access, callback
  64. menu_item_getinfo(menuLoginCreate, item, access, data, 5, iName, 63, callback)
  65.  
  66. new key = str_to_num(data)
  67.  
  68. switch(key)
  69. {
  70. case 0:
  71. {
  72. if(g_LoggedIn[id])
  73. {
  74. updateTable(id)
  75. print_color(id, "!g[SG]!t ~!y Sikeresen elkészítetted a!g biztonsági!y mentést.")
  76. }
  77. else if(g_LoggedIn[id] == false)
  78. {
  79. kerdezomenu(id)
  80. }
  81. }
  82. case 1:
  83. {
  84. if(!g_LoggedIn[id])
  85. {
  86. g_RegisterSelection[id] = 2
  87. client_cmd(id, "messagemode FELHASZNALONEV")
  88. }
  89. else if(g_LoggedIn[id])
  90. {
  91. g_LoggedIn[id] = false
  92. print_color(id, "!g[SG]!t ~!y Sikeresen kijelentkeztél.")
  93. }
  94. }
  95.  
  96. case 2:
  97. {
  98. if(!g_LoggedIn[id]) {
  99. g_RegisterSelection[id] = 1
  100. client_cmd(id, "messagemode FELHASZNALONEV")
  101. }
  102. else if(g_LoggedIn[id])
  103. {
  104. print_color(id, "!g[SG]!t ~!y Be vagy jelentkezve ezért nem regisztrálhatsz.")
  105. }
  106. }
  107. }
  108. return PLUGIN_CONTINUE
  109. }
  110.  
  111. public cmdUsername(id)
  112. {
  113. if(g_LoggedIn[id])
  114. {
  115. return PLUGIN_HANDLED
  116. }
  117.  
  118. read_args(g_szTempName[id], 99)
  119. remove_quotes(g_szTempName[id])
  120.  
  121. if(contain(g_szTempName[id], " ") != -1 || strlen(g_szTempName[id]) < 3)
  122. {
  123. print_color(id, "!g[SG]!t ~!y Hibás felhasználónév, próbáld meg még egyszer.")
  124. client_cmd(id, "messagemode FELHASZNALONEV")
  125.  
  126. return PLUGIN_HANDLED
  127. }
  128.  
  129. if(g_RegisterSelection[id] == 2 || g_RegisterSelection[id] == 1)
  130. {
  131. new ErrorCode
  132. new Error[512]
  133. new Handle:SqlConnection = SQL_Connect(g_SqlTuple, ErrorCode, Error, 511)
  134.  
  135. if(SqlConnection == Empty_Handle)
  136. {
  137. set_fail_state(Error)
  138. }
  139.  
  140. new Handle:Query = SQL_PrepareQuery(SqlConnection, "SELECT * FROM reg_system_kes WHERE username='%s'", g_szTempName[id])
  141.  
  142. if(!SQL_Execute(Query))
  143. {
  144. SQL_QueryError(Query, Error, 511)
  145. set_fail_state(Error)
  146. }
  147.  
  148. new iRowsFound = SQL_NumRows(Query)
  149.  
  150. switch(g_RegisterSelection[id])
  151. {
  152. case 1:
  153. {
  154. // No Resluts
  155. if(iRowsFound < 1)
  156. {
  157. client_cmd(id, "messagemode JELSZO")
  158. }
  159. // Username Found
  160. else
  161. {
  162. print_color(id, "![SG]!t ~!y Ez a felhasználónév már foglalt. Válassz másikat.")
  163. client_cmd(id, "messagemode FELHASZNALONEV")
  164. }
  165. }
  166. case 2:
  167. {
  168. // No Resluts
  169. if(iRowsFound < 1)
  170. {
  171. print_color(id, "!g[SG]!t ~!y Nincs ilyen felhasználónév az adatbázisban, próbáld meg egy másikkal.")
  172. client_cmd(id, "messagemode FELHASZNALONEV")
  173. }
  174. // Username Found
  175. else
  176. {
  177. client_cmd(id, "messagemode JELSZO")
  178. }
  179. }
  180. }
  181.  
  182.  
  183. SQL_FreeHandle(Query)
  184. SQL_FreeHandle(SqlConnection)
  185. }
  186.  
  187. return PLUGIN_CONTINUE
  188. }
  189.  
  190. public cmdPw(id)
  191. {
  192. // if user is already logged in stop him
  193. if(g_LoggedIn[id] == true)
  194. {
  195. return PLUGIN_HANDLED
  196. }
  197.  
  198. read_args(g_szTempPassWord[id], 99)
  199. remove_quotes(g_szTempPassWord[id])
  200.  
  201. if(contain(g_szTempPassWord[id], " ") != -1 || strlen(g_szTempPassWord[id]) < 3 || strlen(g_szTempName[id]) < 3)
  202. {
  203. print_color(id, "!g[SG]!t ~!y Érvénytelen jelszó. Válassz másikat.")
  204.  
  205. client_cmd(id, "messagemode JELSZO")
  206.  
  207. return PLUGIN_HANDLED
  208. }
  209.  
  210. switch(g_RegisterSelection[id])
  211. {
  212. // Register new User
  213. case 1:
  214. {
  215. new ErrorCode
  216. new Error[512]
  217. new Handle:SqlConnection = SQL_Connect(g_SqlTuple, ErrorCode, Error, 511)
  218.  
  219. if(SqlConnection == Empty_Handle)
  220. {
  221. set_fail_state(Error)
  222. }
  223.  
  224. new Handle:Query = SQL_PrepareQuery(SqlConnection, "INSERT INTO reg_system_kes VALUES('%s','%s','0','0', '0', '0', '0', '0', '0')", g_szTempName[id], g_szTempPassWord[id])
  225.  
  226. if(!SQL_Execute(Query))
  227. {
  228. SQL_QueryError(Query, Error, 511)
  229. set_fail_state(Error)
  230. }
  231. g_LoggedIn[id] = true
  232.  
  233. print_color(id, "!g[SG]!t ~!y Sikeres regisztráció! - Nevedet, jelszavadat:!t NE FELEJTSD EL - NE ADD MEG SENKINEK!")
  234. print_color(id, "!g[SG]!t ~!y Felhasználó neved:!t %s", g_szTempName[id])
  235. print_color(id, "!g[SG]!t ~!y Jelszavad:!t %s",g_szTempPassWord[id])
  236.  
  237. SQL_FreeHandle(Query)
  238. SQL_FreeHandle(SqlConnection)
  239. }
  240. // Login User
  241. case 2:
  242. {
  243. new ErrorCode
  244. new Error[512]
  245. new Handle:SqlConnection = SQL_Connect(g_SqlTuple, ErrorCode, Error, 511)
  246.  
  247. if(SqlConnection == Empty_Handle)
  248. {
  249. set_fail_state(Error)
  250. }
  251.  
  252. new Handle:Query = SQL_PrepareQuery(SqlConnection, "SELECT * FROM reg_system_kes WHERE username='%s'", g_szTempName[id])
  253.  
  254. if(!SQL_Execute(Query))
  255. {
  256. SQL_QueryError(Query, Error, 511)
  257. set_fail_state(Error)
  258. }
  259.  
  260. new szSqlPassword[100]
  261. SQL_ReadResult(Query, 1, szSqlPassword, 99)
  262.  
  263.  
  264. // if password is right
  265. if(equal(g_szTempPassWord[id], szSqlPassword))
  266. {
  267. // Kick Player who has logged in with same data
  268. new players[32], pnum, tempid
  269. get_players(players, pnum)
  270. for(new i; i<pnum; i++)
  271. {
  272. tempid = players[i]
  273. if(equal(g_szTempName[id], g_szTempName[tempid]) && id != tempid)
  274. {
  275. client_cmd(tempid, "disconnect")
  276. }
  277. }
  278. g_LoggedIn[id] = true
  279. print_color(id, "!g[SG]!t ~!y Szia!t %s!!y - Kellemes Idotöltést a szerveren!", g_szTempName[id])
  280.  
  281. }
  282. else
  283. {
  284. print_color(id, "!g[SG]!t ~!y Hibás jelszó, nézd meg hogy mindent helyesen írtál-e be.")
  285. client_cmd(id, "messagemode JELSZO")
  286. }
  287.  
  288. SQL_FreeHandle(Query)
  289. SQL_FreeHandle(SqlConnection)
  290. }
  291. }
  292.  
  293. return PLUGIN_CONTINUE
  294. }
  295.  
  296. public updateTable(id)
  297. {
  298. // Save Data
  299. if(g_LoggedIn[id])
  300. {
  301. new szTemp[512]
  302. format(szTemp,charsmax(szTemp),"UPDATE `reg_system_kes` SET `arany` = '%i', `ezust` = '%i', `szint` = '%i', `kes` = '%i', `tor` = '%i', `lila` = '%i', `xp` = '%i' WHERE `reg_system_kes`.`username` = '%s';", g_szTempName[id])
  303.  
  304. SQL_ThreadQuery(g_SqlTuple,"updateTableThread", szTemp)
  305. }
  306. }
  307.  
  308. public updateTableThread(FailState,Handle:Query,Error[],Errcode,Data[],DataSize)
  309. {
  310. // lots of error checking
  311. if(FailState == TQUERY_CONNECT_FAILED)
  312. return set_fail_state("Could not connect to SQL database.")
  313. else if(FailState == TQUERY_QUERY_FAILED)
  314. return set_fail_state("Query failed.")
  315.  
  316. if(Errcode)
  317. return log_amx("Error on query: %s",Error)
  318.  
  319. return PLUGIN_CONTINUE
  320. }
  321.  
  322.  
  323. public updateTableStatsThread(FailState,Handle:Query,Error[],Errcode,Data[],DataSize)
  324. {
  325. // lots of error checking
  326. if(FailState == TQUERY_CONNECT_FAILED)
  327. return set_fail_state("Nem tudtam letrehozni az adatbazist.")
  328. else if(FailState == TQUERY_QUERY_FAILED)
  329. return set_fail_state("Te fasz, elrontottal valamit.")
  330.  
  331. if(Errcode)
  332. return log_amx("Hibat dobtam: %s",Error)
  333.  
  334. return PLUGIN_CONTINUE
  335. }
  336.  
  337. public plugin_end()
  338. {
  339. SQL_FreeHandle(g_SqlTuple)
  340. }
  341.  
  342. public makeTuple()
  343. {
  344.  
  345. g_SqlTuple = SQL_MakeDbTuple(Host,User,Pass,Db)
  346. }
  347.  
  348. public createTable()
  349. {
  350.  
  351. SQL_ThreadQuery(g_SqlTuple,"createTableThread", "CREATE TABLE IF NOT EXISTS reg_system_kes (username varchar(32),password varchar(32), `arany` INT(255), `ezust` INT(255), `szint` INT(255), `kes` INT(11), `tor` INT(11), `lila` INT(11), `xp` INT(11) )")
  352. }
  353.  
  354. public createTableThread(FailState,Handle:Query,Error[],Errcode,Data[],DataSize)
  355. {
  356. if(FailState == TQUERY_CONNECT_FAILED)
  357. return set_fail_state("Nem tudtam csatlakozni az adatbazishoz.")
  358. else if(FailState == TQUERY_QUERY_FAILED)
  359. return set_fail_state("Te fasz, elbasztal valamit.")
  360.  
  361. if(Errcode)
  362. return log_amx("Hibat dobtam: %s",Error)
  363.  
  364. return PLUGIN_CONTINUE
  365. }
  366.  
  367. public kerdezomenu(id)
  368. {
  369. new menu = menu_create("\y[SG]\r ~\y Regisztrációs Menü^n\rVálassz:", "kerd_hand");
  370.  
  371. menu_additem(menu, "\yNe kérdezze többet", "", 0); // case 0
  372. menu_additem(menu, "\wKövetkező körben is kérdezze meg", "", 0); // case 1
  373.  
  374. menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
  375.  
  376. menu_display(id, menu, 0);
  377.  
  378. return PLUGIN_HANDLED;
  379. }
  380.  
  381. public kerd_hand(id, menu, item)
  382. {
  383. if(item == MENU_EXIT)
  384. {
  385. menu_cancel(id);
  386. return PLUGIN_HANDLED;
  387. }
  388.  
  389. new command[6], name[64], access, callback;
  390.  
  391. menu_item_getinfo(menu, item, access, command, sizeof command - 1, name, sizeof name - 1, callback);
  392.  
  393. switch(item)
  394. {
  395. case 0: {
  396. kerdezze[id] = false
  397.  
  398.  
  399.  
  400. }
  401. case 1: {
  402. kerdezze[id] = true
  403.  
  404. }
  405. }
  406.  
  407. menu_destroy(menu);
  408.  
  409. return PLUGIN_HANDLED;
  410. }
  411.  
  412. public round_start()
  413. {
  414. new players[32], pnum, tempid
  415. get_players(players, pnum)
  416.  
  417. for(new i; i<pnum; i++)
  418. {
  419. tempid = players[i]
  420. if(!g_LoggedIn[tempid])
  421. {
  422. if(kerdezze[tempid] == false)
  423. {
  424. show_menu(tempid, 0, "^n", 1)
  425. }
  426. else if(kerdezze[tempid] == true)
  427. {
  428. regiszraciofomenu(tempid)
  429. }
  430. }
  431.  
  432. }
  433. return PLUGIN_CONTINUE
  434. }
  435.  
  436. public client_disconnect(id)
  437. {
  438. updateTable(id)
  439. g_LoggedIn[id] = false
  440. }
  441.  
  442. public client_putinserver(id)
  443. {
  444. g_LoggedIn[id] = false
  445. set_task(3.0, "regiszraciofomenu", id)
  446.  
  447. }
  448.  
  449. stock print_color(const id, const input[], any:...)
  450. {
  451. new count = 1, players[32]
  452. static msg[191]
  453. vformat(msg, 190, input, 3)
  454.  
  455. replace_all(msg, 190, "!g", "^4")
  456. replace_all(msg, 190, "!y", "^1")
  457. replace_all(msg, 190, "!t", "^3")
  458. replace_all(msg, 190, "á", "A?")
  459. replace_all(msg, 190, "é", "A©")
  460. replace_all(msg, 190, "í", "A")
  461. replace_all(msg, 190, "ó", "Al")
  462. replace_all(msg, 190, "ö", "A¶")
  463. replace_all(msg, 190, "o", "L‘")
  464. replace_all(msg, 190, "ú", "As")
  465. replace_all(msg, 190, "ü", "AL")
  466. replace_all(msg, 190, "u", "L±")
  467. replace_all(msg, 190, "Á", "A")
  468. replace_all(msg, 190, "É", "A‰")
  469. replace_all(msg, 190, "Í", "AT")
  470. replace_all(msg, 190, "Ó", "A“")
  471. replace_all(msg, 190, "Ö", "A–")
  472. replace_all(msg, 190, "O", "L")
  473. replace_all(msg, 190, "Ú", "Aš")
  474. replace_all(msg, 190, "Ü", "As")
  475. replace_all(msg, 190, "U", "L°")
  476.  
  477. if (id) players[0] = id; else get_players(players, count, "ch")
  478. {
  479. for (new i = 0; i < count; i++)
  480. {
  481. if (is_user_connected(players[i]))
  482. {
  483. message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
  484. write_byte(players[i])
  485. write_string(msg)
  486. message_end()
  487. }
  488. }
  489. }
  490. return PLUGIN_HANDLED
  491. }

_________________
Kép

˘^Kezdő vagyok!!^ˇ


Hozzászólás jelentése
Vissza a tetejére
   
Hozzászólások megjelenítése:  Rendezés  
Új téma nyitása  Hozzászólás a témához  [ 3 hozzászólás ] 


Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 68 vendég


Nyithatsz új témákat ebben a fórumban.
Válaszolhatsz egy témára ebben a fórumban.
Nem szerkesztheted a hozzászólásaidat ebben a fórumban.
Nem törölheted a hozzászólásaidat ebben a fórumban.
Nem küldhetsz csatolmányokat ebben a fórumban.

Keresés:
Ugrás:  
Powered by phpBB® Forum Software © phpBB Limited
Magyar fordítás © Magyar phpBB Közösség
Portal: Kiss Portal Extension © Michael O'Toole