Auto SLOT ?

Categoria cu cereri de pluginuri si nu numai.

Moderators: Moderatori ajutatori, Moderatori, Echipa eXtreamCS.com

Forum rules
Accesează link-ul pentru a putea vedea regulile forumului

Daca doriti sa vi se modifice un plugin, va rugam postati aici .
mezzzu
Membru eXtream
Membru eXtream
Posts: 2235
Joined: 19 Dec 2010, 17:31
Detinator Steam: Da
CS Status: Working...
Reputatie: Utilizator neserios (tepar)
Fost manager FURIEN.EXTREAMCS.COM
Restrictie moderator
Has thanked: 85 times
Been thanked: 137 times

28 Jun 2013, 23:33

Poate careva de aici sa faca un asa zis plugin de AUTO-SLOT prin care , daca un player tasteaza in chat comanda /parola password sa i se dea automat SLOT(nume rezervat) cu parola password ? Sa fie obligat sa se logheze cu setinfo _pw password ? :-? Ar fi nevoie mare pe serverele de furien de asa ceva deoarece se fura multe credite :D
RoyalServer
User avatar
Ulquiorra
Fost moderator
Fost moderator
Posts: 2053
Joined: 25 Jul 2010, 17:29
Detinator Steam: Da
CS Status: A mai trecut o zi asteptand una mai buna
Detinator server CS: Retras.
SteamID: STEAM_0:1:318247XX
Reputatie: Fost Scripter eXtreamCS
Fost Moderator ajutator
Nick anterior: Askhanar
Location: Braila, Romania.
Has thanked: 215 times
Been thanked: 1132 times

28 Jun 2013, 23:50

se poate face.. foarte usor..
dar ce se intampla daca eu am nick-ul Askhanar si,
un impostor apuca sa intre pe sv inaintea mea si isi pune slot pe numele meu ?

o sa ai o tona de probleme pe cap :)
Caut o persoana dedicata care se pricepe si stie ce face.
Vreau sa creeze si sa se ocupe de administrarea unui server de MU, da e vorba de vechiul joc..ma gandesc undeva la un season 3 ep1/2.

O sa achizitionez un domeniu .ro.
Totodata sponsorizez absolut orice este necesar.
Ma puteti contacta prin: http://solo.to/stfrzv
DaevaX
Utilizator restrictionat
Utilizator restrictionat
Posts: 76
Joined: 24 Jun 2013, 02:14
Detinator Steam: Da
Reputatie: Utilizator Restrictionat: WishExec
Has thanked: 6 times
Been thanked: 7 times

29 Jun 2013, 10:06

ma gandeam la un :

/register parola email cu un echo pentru a te loga seteaza in consola setinfo _pw parola . Daca sunt probleme contact : email

si un fisier care sa salveze nickul si emailul lor pentru eventuale probleme . Emailurile pot fi destul de importante massuri , reclame pentru vanzare vip etc .

Daca il poti face askhanar as fi recunoscator
CONT INACTIV
EDwardddd.
Membru, skill +2
Membru, skill +2
Posts: 806
Joined: 18 Jun 2010, 10:30
Detinator Steam: Da
SteamID: edwarddwd
Reputatie: Membru Club eXtreamCS (trei luni)
Fost Moderator ajutator
Nume anterioare: Elk, eDward /R/
Has thanked: 16 times
Been thanked: 49 times

29 Jun 2013, 10:46

| Afiseaza codul
[code]/*

Automatic Free Slot (just simple players)
Command in console: islot password

Slot gratuit automat (doar pentru playerii simplii)
Comanda in consola: islot parola

*/

#include <amxmodx>
#include <amxmisc>
#include <nvault>

#pragma semicolon 1

new szFile[256], TotalPlayedTime[33];

public plugin_init() {
	register_plugin("Slot Free", "1.0", "I don't know");
	
	register_concmd("islot", "iGive_Slot");
}

