hlmod.hu

Magyar Half-Life Mód közösség!
Pontos idő: 2024.05.28. 22:54



Jelenlévő felhasználók

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

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

Regisztrált felhasználók: ASDD, Bing [Bot], DexoN 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  [ 1 hozzászólás ] 
Szerző Üzenet
 Hozzászólás témája: Reg
HozzászólásElküldve: 2015.09.26. 11:58 
Offline
Senior Tag

Csatlakozott: 2015.06.28. 13:00
Hozzászólások: 295
Megköszönt másnak: 20 alkalommal
Megköszönték neki: 10 alkalommal
hali!

valaki segítene? azt szeretném hogy a Reg rendszer külön legyen a menüvel hogy oldjam meg hogy mikor be írom hogy /menu akkor először a reget hozza be és aztán meg pedig a menüt? előre is köszönöm

SMA Forráskód: [ Mindet kijelol ]
  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <engine>
  4. #include <cstrike>
  5. #include <fun>
  6. #include <nvault>
  7. #include <fakemeta>
  8. #include <fakemeta_util>
  9. #include <hamsandwich>
  10. #include <csx>
  11. #include <geoip>
  12.  
  13. #define PLUGIN "DerO Reg Rendszer"
  14. #define VERSION "2.0"
  15. #define AUTHOR "DeRoiD"
  16.  
  17.  
  18. // Regisztráció
  19. new jelszo[32], reg_pont[33], belepve[33], beirt_jelszo[32], mentett_pw[33][32], beirt_pw[33][32], olvas[33], bool:kijelentkezve[33], ef_jsz[32][33]
  20. new users_db_file[256] , reg_vault, probal[33], irt[33]
  21.  
  22.  
  23. public plugin_init() {
  24. register_plugin(PLUGIN, VERSION, AUTHOR)
  25.  
  26. reg_vault = nvault_open("Regisztraciosmenu")
  27. check_db()
  28. register_clcmd("REGISZTRACIOS_JELSZO", "reg_jelszo")
  29. register_clcmd("BELEPESI_JELSZO", "belepes_jelszo")
  30. register_clcmd("drop", "fomenu")
  31. register_clcmd("say /menu", "fomenu")
  32. // Add your code here...
  33. }
  34. public Regisztralas(id) {
  35. new menu
  36. new ks1[121], ks2[121], cim[121]
  37. new nev[32]
  38. get_user_name(id, nev, 31)
  39. if(olvas[id] == 0){
  40. format(cim, charsmax(cim),"\rRegisztrációs Rendszer^n \rStátusz : \dNem regisztrált")
  41. menu = menu_create(cim,"Regisztralas_handler")
  42. format(ks1, charsmax(ks1),"\rSzabályzat^n")
  43. menu_additem(menu,ks1,"5",0)
  44. menu_additem(menu,"\yElfogadom a szabályzatot!","6",0)
  45. menu_additem(menu,"\dNem fogadom el!","7",0)
  46. menu_display(id,menu,0)
  47. }
  48. if(belepve[id] == 0 && olvas[id] == 1){
  49. if(reg_pont[id] == 0){
  50. format(cim, charsmax(cim),"\rRegisztrációs Rendszer^nStátusz: \dNem regisztrált")
  51. }
  52. else if(reg_pont[id] == 1 && kijelentkezve[id] == false){
  53. format(cim, charsmax(cim),"\rRegisztrációs Rendszer^nStátusz: \dRegisztrálva^n\rPróbálkozások : \d%d/3", probal[id])
  54. }
  55. else if(reg_pont[id] == 1 && kijelentkezve[id] == true){
  56. format(cim, charsmax(cim),"Regisztrációs Rendszer^nStátusz: \dKijelentkezve^n\rPróbálkozások : \d%d/3", probal[id])
  57. }
  58. menu = menu_create(cim,"Regisztralas_handler")
  59. format(ks2, charsmax(ks2),"\rFelhasználónév:\d %s", nev)
  60. if(reg_pont[id] == 0){
  61. if(irt[id] == 1){
  62. format(ks1, charsmax(ks1),"\rJelszó: \d%s^n", mentett_pw[id])
  63. }
  64. else if(irt[id] == 0){
  65. format(ks1, charsmax(ks1),"\rJelszó: \d^n")
  66. }
  67. }
  68. else if(reg_pont[id] == 1){
  69. format(ks1, charsmax(ks1),"\rJelszó: \d%s^n", beirt_pw[id])
  70. }
  71. menu_additem(menu,ks2,"0",0)
  72. menu_additem(menu,ks1,"1",0)
  73. if(reg_pont[id] == 0){
  74. if(irt[id] == 0){
  75. menu_additem(menu,"\dRegisztrálok","18",0)
  76. }
  77. else if(irt[id] == 1){
  78. menu_additem(menu,"Regisztrálok","2",0)
  79. }
  80. }
  81. else if(reg_pont[id] == 1){
  82. menu_additem(menu,"Belépek","3",0)
  83. }
  84. if(reg_pont[id] == 1){
  85. menu_additem(menu,"\rElfelejtettem a jelszavam!","8",0)
  86. }
  87. menu_display(id,menu,0)
  88. }
  89. else if(belepve[id] == 1 && olvas[id] == 1)
  90. {
  91. format(cim, charsmax(cim),"\rRegisztrációs Rendszer^nStátusz: \dBejelentkezve")
  92. menu = menu_create(cim,"Regisztralas_handler")
  93. format(ks1, charsmax(ks1),"\rSzabályzat^n")
  94. menu_additem(menu,ks1,"5",0)
  95. menu_additem(menu,"\yKijelentkezés","4",0)
  96. menu_display(id,menu,0)
  97. }
  98. }
  99. public Regisztralas_handler(id, menu, item){
  100. if( item == MENU_EXIT )
  101. {
  102. menu_destroy(menu);
  103. return PLUGIN_HANDLED;
  104. }
  105. new data[9], szName[64], name[32]
  106. get_user_name(id, name, 31)
  107. new access, callback;
  108. menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
  109. new key = str_to_num(data);
  110.  
  111. switch(key)
  112. {
  113. case 0: Regisztralas(id)
  114. case 1:{
  115. if(reg_pont[id] == 0){
  116. client_cmd(id, "messagemode REGISZTRACIOS_JELSZO")
  117. }
  118. else if(reg_pont[id] == 1){
  119. client_cmd(id, "messagemode BELEPESI_JELSZO")
  120. }
  121. }
  122. case 2:{
  123. ef_jsz[id] = jelszo
  124. reg_pont[id] = 1
  125. print_color(id, "!g[Információ]!y Sikeres regisztráció! Jelszavad:!t %s", mentett_pw[id])
  126. Regisztralas(id)
  127. client_cmd(id,"setinfo _jelszo ^"%s^"",ef_jsz[id])
  128. regisztralas_mentese(id)
  129. }
  130. case 3:{
  131. if(equali(beirt_pw[id], mentett_pw[id])){
  132. belepve[id] = 1
  133. print_color(id, "!g[Információ]!y Sikeresen beléptél!")
  134. set_task(0.0,"motor", id)
  135. if(kijelentkezve[id]){
  136. kijelentkezve[id] = false
  137. }
  138. }
  139. else if(probal[id] >= 2)
  140. {
  141. server_cmd("kick #%i ^"Rossz jelszó!",get_user_userid(id))
  142. }
  143. else if(!equali(beirt_pw[id], mentett_pw[id]))
  144. {
  145. probal[id]++
  146. print_color(id, "!g[Információ]!y Rossz jelszó!")
  147. }
  148. }
  149. case 4:{
  150. beirt_pw[id] = ""
  151. belepve[id] = 0
  152. kijelentkezve[id] = true
  153. print_color(id, "!g[Információ]!y Sikeresen kijelentkeztél!")
  154. }
  155. case 5: {
  156. show_motd(id,"addons/amxmodx/configs/info/szabalyzat.txt","Szabályzat")
  157. }
  158. case 6: {
  159. olvas[id] = 1
  160. print_color(id, "!g[Információ]!y Elfogadtad a szabályokat !!!")
  161. Regisztralas(id)
  162. }
  163. case 7: {
  164. print_color(id, "!g[Információ]!y Szabály elfogadása nélkül nem regisztrálhatsz!")
  165. }
  166. case 8: {
  167. print_color(id, "!g[Információ]!y TeamSpeak3:!t prokillers.hu:9901")
  168. }
  169. case 18:{
  170. print_color(id, "!g[Információ]!y Nem írtál be jelszót!")
  171. Regisztralas(id)
  172. }
  173. }
  174. menu_destroy(menu);
  175. return PLUGIN_HANDLED;
  176. }
  177. public belepes_jelszo(id)
  178. {
  179. read_args(beirt_jelszo, charsmax(beirt_jelszo))
  180. remove_quotes(beirt_jelszo)
  181. new hossz = strlen(beirt_jelszo)
  182. if(equal(beirt_jelszo, ""))
  183. return PLUGIN_HANDLED
  184.  
  185. if(hossz < 6)
  186. {
  187. print_color(id, "!g[Információ]!y Jelszavadnak minimum 6 betűnek kell lennie!")
  188. client_cmd(id, "messagemode BELEPESI_JELSZO")
  189. }
  190. else
  191. {
  192. beirt_pw[id] = beirt_jelszo
  193. Regisztralas(id)
  194. }
  195. return PLUGIN_CONTINUE
  196. }
  197. public reg_jelszo(id)
  198. {
  199. if(reg_pont[id] == 0){
  200. read_args(jelszo, charsmax(jelszo))
  201. remove_quotes(jelszo)
  202. new hossz = strlen(jelszo)
  203. if(equal(jelszo, ""))
  204. return PLUGIN_HANDLED
  205.  
  206. if(hossz < 6)
  207. {
  208. print_color(id, "!g[Információ]!y Jelszavadnak minimum 6 betűnek kell lennie!")
  209. client_cmd(id, "messagemode REGISZTRACIOS_JELSZO")
  210. }
  211. else
  212. {
  213. irt[id] = 1
  214. mentett_pw[id] = jelszo
  215. ef_jsz[id] = jelszo
  216. Regisztralas(id)
  217. }
  218. }
  219. return PLUGIN_CONTINUE
  220. }
  221. public regisztralas_mentese(id)
  222. {
  223. new Buffer[256]
  224.  
  225. new adate[128], name[32]
  226. get_time("%x", adate, sizeof adate - 1);
  227.  
  228. get_user_name(id, name, 31)
  229. format(Buffer, sizeof Buffer - 1, "^"%s^" ^"%s^" ^n^n^n^n", name, mentett_pw[id]);
  230.  
  231. new file = fopen(users_db_file, "at+");
  232. fprintf(file, Buffer);
  233. fclose(file);
  234.  
  235. return 1;
  236. }
  237. public nevvaltas(id)
  238. {
  239. if(!is_user_connected(id))
  240. return FMRES_IGNORED
  241.  
  242. new regi_nev[32], uj_nev[32], nev[32]
  243. get_user_name(id, nev, 31)
  244. pev(id, pev_netname, regi_nev, charsmax(regi_nev))
  245. if(regi_nev[0])
  246. {
  247. get_user_info(id, "name", uj_nev, charsmax(uj_nev))
  248. if(!equal(regi_nev, uj_nev))
  249. {
  250. if(belepve[id] == 1)
  251. {
  252. set_user_info(id, "name", regi_nev)
  253. print_color(id, "!g[Információ]!y A név váltás tiltott!")
  254. return FMRES_HANDLED
  255. }
  256. else
  257. {
  258. set_user_info(id, "name", regi_nev)
  259. print_color(id, "!g[Információ]!y A név váltás tiltott!")
  260. return FMRES_HANDLED
  261. }
  262. }
  263. }
  264. return FMRES_IGNORED
  265. }
  266. public check_db()
  267. {
  268. new datadir[64];
  269. get_datadir(datadir, 63);
  270.  
  271. format(users_db_file, sizeof users_db_file - 1, "%s/user_db.ini", datadir);
  272.  
  273. new file_pointer = fopen(users_db_file, "r");
  274.  
  275. if(!file_pointer)
  276. {
  277. server_print("NEM TALALHATO A FAJL");
  278.  
  279. write_file(users_db_file, "");
  280. }
  281. fclose(file_pointer);
  282. }
  283. stock check_user(id)
  284. {
  285. new szFile = fopen(users_db_file, "rt");
  286.  
  287. new Buffer[256], file_id[32], file_password[32], name[32]
  288. get_user_name(id, name, 31)
  289.  
  290. while(!feof(szFile))
  291. {
  292. fgets(szFile, Buffer, 255);
  293.  
  294. if((strlen(Buffer) < 2) || Buffer[0] == ';')
  295. continue;
  296.  
  297. parse(Buffer, file_id, 31, file_password, 31);
  298.  
  299. if(equal(file_id, name))
  300. {
  301. mentett_pw[id] = file_password
  302. break;
  303. }
  304. }
  305. fclose(szFile);
  306. return 0;
  307. }
  308. public client_putinserver(id)
  309. {
  310. belepve[id] = 0
  311. irt[id] = 0
  312. probal[id] = 0
  313. beirt_pw[id] = ""
  314. check_user(id)
  315. set_task(3.0,"Regisztralas",id)
  316. }
  317. public save(id)
  318. {
  319. new vaultkey[64],vaultdata[256], name[32]
  320. get_user_name(id, name, 31)
  321. format(vaultkey,63,"%s-REG", name)
  322. format(vaultdata,255,"%i#%i",reg_pont[id], olvas[id])
  323. nvault_set(reg_vault,vaultkey,vaultdata)
  324. return PLUGIN_CONTINUE
  325. }
  326. public load(id)
  327. {
  328. new vaultkey[64],vaultdata[256], name[32]
  329. get_user_name(id, name, 31)
  330. format(vaultkey,63,"%s-REG", name)
  331. format(vaultdata,255,"%i#%i",reg_pont[id], olvas[id])
  332. nvault_get(reg_vault,vaultkey,vaultdata,255)
  333. replace_all(vaultdata, 255, "#", " ")
  334. new a3[32], a4[32]
  335. parse(vaultdata, a3, 31, a4, 31)
  336. reg_pont[id] = str_to_num(a3)
  337. olvas[id] = str_to_num(a4)
  338. return PLUGIN_CONTINUE;
  339. }
  340. stock print_color(const id, const input[], any:...)
  341. {
  342. new count = 1, players[32]
  343. static msg[191]
  344. vformat(msg, 190, input, 3)
  345.  
  346. replace_all(msg, 190, "!g", "^4")
  347. replace_all(msg, 190, "!y", "^1")
  348. replace_all(msg, 190, "!t", "^3")
  349. replace_all(msg, 190, "á", "á")
  350. replace_all(msg, 190, "é", "Ă©")
  351. replace_all(msg, 190, "í", "Ă­")
  352. replace_all(msg, 190, "ó", "Ăł")
  353. replace_all(msg, 190, "ö", "ö")
  354. replace_all(msg, 190, "ő", "Ĺ‘")
  355. replace_all(msg, 190, "ú", "Ăş")
  356. replace_all(msg, 190, "ü", "ĂĽ")
  357. replace_all(msg, 190, "ű", "ű")
  358. replace_all(msg, 190, "Á", "Á")
  359. replace_all(msg, 190, "É", "É")
  360. replace_all(msg, 190, "Í", "ĂŤ")
  361. replace_all(msg, 190, "Ó", "Ă“")
  362. replace_all(msg, 190, "Ö", "Ă–")
  363. replace_all(msg, 190, "Ő", "Ő")
  364. replace_all(msg, 190, "Ú", "Ăš")
  365. replace_all(msg, 190, "Ü", "Ăś")
  366. replace_all(msg, 190, "Ű", "Ĺ°")
  367.  
  368. if (id) players[0] = id; else get_players(players, count, "ch")
  369. {
  370. for (new i = 0; i < count; i++)
  371. {
  372. if (is_user_connected(players[i]))
  373. {
  374. message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
  375. write_byte(players[i])
  376. write_string(msg)
  377. message_end()
  378. }
  379. }
  380. }
  381. return PLUGIN_HANDLED
  382. }
  383.  
  384.  
  385.  

_________________
Kép


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  [ 1 hozzászólás ] 


Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 21 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