- #include <amxmodx> 
- #include <colorchat> 
- #include <savedata> 
- #include <engine> 
-   
- new regisztralva[33], bool:belepve[33], bool:irt[33], bool:irt1[33], regjelszo[32][33], jelszo[32][33] 
- new const file[] = "regadatok" 
-   
- public plugin_init() 
- { 
- 	register_plugin("Regisztrációs Rendszer", "1.2", "V!RUSHD") 
-   
- 	register_impulse(201, "letiltas") 
- 	register_clcmd("REG_JELSZO", "regisztralas") 
- 	register_clcmd("LOG_JELSZO", "belepes") 
- 	register_clcmd("JELENLEGI_JELSZO", "kerdes") 
- 	register_clcmd("UJ_JELSZO", "csere") 
-   
- 	set_task(1.0, "idoellenorzes",_,_,_,"b") 
- } 
- public letiltas(id) { 
- 	if(!belepve[id]) 
- 	{ 
- 		fomenu(id) 
- 		return PLUGIN_HANDLED 
- 	} 
- 	return PLUGIN_CONTINUE 
- } 
- public idoellenorzes() 
- { 
- 	new p[32],n; 
- 	get_players(p,n,"ch") 
- 	for(new i=0;i<n;i++) 
- 	{ 
- 		new id = p[i]; 
- 		if(!belepve[id]) 
- 		{ 
- 			message_begin(MSG_ONE, get_user_msgid("ScreenFade"), {0, 0, 0}, id); 
- 			write_short(100000); 
- 			write_short(100000); 
- 			write_short(1<<2); 
- 			write_byte(0); 
- 			write_byte(0); 
- 			write_byte(0); 
- 			write_byte(255); 
- 			message_end(); 
- 		} 
- 	} 
- } 
- public fomenu(id) 
- { 
- 	if(belepve[id] == true) 
- 	{ 
- 		menu(id) 
- 	} 
- 	else if(regisztralva[id] == 1) 
- 	{ 
- 		logmenu(id) 
- 	} 
- 	else if(regisztralva[id] == 0) 
- 	{ 
- 		regmenu(id) 
- 	} 
- } 
- public regmenu(id) 
- { 
- 	new nev[32], fh[121], jsz[121] 
- 	get_user_name(id, nev, 31) 
- 	new menu = menu_create("\rRegisztrációs Rendszer^n\rStátusz: \dNem Regisztrált", "reg_handler") 
-   
- 	format(fh, charsmax(fh), "\rFelhasználónév: \d%s", nev) 
- 	menu_additem(menu,fh, "1",0) 
-   
- 	if(irt[id] == true) 
- 	{ 
- 		format(jsz, charsmax(jsz), "\rJelszĂł: \d%s^n", regjelszo[id]) 
- 		menu_additem(menu,jsz, "2",0) 
-   
- 		menu_additem(menu, "\yRegisztrálás", "3", 0) 
- 	} 
- 	else 
- 	{ 
- 		format(jsz, charsmax(jsz), "\rJelszĂł: ^n") 
- 		menu_additem(menu,jsz, "2",0) 
-   
- 		menu_additem(menu, "\yRegisztrálás", "4", 0) 
- 	} 
-   
- 	menu_setprop(menu, MPROP_EXIT, MEXIT_ALL) 
- 	menu_setprop(menu, MPROP_EXITNAME, "Kilépés") 
-   
- 	menu_display(id, menu, 0) 
- 	return PLUGIN_HANDLED 
- } 
- public logmenu(id) 
- { 
- 	new nev[32], fh[121], jsz[121] 
- 	get_user_name(id, nev, 31) 
- 	new menu = menu_create("\rRegisztrációs Rendszer^n\rStátusz: \dRegisztrálva", "log_handler") 
-   
- 	format(fh, charsmax(fh), "\rFelhasználónév: \d%s", nev) 
- 	menu_additem(menu,fh, "1",0) 
-   
- 	if(irt1[id] == true) 
- 	{ 
- 		format(jsz, charsmax(jsz), "\rJelszĂł: \d%s^n", jelszo[id]) 
- 		menu_additem(menu,jsz, "2",0) 
- 	} 
- 	else 
- 	{ 
- 		format(jsz, charsmax(jsz), "\rJelszĂł: ^n") 
- 		menu_additem(menu,jsz, "2",0) 
- 	} 
-   
- 	menu_additem(menu, "\yBelépés", "3", 0) 
- 	menu_additem(menu, "\wElfelejtettem a \rJelszavam", "4", 0) 
-   
- 	menu_setprop(menu, MPROP_EXIT, MEXIT_ALL) 
- 	menu_setprop(menu, MPROP_EXITNAME, "Kilépés") 
-   
- 	menu_display(id, menu, 0) 
- 	return PLUGIN_HANDLED 
- } 
- public menu(id) 
- { 
- 	new menu = menu_create("\rRegisztrációs Rendszer:^nStátusz: \dBejelentkezve", "menu_handler") 
-   
- 	menu_additem(menu, "\rKijelentkezés", "1", 0) 
- 	menu_additem(menu, "\rJelszó Váltás", "2", 0) 
-   
- 	menu_setprop(menu, MPROP_EXIT, MEXIT_ALL) 
- 	menu_setprop(menu, MPROP_EXITNAME, "Kilépés") 
-   
- 	menu_display(id, menu, 0) 
- 	return PLUGIN_HANDLED 
- } 
- public reg_handler(id, menu, item) 
- { 
- 	if(item == MENU_EXIT) 
- 	{ 
- 		menu_destroy(menu) 
- 		return PLUGIN_HANDLED 
- 	} 
-   
- 	new data[9], access, callback, szName[64] 
- 	menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback) 
- 	new key = str_to_num(data) 
-   
- 	switch(key) 
- 	{ 
- 		case 1: 
- 		{ 
- 			regmenu(id) 
- 		} 
- 		case 2: 
- 		{ 
- 			client_cmd(id, "messagemode REG_JELSZO") 
- 		} 
- 		case 3: 
- 		{ 
- 			regisztralva[id] = 1 
- 			irt[id] = false 
- 			ColorChat(id, GREEN, "[Információ] ^1Sikeresen regisztráltál a Szerverre.Jelszavad:^3 %s", regjelszo[id]) 
- 		} 
- 		case 4: 
- 		{ 
- 			regmenu(id) 
- 			ColorChat(id, GREEN, "[Információ] ^1Nem adtál meg ^3Jelszót.") 
- 		} 
- 	} 
- 	menu_destroy(menu) 
- 	return PLUGIN_HANDLED 
- } 
- public log_handler(id, menu, item) 
- { 
- 	if(item == MENU_EXIT) 
- 	{ 
- 		menu_destroy(menu) 
- 		return PLUGIN_HANDLED 
- 	} 
-   
- 	new data[9], access, callback, szName[64] 
- 	menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback) 
- 	new key = str_to_num(data) 
-   
- 	switch(key) 
- 	{ 
- 		case 1: 
- 		{ 
- 			logmenu(id) 
- 		} 
- 		case 2: 
- 		{ 
- 			client_cmd(id, "messagemode LOG_JELSZO") 
- 		} 
- 		case 3: 
- 		{ 
- 			if(equali(jelszo[id], regjelszo[id])) 
- 			{ 
- 				irt1[id] = false 
- 				belepve[id] = true 
- 				ColorChat(id, GREEN, "[Információ] ^1Sikeresen Bejelentkeztél.") 
- 			} 
- 			else 
- 			{ 
- 				ColorChat(id, GREEN, "[Információ] ^1Hibás ^3Jelszót ^1adtál meg!") 
- 			} 
- 		} 
- 		case 4: 
- 		{ 
- 			ColorChat(id, GREEN, "[Információ] ^1Keres fel minket Skypon: ^3.......") 
- 		} 
- 	} 
- 	menu_destroy(menu) 
- 	return PLUGIN_HANDLED 
- } 
- public menu_handler(id, menu, item) 
- { 
- 	if(item == MENU_EXIT) 
- 	{ 
- 		menu_destroy(menu) 
- 		return PLUGIN_HANDLED 
- 	} 
-   
- 	new data[9], access, callback, szName[64] 
- 	menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback) 
- 	new key = str_to_num(data) 
-   
- 	switch(key) 
- 	{ 
- 		case 1: 
- 		{ 
- 			belepve[id] = false 
- 			jelszo[id] = "" 
- 			ColorChat(id, GREEN, "[Információ] ^1Sikeresen ^3Kijelentkeztél.") 
- 		} 
- 		case 2: 
- 		{ 
- 			client_cmd(id, "messagemode JELENLEGI_JELSZO") 
- 		} 
- 	} 
- 	menu_destroy(menu) 
- 	return PLUGIN_HANDLED 
- } 
- public regisztralas(id) 
- { 
- 	new adat[32] 
- 	new hosszusag = strlen(adat) 
- 	read_args(adat, charsmax(adat)) 
- 	remove_quotes(adat) 
- 	if(hosszusag >= 5) { 
- 		regjelszo[id] = adat 
- 		irt[id] = true 
- 		regmenu(id) 
- 	} 
- 	else { 
- 		regjelszo[id] = adat 
- 		irt[id] = true 
- 		regmenu(id) 
- 	} 
- 	return PLUGIN_CONTINUE 
- } 
- public belepes(id) 
- { 
- 	new adat[32] 
- 	read_args(adat, charsmax(adat)) 
- 	remove_quotes(adat) 
- 	if(equal(adat, "")) 
- 		return PLUGIN_HANDLED 
-   
- 	jelszo[id] = adat 
- 	irt1[id] = true 
- 	logmenu(id) 
- 	return PLUGIN_HANDLED 
- } 
- public kerdes(id) 
- { 
- 	new adat[32] 
- 	read_args(adat, charsmax(adat)) 
- 	remove_quotes(adat) 
- 	if(equal(adat, "")) 
- 		return PLUGIN_HANDLED 
-   
- 	if(equali(regjelszo[id], adat)) 
- 	{ 
- 		client_cmd(id, "messagemode UJ_JELSZO") 
- 	} 
- 	else 
- 	{ 
- 		ColorChat(id, GREEN, "[Információ] ^1Rossz ^3Jelszót ^1adtál meg.") 
- 	} 
- 	return PLUGIN_HANDLED 
- } 
- public csere(id) 
- { 
- 	new adat[32] 
- 	read_args(adat, charsmax(adat)) 
- 	remove_quotes(adat) 
- 	if(equal(adat, "")) 
- 		return PLUGIN_HANDLED 
-   
- 	regjelszo[id] = adat 
- 	return PLUGIN_HANDLED 
- } 
- public client_authorized(id) 
- { 
- 	if( !is_user_hltv(id) && !is_user_bot(id) ) 
- 	{ 
- 		Load(id) 
- 	} 
- } 
- public client_disconnect(id) 
- { 
- 	Save(id) 
- 	jelszo[id] = "" 
- 	belepve[id] = false 
- 	irt[id] = false 
- 	irt1[id] = false 
- } 
- Load(id) 
- { 
- 	new nev[35] 
- 	get_user_name(id, nev, sizeof(nev)-1) 
-   
- 	new adatok[20] 
- 	format(adatok, 19, "%s %i", regjelszo[id], regisztralva[id]); 
-   
- 	if(fvault_get_data(file, nev, adatok, 19)) 
- 	{ 
- 		new pw[33], reg[33] 
- 		parse(adatok, pw, 32, reg, 32); 
-   
- 		regjelszo[id] = pw 
- 		regisztralva[id] = str_to_num(reg) 
- 	} 
- 	else 
- 	{ 
- 		regjelszo[id] = "" 
- 		regisztralva[id] = 0; 
- 	} 
- } 
- Save(id) 
- { 
- 	new nev[35] 
- 	get_user_name(id, nev, sizeof(nev)-1) 
-   
- 	new adatok[20] 
- 	format(adatok, 19, "%s %i", regjelszo[id], regisztralva[id]); 
-   
- 	fvault_set_data(file, nev, adatok) 
- } 
-