public iGive_Slot(id) {
	static ctime[64], timep;	
	timep = get_user_time(id, 1);
	get_time("%H:%M:%S", ctime, 63);
	get_configsdir(szFile, 255);
	format(szFile, 255, "%s/users.ini", szFile);

	if(timep+TotalPlayedTime[id] >= 60) {
		new szPassword[32], szName[33], szParName[33], szPareName[33], txtlen, line = 0;
		get_user_name(id, szName, 32);
		read_argv(1, szPassword, 31);

		new szLogData[200], szReadData[200];
		while(read_file(szFile, line++, szReadData, 199, txtlen)) {
			parse(szReadData, szPareName, 32, szParName, 32);
			
			if(equal(szName, szPareName)) {
				console_print(id, "Ai deja admin sau slot!");
				return PLUGIN_HANDLED;
			}
		}
		
		format(szLogData, 199, "^"%s^" ^"%s^" ^"b^" ^"a^" ; Slot %s", szName, szPassword, szName);
		if(szPassword[0]) {
			write_file(szFile, szLogData);
		} else {
			console_print(id, "[EROARE] Este obligatoriu sa adaugi si o parola, scrie islot parola (ex: islot eLk)");
			return PLUGIN_HANDLED;
		}

		console_print(id, "Ai primit cu succes slot pe nick-ul -> (%s)", szName);
	} else {
		console_print(id, "Poti folosi aceasta comanda doar cand ai un minut jucat!");
	}

	return PLUGIN_HANDLED;
}

public client_disconnect(id) {
	TotalPlayedTime[id] = TotalPlayedTime[id] + (get_user_time(id)/60);
	SaveTime(id, TotalPlayedTime[id]);
}

public client_putinserver(id) {
	TotalPlayedTime[id] = LoadTime(id);
}

public LoadTime(id) {
	new valut = nvault_open("Time_played");
	new authip[33];
	new vaultkey[64], vaultdata[64];
	
	get_user_ip(id, authip, 32, 1);
	
	format(vaultkey, 63, "TIMEPLAYED%s", authip);
	
	nvault_get(valut, vaultkey, vaultdata, 63);
	nvault_close(valut);
	
	return str_to_num(vaultdata);
}

public SaveTime(id,PlayedTime) {
	new valut = nvault_open("Time_played");
	
	if(valut == INVALID_HANDLE)
		set_fail_state("nValut returned invalid handle");
	
	new authip[33];
	new vaultkey[64], vaultdata[64];
	
	get_user_ip(id, authip, 32, 1);
	
	format(vaultkey, 63, "TIMEPLAYED%s", authip); 
	format(vaultdata, 63, "%d", PlayedTime); 
	
	nvault_set(valut, vaultkey, vaultdata);
	nvault_close(valut);
}[/code]
Merge si pe valve -- islot nume pass (sper ca asa era , il am de mai de mult in pc)
DaevaX
Utilizator restrictionat
Utilizator restrictionat
Posts: 76
Joined: 24 Jun 2013, 02:14
Detinator Steam: Da
Reputatie: Utilizator Restrictionat: WishExec
Has thanked: 6 times
Been thanked: 7 times

29 Jun 2013, 11:20

multumesc
CONT INACTIV
mezzzu
Membru eXtream
Membru eXtream
Posts: 2235
Joined: 19 Dec 2010, 17:31
Detinator Steam: Da
CS Status: Working...
Reputatie: Utilizator neserios (tepar)
Fost manager FURIEN.EXTREAMCS.COM
Restrictie moderator
Has thanked: 85 times
Been thanked: 137 times

29 Jun 2013, 11:49

Prin pluginul postat mai sus , nu s-ar da peste cap lista de admine deja existenta in users.ini ?
User avatar
Ulquiorra
Fost moderator
Fost moderator
Posts: 2053
Joined: 25 Jul 2010, 17:29
Detinator Steam: Da
CS Status: A mai trecut o zi asteptand una mai buna
Detinator server CS: Retras.
SteamID: STEAM_0:1:318247XX
Reputatie: Fost Scripter eXtreamCS
Fost Moderator ajutator
Nick anterior: Askhanar
Location: Braila, Romania.
Has thanked: 215 times
Been thanked: 1132 times

29 Jun 2013, 13:23

daca nu voi pleca astazi, il voi face mai pe seara...

comanda in chat /registernick dupa care poate o sa apara un meniu sau.. va v-a aparea sa scrieti intai parola si apoi e-mail..

Voi folosi un fisier separat pentru salvare.. si se va numi Nick Registration..
NU va folosi flaguri.

In timp poate voi face si o functie de schimbat parola..
Deasemenea va folosi alt tip de setinfo.
Caut o persoana dedicata care se pricepe si stie ce face.
Vreau sa creeze si sa se ocupe de administrarea unui server de MU, da e vorba de vechiul joc..ma gandesc undeva la un season 3 ep1/2.

O sa achizitionez un domeniu .ro.
Totodata sponsorizez absolut orice este necesar.
Ma puteti contacta prin: http://solo.to/stfrzv
DaevaX
Utilizator restrictionat
Utilizator restrictionat
Posts: 76
Joined: 24 Jun 2013, 02:14
Detinator Steam: Da
Reputatie: Utilizator Restrictionat: WishExec
Has thanked: 6 times
Been thanked: 7 times

29 Jun 2013, 13:33

super , astept :D
CONT INACTIV
EDwardddd.
Membru, skill +2
Membru, skill +2
Posts: 806
Joined: 18 Jun 2010, 10:30
Detinator Steam: Da
SteamID: edwarddwd
Reputatie: Membru Club eXtreamCS (trei luni)
Fost Moderator ajutator
Nume anterioare: Elk, eDward /R/
Has thanked: 16 times
Been thanked: 49 times

29 Jun 2013, 14:05

mezzzu wrote:Prin pluginul postat mai sus , nu s-ar da peste cap lista de admine deja existenta in users.ini ?
Trebuie sa lasi spatii (2 parca) jos de tot dupa ultimul admin/slot dat :-?
User avatar
Ulquiorra
Fost moderator
Fost moderator
Posts: 2053
Joined: 25 Jul 2010, 17:29
Detinator Steam: Da
CS Status: A mai trecut o zi asteptand una mai buna
Detinator server CS: Retras.
SteamID: STEAM_0:1:318247XX
Reputatie: Fost Scripter eXtreamCS
Fost Moderator ajutator
Nick anterior: Askhanar
Location: Braila, Romania.
Has thanked: 215 times
Been thanked: 1132 times

29 Jun 2013, 18:30

bun, dupa cum am spus.. asa a si iesit.

comenzi in chat: /registernick -> deschide meniul.. restul vedeti in poze.
pluginul are fisier propriu pentru salvarea datelor ( in folderul data )
are si log propriu ( in folderul logs )
suporta si schimbarea de nume ( cand iti schimbi numele pe server iti e verificat parola iar.. )
Nick Registration | Afiseaza codul
/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <fakemeta>
#include <CC_ColorChat>

#define PLUGIN "Nick Registration"
#define VERSION "0.0.1"

new const g_szInfoKey[ ] = "_nr";
new const g_szNoneWord[ ] = "None";
new const g_szTag[ ] = "^x04| Nick Registration:";
new g_szRegisterFile[ 64 ];

enum _:eRegisterInfos
{
	Nick[ 32 ],
	Password[ 15 ],
	Mail[ 64 ]
}


new Array:g_aData;

new g_szLoginInfo[ 33 ][ eRegisterInfos ];
new g_iRegistrations = 0;

public plugin_init( )
{
	register_plugin( PLUGIN, VERSION, "Askhanar" );
	
	register_clcmd( "say /registernick", "ClCmdSayRegisterNick" );
	register_clcmd( "RN_SetPassword", "__RN_SetPassword" );
	register_clcmd( "RN_SetMail", "__RN_SetMail" );
	
	register_forward( FM_ClientUserInfoChanged, "fwd_ClientUserInfoChangedPost", false  );
	g_aData = ArrayCreate( eRegisterInfos );
	
	
	// Add your code here...
}

public plugin_cfg( )	LoadRegistrations( );

public client_authorized( id )
{
	static szNick[ 32 ];
	get_user_name( id, szNick, sizeof ( szNick ) -1 );
	
	if( CheckRegistration( id, szNick ) )
	{
		static szPassword[ 15 ], szIp[ 22 ];
		get_user_info( id, g_szInfoKey, szPassword, sizeof ( szPassword ) -1 );
		get_user_ip( id, szIp, sizeof ( szIp ) -1, 1 );
		
		if( equal( szPassword, g_szLoginInfo[ id ][ Password ] ) )
		{
			client_print( id, print_console, "Ai fost logat cu succes!^nNick: %s^nParola: %s^nE-Mail:%s",
				g_szLoginInfo[ id ][ Nick ], g_szLoginInfo[ id ][ Password ], g_szLoginInfo[ id ][ Mail ] );
			log_to_file( "NickRegistrations.log", "--| %s ( %s ) s-a logat cu succes( Parola: %s, E-Mail: %s )",
				szNick, szIp, g_szLoginInfo[ id ][ Password ], g_szLoginInfo[ id ][ Mail ] );
			
			return PLUGIN_HANDLED;
		}
		else
		{
		
			server_cmd( "kick #%i ^"Nick rezervat! Model de introducere a parolei: setinfo %s parola^"",
				get_user_userid( id ), g_szInfoKey );
			log_to_file( "NickRegistrations.log", "--| %s ( %s ) Parola gresita! ( %s, Parola corecta: %s )",
				szNick, szIp, szPassword, g_szLoginInfo[ id ][ Password ] );
		}
	}
	
	return PLUGIN_CONTINUE;
}

public fwd_ClientUserInfoChangedPost( id, InfoKey )
{
	if( !is_user_connected( id ) || is_user_connecting( id ) )
		return FMRES_IGNORED;
	
	new szName[ 32 ];
	get_user_name( id, szName, sizeof ( szName ) -1 );
	
	new szNewName[ 32 ];
	engfunc( EngFunc_InfoKeyValue, InfoKey, "name", szNewName, sizeof ( szNewName ) -1 );
	
	if( equal( szName, szNewName ) )
		return FMRES_IGNORED;
		
	if( CheckRegistration( id, szNewName ) )
	{
		static szPassword[ 15 ], szIp[ 22 ];
		get_user_info( id, g_szInfoKey, szPassword, sizeof ( szPassword ) -1 );
		get_user_ip( id, szIp, sizeof ( szIp ) -1, 1 );
		
		if( equal( szPassword, g_szLoginInfo[ id ][ Password ] ) )
		{
			client_print( id, print_console, "Ai fost logat cu succes!^nNick: %s^nParola: %s^nE-Mail:%s",
				g_szLoginInfo[ id ][ Nick ], g_szLoginInfo[ id ][ Password ], g_szLoginInfo[ id ][ Mail ] );
			log_to_file( "NickRegistrations.log", "--| %s ( %s ) s-a logat cu succes( Parola: %s, E-Mail: %s )",
				szNewName, szIp, g_szLoginInfo[ id ][ Password ], g_szLoginInfo[ id ][ Mail ] );
		}
		{
			server_cmd( "kick #%i ^"Acest nick este rezervat iar tu ai gresit parola^nModel de introducere a parolei: setinfo %s parola^"",
				get_user_userid( id ), g_szInfoKey );
			log_to_file( "NickRegistrations.log", "--| %s ( %s ) Parola gresita! ( %s, Parola corecta: %s )",
				szNewName, szIp, szPassword, g_szLoginInfo[ id ][ Password ] );
		}
	}
	
	return FMRES_IGNORED;
}

public ClCmdSayRegisterNick(  id  )
{
	new szName[ 32 ];
	get_user_name( id, szName, sizeof ( szName ) -1 );
	if( UserIsRegistered( szName ) )
	{
		ColorChat( id, RED, "%s^x03 %s^x01, acest nick este deja inregistrat!", g_szTag, szName );
		return PLUGIN_HANDLED;
	}
	
	new szMenuName[ 128 ];
	formatex( szMenuName, sizeof ( szMenuName ) -1, "\r  Rezervare Nume^n^n\wNick:\y %s  \r|\w Parola:\y %s^n\wE-Mail:\y %s^n^n",
		szName, g_szLoginInfo[ id ][ Password ], g_szLoginInfo[ id ][ Mail ] );
	
	new iMenu  =  menu_create(  szMenuName, "NR_RegisterMenu" );
	menu_additem( iMenu, "\wSeteaza parola", "1", 0 );
	menu_additem( iMenu, "\wSeteaza e-mail^n", "2", 0 );
	menu_additem( iMenu, "\rConfirma rezervarea", "3", 0 );
	
	menu_setprop( iMenu, MPROP_EXITNAME, "\wIesire" );
	
	menu_display( id, iMenu );
	
	return PLUGIN_CONTINUE;
}

public NR_RegisterMenu( id, iMenu, iItem)
{
	if( iItem == MENU_EXIT )
	{
		menu_destroy( iMenu );
		return PLUGIN_HANDLED;
	}
	
	static _access, szInfo[ 4 ], iCallback;
	menu_item_getinfo( iMenu, iItem, _access, szInfo, sizeof ( szInfo ) -1, _, _, iCallback );
	menu_destroy( iMenu );
	
	new iKey = str_to_num( szInfo );
	switch( iKey )
	{
		case 1:
		{
			ColorChat( id, RED, "%s^x01 Esti rugat sa scrii o parola, apoi sa apesi^x03 ENTER^x01.", g_szTag );
			client_cmd( id, "messagemode RN_SetPassword" );
			ClCmdSayRegisterNick(  id  );
		}
		case 2:
		{
			ColorChat( id, RED, "%s^x01 Esti rugat sa scrii un e-mail, apoi sa apesi^x03 ENTER^x01.", g_szTag );
			client_cmd( id, "messagemode RN_SetMail" );
			ClCmdSayRegisterNick(  id  );
		}
		case 3:
		{
			if( !equal( g_szLoginInfo[ id ][ Password ], g_szNoneWord ) &&
				!equal( g_szLoginInfo[ id ][ Mail ], g_szNoneWord ) )
			{
				new szName[ 32 ];
				get_user_name( id, szName, sizeof ( szName ) -1 );
				
				ColorChat( id, RED, "%s^x01 Ai fost inregistrat cu succes, datele fiind urmatoarele:", g_szTag );
				ColorChat( id, RED, "%s^x01 Nick:^x03 %s^x04 |^x01  Parola:^x03 %s", g_szTag, szName, g_szLoginInfo[ id ][ Password ] );
				ColorChat( id, RED, "%s^x01 E-Mail:^x03 %s", g_szTag, g_szLoginInfo[ id ][ Mail ] );
				ColorChat( id, RED, "%s^x01 Pentru a te loga foloseste: ^"^x03setinfo %s %s^"^x01", g_szTag, g_szInfoKey, g_szLoginInfo[ id ][ Password ] );
				
				new eData[ eRegisterInfos ];
				copy( eData[ Nick ], sizeof ( eData[ Nick ] ) -1, szName );
				copy( eData[ Password ], sizeof ( eData[ Password ] ) -1, g_szLoginInfo[ id ][ Password ] );
				copy( eData[ Mail ], sizeof ( eData[ Mail ] ) -1, g_szLoginInfo[ id ][ Mail ] );
				
				ArrayPushArray( g_aData, eData );
				g_iRegistrations++;
				
				CheckRegistration( id, szName );
				
				new szIp[ 22 ];
				get_user_ip( id, szIp, sizeof ( szIp ) -1 );
				log_to_file( "NickRegistrations.log", "--| %s ( %s ) s-a inregistrat cu succes[ Nick: %s | Parola: %s | E-Mail: %s ]",
					szName, szIp, eData[ Nick ], eData[ Password ], eData[ Mail ] );
					
				SaveRegistrations( );
			}
			else
			{
				ColorChat( id, RED,"%s^x03 Datele pentru inregistrare sunt incomplete!", g_szTag );
				ClCmdSayRegisterNick(  id  );
			}
			
		}
	}
	
	return PLUGIN_CONTINUE;
}

public __RN_SetPassword( id )
{
	static szArg[ 15 ];
	read_argv( 1, szArg, sizeof ( szArg ) -1 );
	
	if ( !strlen( szArg ) || strlen( szArg ) < 6 )
	{
		ColorChat( id, RED, "%s^x01Parola NU poate fi mai mica de 6 caractere!", g_szTag );
		
		client_cmd( id, "messagemode RN_SetPassword");
		ClCmdSayRegisterNick(  id  );
		return PLUGIN_HANDLED;
	}
	else if( strlen( szArg ) > 15 )
	{
		ColorChat( id, RED, "%s^x01Parola NU poate fi mai mare de 15 caractere!", g_szTag );
		
		client_cmd( id, "messagemode RN_SetPassword");
		ClCmdSayRegisterNick(  id  );
		return PLUGIN_HANDLED;
	}
	
	copy( g_szLoginInfo[ id ][ Password ], sizeof ( g_szLoginInfo[ ][ Password ] ) -1, szArg );
	ClCmdSayRegisterNick(  id  );
	return PLUGIN_HANDLED;
	
}

public __RN_SetMail( id )
{
	static szArg[ 64 ];
	read_argv( 1, szArg, sizeof ( szArg ) -1 );
	
	if( containi( szArg, "@" ) == -1 && containi( szArg, "yahoo" ) == -1
		&& containi( szArg, "gmail" ) == -1 && containi( szArg, "hotmail" ) == -1 )
	{
		ColorChat( id, RED, "%s^x03 %s^x01 nu este un e-mail valid!!", g_szTag, szArg );
		
		client_cmd( id, "messagemode RN_SetMail");
		ClCmdSayRegisterNick(  id  );
		return PLUGIN_HANDLED;
	}
	else if( strlen( szArg ) < 9 )
	{
		ColorChat( id, RED, "%s^x01 un e-mail NU poate avea mai putin de 9 caractere!", g_szTag );
		
		client_cmd( id, "messagemode RN_SetMail");
		ClCmdSayRegisterNick(  id  );
		return PLUGIN_HANDLED;
	}
	
	copy( g_szLoginInfo[ id ][ Mail ], sizeof ( g_szLoginInfo[ ][ Mail ] ) -1, szArg );
	ClCmdSayRegisterNick(  id  );
	return PLUGIN_HANDLED;
	
}

CheckRegistration( id, const szNick[ ] )
{
	new bool:bRegistered = false;
	new eData[ eRegisterInfos ];
	
	for( new i; i < g_iRegistrations; i++ )
	{
		ArrayGetArray( g_aData, i, eData );
		
		if( equal( szNick, eData[ Nick ] ) )
		{
			copy( g_szLoginInfo[ id ][ Nick ], sizeof ( g_szLoginInfo[ ][ Nick ] ) -1, eData[ Nick ] );
			copy( g_szLoginInfo[ id ][ Password ], sizeof ( g_szLoginInfo[ ][ Password ] ) -1, eData[ Password ] );
			copy( g_szLoginInfo[ id ][ Mail ], sizeof ( g_szLoginInfo[ ][ Mail ] ) -1, eData[ Mail ] );
			bRegistered = true;
			break;
		}
	}
	
	if( !bRegistered )
	{
		copy( g_szLoginInfo[ id ][ Nick ], sizeof ( g_szLoginInfo[ ][ Nick ] ) -1, g_szNoneWord );
		copy( g_szLoginInfo[ id ][ Password ], sizeof ( g_szLoginInfo[ ][ Password ] ) -11, g_szNoneWord );
		copy( g_szLoginInfo[ id ][ Mail ], sizeof ( g_szLoginInfo[ ][ Mail ] ) -11, g_szNoneWord );
	}
			
	return bRegistered;
}

LoadRegistrations( )
{
	get_localinfo( "amxx_datadir", g_szRegisterFile, sizeof ( g_szRegisterFile ) -1 );
	format( g_szRegisterFile, sizeof ( g_szRegisterFile ) -1, "%s/NickRegistrations.txt", g_szRegisterFile );
	
	if( g_iRegistrations )
	{
		ArrayClear( g_aData );
		g_iRegistrations = 0;
	}
	
	if( file_exists( g_szRegisterFile ) )
	{
		
		new iFile = fopen( g_szRegisterFile, "rt" );
		
		new szNick[ 32 ], szPassword[ 15 ], szMail[ 64 ];
		new szFileData[ 128 ], eData[ eRegisterInfos ];
		
		while( !feof( iFile ) )
		{
			fgets( iFile, szFileData, sizeof ( szFileData ) - 1);
			
			if( !szFileData[ 0 ] || szFileData[ 0 ] == ';'
				|| ( szFileData[ 0 ] == '/' && szFileData[ 1 ] == '/' ) )
				continue;
			
			parse( szFileData, szNick, sizeof ( szNick ) -1,
				szPassword, sizeof ( szPassword ) -1,
				szMail, sizeof ( szMail ) -1 );
				
			copy( eData[ Nick ], sizeof ( eData[ Nick ] ) -1, szNick );
			copy( eData[ Password ], sizeof ( eData[ Password ] ) -1, szPassword );
			copy( eData[ Mail ], sizeof ( eData[ Mail ] ) -1, szMail );
			
			ArrayPushArray( g_aData, eData );
			g_iRegistrations++;
		}
		
		fclose( iFile );
		
	}
	
	log_to_file( "NickRegistrations.log", "Am incarcat cu succes %i nick-uri inregistrate!", g_iRegistrations );
	
}

SaveRegistrations( )
{
	
	if( file_exists( g_szRegisterFile ) )
		delete_file( g_szRegisterFile );
		
	new iFile = fopen( g_szRegisterFile, "wt" );
	new eData[ eRegisterInfos ];
	
	for( new i; i < g_iRegistrations; i++ )
	{
		ArrayGetArray( g_aData, i, eData );

		fprintf( iFile, "^"%s^" ^"%s^" ^"%s^"^n",
			eData[ Nick ], eData[ Password ], eData[ Mail ] );
	}
	
	fclose( iFile );
	
}

UserIsRegistered( const szName[ ] )
{
	new eData[ eRegisterInfos ];
	new bool:bRegistered = false;
	
	for( new i = 0; i < g_iRegistrations; i++ )
	{
		ArrayGetArray( g_aData, i, eData );
		
		if( equal( szName, eData[ Nick ] ) )
		{
			bRegistered = true;
			break;
		}
	}
	
	return bRegistered;
}

public plugin_end( )
{
	SaveRegistrations( );
	ArrayDestroy( g_aData );
}
CC_ColorChat | Afiseaza codul
/*              	        __________________________________
* 			       |Functiile originade create de Numb|
*			        ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯

* 				Fisier rescris si fixat de Askhanar.
*

*				Copyright © 2012, Askhanar @disconnect.ro
*			Acest fisier este prevazut asa cum este ( fara garantii )
*/

#if defined _CC_ColorChat_included
  #endinput
#endif
#define _CC_ColorChat_included

enum Color
{
	NORMAL = 1, 		// Culoarea care o are jucatorul setata in cvar-ul scr_concolor.
	GREEN, 			// Culoare Verde.
	TEAM_COLOR, 		// Culoare Rosu, Albastru, Gri.
	GREY, 			// Culoarea Gri.
	RED, 			// Culoarea Rosu.
	BLUE, 			// Culoarea Albastru.
}

new TeamName[  ][  ] = 
{
	"",
	"TERRORIST",
	"CT",
	"SPECTATOR"
}

ColorChat(  id, Color:iType, const msg[  ], { Float, Sql, Result, _}:...  )
{
	
	// Daca nu se afla nici un jucator pe server oprim TOT. Altfel dam de erori..
	if( !get_playersnum( ) ) return;
	
	new szMessage[ 256 ];

	switch( iType )
	{
		 // Culoarea care o are jucatorul setata in cvar-ul scr_concolor.
		case NORMAL:	szMessage[ 0 ] = 0x01;
		
		// Culoare Verde.
		case GREEN:	szMessage[ 0 ] = 0x04;
		
		// Alb, Rosu, Albastru.
		default: 	szMessage[ 0 ] = 0x03;
	}

	vformat(  szMessage[ 1 ], 251, msg, 4  );

	// Ne asiguram ca mesajul nu este mai lung de 192 de caractere.Altfel pica server-ul.
	szMessage[ 192 ] = '^0';
	

	new iTeam, iColorChange, iPlayerIndex, MSG_Type;
	
	if( id )
	{
		MSG_Type  =  MSG_ONE_UNRELIABLE;
		iPlayerIndex  =  id;
	}
	else
	{
		iPlayerIndex  =  CC_FindPlayer(  );
		MSG_Type = MSG_ALL;
	}
	
	iTeam  =  get_user_team( iPlayerIndex );
	iColorChange  =  CC_ColorSelection(  iPlayerIndex,  MSG_Type, iType);

	CC_ShowColorMessage(  iPlayerIndex, MSG_Type, szMessage  );
		
	if(  iColorChange  )	CC_Team_Info(  iPlayerIndex, MSG_Type,  TeamName[ iTeam ]  );

}

CC_ShowColorMessage(  id, const iType, const szMessage[  ]  )
{
	
	static bool:bSayTextUsed;
	static iMsgSayText;
	
	if(  !bSayTextUsed  )
	{
		iMsgSayText  =  get_user_msgid( "SayText" );
		bSayTextUsed  =  true;
	}
	
	message_begin( iType, iMsgSayText, _, id  );
	write_byte(  id  )		
	write_string(  szMessage  );
	message_end(  );
}

CC_Team_Info( id, const iType, const szTeam[  ] )
{
	static bool:bTeamInfoUsed;
	static iMsgTeamInfo;
	if(  !bTeamInfoUsed  )
	{
		iMsgTeamInfo  =  get_user_msgid( "TeamInfo" );
		bTeamInfoUsed  =  true;
	}
	
	message_begin( iType, iMsgTeamInfo, _, id  );
	write_byte(  id  );
	write_string(  szTeam  );
	message_end(  );

	return 1;
}

CC_ColorSelection(  id, const iType, Color:iColorType)
{
	switch(  iColorType  )
	{
		
		case RED:	return CC_Team_Info(  id, iType, TeamName[ 1 ]  );
		case BLUE:	return CC_Team_Info(  id, iType, TeamName[ 2 ]  );
		case GREY:	return CC_Team_Info(  id, iType, TeamName[ 0 ]  );

	}

	return 0;
}

CC_FindPlayer(  )
{
	new iMaxPlayers  =  get_maxplayers(  );
	
	for( new i = 1; i <= iMaxPlayers; i++ )
		if(  is_user_connected( i )  )
			return i;
	
	return -1;
}
Imagini | Afiseaza codul
Meniul

Image


Am apasat tasta 1 si am scris parola

Image

am apasat 2 si am scris un email la vrajeala


Image


am terminat de completat datele

Image


am apasat 3

Image


dupa ce am fost inregistrat am scris iar /registernick

Image

m-am conectat pe server cu o parola gresita

Image

acum ce avem in log
NickRegistrations.log | Afiseaza codul
L 06/29/2013 - 18:10:28: Log file started (file "cstrike\addons\amxmodx\logs\NickRegistrations.log") (game "cstrike") (amx "1.8.1.3746")
L 06/29/2013 - 18:10:28: Am incarcat cu succes 2 nick-uri inregistrate!
L 06/29/2013 - 18:12:37: --| Askhanar #2 ( 192.168.1.3:27005 ) s-a inregistrat cu succes[ Nick: Askhanar #2 | Parola: parola123 | E-Mail: [email protected] ]
L 06/29/2013 - 18:13:04: --| Askhanar #2 ( 192.168.1.3 ) Parola gresita! ( test1, Parola corecta: parola123 )
L 06/29/2013 - 18:13:20: --| Askhanar #2 ( 192.168.1.3 ) s-a logat cu succes( Parola: parola123, E-Mail: [email protected] )
cum arata fisierul cu datele
NickRegistrations.txt | Afiseaza codul
"lol" "password1" "[email protected]"
"Askhanar" "test1234" "[email protected]"
"Askhanar #2" "parola123" "[email protected]"

puneti`l pe server si jucati`va prin meniu.. sunt mai multe functii

parola nu poate fi mai mica de 6 caractere si nici mai lunga de 15
mailul nu poate fi mai mic de 9 caractere.

nu poti apasa butonul 3 daca nu ai cele 2 date completate.

Pentru ca pluginul sa functioneze este necesar de AMXMODX 1.8.1 sau o versiune mai noua.
Pluginul nu are limita la salvarea numelor.
Last edited by Ulquiorra on 30 Jun 2013, 23:31, edited 2 times in total.
Caut o persoana dedicata care se pricepe si stie ce face.
Vreau sa creeze si sa se ocupe de administrarea unui server de MU, da e vorba de vechiul joc..ma gandesc undeva la un season 3 ep1/2.

O sa achizitionez un domeniu .ro.
Totodata sponsorizez absolut orice este necesar.
Ma puteti contacta prin: http://solo.to/stfrzv
User avatar
KrAiD.
Fost moderator
Fost moderator
Posts: 866
Joined: 15 Jun 2013, 12:14
Detinator Steam: Da
CS Status: Cat de cat activ :D
Detinator server CS: Nu
Reputatie: Fost Moderator ajutator
0.7 / 3
Has thanked: 14 times
Been thanked: 131 times
Contact:

29 Jun 2013, 18:37

Askhanar Da-mi id-ul tau de mes sau de skype... bun plugin
User avatar
Gabriel963
Fost moderator
Fost moderator
Posts: 1658
Joined: 03 Feb 2013, 13:03
Detinator Steam: Da
CS Status: Retried
Reputatie: Membru Club eXtreamCS (1 luna)
Fost Moderator
Location: Bucharest, Romania.
Has thanked: 20 times
Been thanked: 85 times

29 Jun 2013, 18:41

La mine playerii se pot inregistra pe site si apare asa in users.ini, mai jos de admini.

Code: Select all

;|==============================================================================================|
;|---===[ Nick-uri Inregistrate ]===---		 			                   |
;|==============================================================================================|
"DeathOrange" "xxx" "z" "a" //# "[email protected]" "46.51.33.28"
"MarYuS!" "xxxx" "z" "a" //# "[email protected]" "213.233.92.210"
"Aloe" "xxxx" "z" "a" //# "[email protected]" "85.122.89.115"
"Gabriel963" "xxxx" "z" "a" //# "[email protected]" "109.98.187.125"
Poti face asa direct dupa sv?
Image
Post Reply

Return to “Cereri”

  • Information
  • Who is online

    Users browsing this forum: Yandex [Bot] and 42 guests