Jump to content

Recommended Posts

Posted

Asa am vazut un topic si un prieten tot ma rugat sa-l invat,am decis sa va fac un tutorial.

Sa incepem.

Punem asta la inceput de fs-gm.

#define Dialog_Register 0001 //Eu am pus asa voi puteti sa la schimbati. 
#define Dialog_Login 0002 //Eu am pus asa voi puteti sa la schimbati. 
Acuma dam CTRL + H si cautam asta if(!udb_Exists(PlayerName2(playerid))) Voi aveti asta.
if(!udb_Exists(PlayerName2(playerid))) SendClientMessage(playerid,orange, "{00CEFC}ACCOUNT: {00FF19}Scrie {FC0303}/register {FFFFFF}[{00CEFC}password{FFFFFF}] {00FF19}pentru a creea un cont nou");
	else
	{
	    PlayerInfo[playerid][Registered] = 1;
		format(file,sizeof(file),"/ladmin/users/%s.sav",udb_encode(PlayerName));
		new tmp2[256]; tmp2 = dini_Get(file,"ip");
		if( (!strcmp(tmp3,tmp2,true)) && (ServerInfo[AutoLogin] == 1) )
		{
			LoginPlayer(playerid);
			if(ServerInfo[SetScore] == 1) SetPlayerScore(playerid, dUserINT(PlayerName2(playerid)).("score") );
			if(PlayerInfo[playerid][Level] > 0)
			{
				format(string,sizeof(string),"{00CEFC}ACCOUNT: {00FF19}Ai fost logat automat. {FFFFFF}({00CEFC}Level {FC0303}%d{FFFFFF})", PlayerInfo[playerid][Level] );
				SendClientMessage(playerid,green,string);
       		}
			else if(PlayerInfo[playerid][Vip] > 0)
			{
				format(string,sizeof(string),"{00CEFC}ACCOUNT: {00FF19}Ai fost logat automat. {FFFFFF}({00CEFC}Vip Level {FC0303}%d{FFFFFF})", PlayerInfo[playerid][Vip] );
				SendClientMessage(playerid,green,string);
	  		}
            else SendClientMessage(playerid,green,"{00CEFC}ACCOUNT: {00FF19}Ai fost logat automat.");
  	    }
 		else SendClientMessage(playerid, green, "{00CEFC}ACCOUNT: {00FF19}Acest nick este inregistrat {FC0303}, {00FF19}te poti loga folosind {FC0303}/login {FFFFFF}[{00CEFC}password{FFFFFF}]");
	}
    return 1;
}
il schimbati cu asta.
    if(!udb_Exists(PlayerName2(playerid))) ShowPlayerDialog( playerid, Dialog_Register , 1, "ACCOUNT:","Do not have an account please register to that will save money and scor.","Register", "Cancel");
	else
	{
	    PlayerInfo[playerid][Registered] = 1;
		format(file,sizeof(file),"/ladmin/users/%s.sav",udb_encode(PlayerName));
		new tmp2[256]; tmp2 = dini_Get(file,"ip");
		if( (!strcmp(tmp3,tmp2,true)) && (ServerInfo[AutoLogin] == 1) )
		{
			LoginPlayer(playerid);
			if(ServerInfo[SetScore] == 1) SetPlayerScore(playerid, dUserINT(PlayerName2(playerid)).("score") );
			if(PlayerInfo[playerid][Level] > 0)
			{
				format(string,sizeof(string),"{00CEFC}ACCOUNT: {00FF19}Ai fost logat automat. {FFFFFF}({00CEFC}Level {FC0303}%d{FFFFFF})", PlayerInfo[playerid][Level] );
				SendClientMessage(playerid,green,string);
       		}
			else if(PlayerInfo[playerid][Vip] > 0)
			{
				format(string,sizeof(string),"{00CEFC}ACCOUNT: {00FF19}Ai fost logat automat. {FFFFFF}({00CEFC}Vip Level {FC0303}%d{FFFFFF})", PlayerInfo[playerid][Vip] );
				SendClientMessage(playerid,green,string);
	  		}
            else SendClientMessage(playerid,green,"{00CEFC}ACCOUNT: {00FF19}Ai fost logat automat.");
  	    }
 		else ShowPlayerDialog(playerid ,Dialog_Login, 1 , "Login", "Welcome back \nThis nickname is registered, Please login. ", "Login", "Cancel" );
    }
Dece sal schimbati. Tu ai asa.  SendClientMessage(playerid,orange, "{00CEFC}ACCOUNT: {00FF19}Scrie {FC0303}/register {FFFFFF}[{00CEFC}password{FFFFFF}] {00FF19}pentru a creea un cont nou"); Da trebue de pus cu Dialog asa. ShowPlayerDialog( playerid, Dialog_Register , 1, "ACCOUNT:","Do not have an account please register to that will save money and scor.","Register", "Cancel"); Si asta la OnPlayerConnect daca nul aveti.
new PlayerName[MAX_PLAYER_NAME]
-------------------------------------------------------------------------------------------------------- Si la OnDialogResponse bagi asta, este pusa de doua ori pentru ca daca dai cancel iti da sa introduci dinou parola. Register
 if(dialogid == Dialog_Register)
    {
       if(response)
       {
		    if (strlen(inputtext) == 0) return ShowPlayerDialog(playerid ,Dialog_Register, 1 , "ACCOUNT", "Insert password please", "Register", "Cancel" );
		    if (strlen(inputtext) < 4 || strlen(inputtext) > 20) return ShowPlayerDialog(playerid ,Dialog_Register, 1 , "ACCOUNT", "Password length must be greater than three characters", "Register", "Cancel" );

	    if (udb_Create(PlayerName2(playerid),inputtext))
		{
	        new
	            file[256],
				name[MAX_PLAYER_NAME],
				tmp3[100],
    	        strdate[20],
			    year,month,day;	getdate(year, month, day);
		GetPlayerName(playerid,name,sizeof(name)); format(file,sizeof(file),"/ladmin/users/%s.sav",udb_encode(name));
     	GetPlayerIp(playerid,tmp3,100);	dini_Set(file,"ip",tmp3);
     	dini_Set(file,"password",inputtext);
	    dUserSetINT(PlayerName2(playerid)).("registered",1);
   		format(strdate, sizeof(strdate), "%d/%d/%d",day,month,year);
		dini_Set(file,"RegisteredDate",strdate);
		dUserSetINT(PlayerName2(playerid)).("loggedin",1);
		dUserSetINT(PlayerName2(playerid)).("banned",0);
		dUserSetINT(PlayerName2(playerid)).("level",0);
		dUserSetINT(PlayerName2(playerid)).("vip",0);
	    dUserSetINT(PlayerName2(playerid)).("LastOn",0);
    	dUserSetINT(PlayerName2(playerid)).("money",0);
    	dUserSetINT(PlayerName2(playerid)).("kills",0);
	   	dUserSetINT(PlayerName2(playerid)).("deaths",0);
	   	dUserSetINT(PlayerName2(playerid)).("hours",0);
	   	dUserSetINT(PlayerName2(playerid)).("minutes",0);
	   	dUserSetINT(PlayerName2(playerid)).("seconds",0);
	   	dUserSetINT(PlayerName2(playerid)).("coins",0);
	    PlayerInfo[playerid][LoggedIn] = 1;
	    PlayerInfo[playerid][Registered] = 1;
		PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
	   }
     }
   }
   if(dialogid == Dialog_Register)
   {
       if(!response)
       {
 	    if (strlen(inputtext) == 0) return ShowPlayerDialog(playerid ,Dialog_Register, 1 , "ACCOUNT", "Insert password please", "Register", "Cancel" );
		    if (strlen(inputtext) < 4 || strlen(inputtext) > 20) return ShowPlayerDialog(playerid ,Dialog_Register, 1 , "ACCOUNT", "Password length must be greater than three characters", "Register", "Cancel" );

	    if (udb_Create(PlayerName2(playerid),inputtext))
		{
	        new
	            file[256],
				name[MAX_PLAYER_NAME],
				tmp3[100],
    	        strdate[20],
			    year,month,day;	getdate(year, month, day);
		GetPlayerName(playerid,name,sizeof(name)); format(file,sizeof(file),"/ladmin/users/%s.sav",udb_encode(name));
     	GetPlayerIp(playerid,tmp3,100);	dini_Set(file,"ip",tmp3);
     	dini_Set(file,"password",inputtext);
	    dUserSetINT(PlayerName2(playerid)).("registered",1);
   		format(strdate, sizeof(strdate), "%d/%d/%d",day,month,year);
		dini_Set(file,"RegisteredDate",strdate);
		dUserSetINT(PlayerName2(playerid)).("loggedin",1);
		dUserSetINT(PlayerName2(playerid)).("banned",0);
		dUserSetINT(PlayerName2(playerid)).("level",0);
		dUserSetINT(PlayerName2(playerid)).("vip",0);
	    dUserSetINT(PlayerName2(playerid)).("LastOn",0);
    	dUserSetINT(PlayerName2(playerid)).("money",0);
    	dUserSetINT(PlayerName2(playerid)).("kills",0);
	   	dUserSetINT(PlayerName2(playerid)).("deaths",0);
	   	dUserSetINT(PlayerName2(playerid)).("hours",0);
	   	dUserSetINT(PlayerName2(playerid)).("minutes",0);
	   	dUserSetINT(PlayerName2(playerid)).("seconds",0);
	   	dUserSetINT(PlayerName2(playerid)).("coins",0);
	    PlayerInfo[playerid][LoggedIn] = 1;
	    PlayerInfo[playerid][Registered] = 1;
		PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
	   }
     }
   }
SI asta to acolo. Login
 if(dialogid == Dialog_Login)
    {
       if(response)
       {
       if (strlen(inputtext)==0) return ShowPlayerDialog(playerid ,Dialog_Login, 1 , "ACCOUNT", "Insert password please", "Login", "Cancel" );
       if (udb_CheckLogin(PlayerName2(playerid),inputtext))
       {
		new 	file[256],
				tmp3[100],
			    year,
				month,
				day;getdate(year, month, day);

	   	format(file,sizeof(file),"/ladmin/users/%s.sav",udb_encode(PlayerName2(playerid)) );
   		GetPlayerIp(playerid,tmp3,100);
	   	dini_Set(file,"ip",tmp3);
		LoginPlayer(playerid);
		PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
	   }
      }
    }
	else {
		PlayerInfo[playerid][FailLogin]++;
		printf("LOGIN: %s has failed to login, Wrong password (%s) Attempt (%d)", PlayerName2(playerid), inputtext, PlayerInfo[playerid][FailLogin] );
		if(PlayerInfo[playerid][FailLogin] == MAX_FAIL_LOGINS)
		{
			new string[128]; format(string, sizeof(string), "%s has been kicked (Failed Logins)", PlayerName2(playerid) );
			ShowPlayerDialog(playerid, 9999, 0, ".::ACCOUNT::.", string, "Ok", "");
			print(string);
			Kick(playerid);
		}
		return ShowPlayerDialog(playerid ,Dialog_Login, 1 , "ACCOUNT", "Login failed! Incorrect Password", "Login", "Cancel" );
   }
   if(dialogid == Dialog_Login)
    {
       if(!response)
       {
      if (PlayerInfo[playerid][LoggedIn] == 1) return ShowPlayerDialog(playerid ,Dialog_Login, 1 , "ACCOUNT", "You are already logged in.", "Login", "Cancel" );
	      if (!udb_Exists(PlayerName2(playerid))) return ShowPlayerDialog(playerid ,Dialog_Login, 1 , "ACCOUNT", "Account doesn't exist, please use 'register' ", "Login", "Cancel" );
	      if (strlen(inputtext)==0) return ShowPlayerDialog(playerid ,Dialog_Login, 1 , "ACCOUNT", "Insert password please", "Login", "Cancel" );
       if (udb_CheckLogin(PlayerName2(playerid),inputtext))
       {
		new 	file[256],
				tmp3[100],
			    year,
				month,
				day;getdate(year, month, day);

	   	format(file,sizeof(file),"/ladmin/users/%s.sav",udb_encode(PlayerName2(playerid)) );
   		GetPlayerIp(playerid,tmp3,100);
	   	dini_Set(file,"ip",tmp3);
		LoginPlayer(playerid);
		PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
    }
	else {
		PlayerInfo[playerid][FailLogin]++;
		printf("LOGIN: %s has failed to login, Wrong password (%s) Attempt (%d)", PlayerName2(playerid), inputtext, PlayerInfo[playerid][FailLogin] );
		if(PlayerInfo[playerid][FailLogin] == MAX_FAIL_LOGINS)
		{
			new string[128]; format(string, sizeof(string), "%s has been kicked (Failed Logins)", PlayerName2(playerid) );
			ShowPlayerDialog(playerid, 9999, 0, ".::ACCOUNT::.", string, "Ok", "");
			print(string);
			Kick(playerid);
		}
		return ShowPlayerDialog(playerid ,Dialog_Login, 1 , "ACCOUNT", "Login failed! Incorrect Password", "Login", "Cancel" );
       }
     }
   }

Ceva intrebari nelamuriri nu va aptineti spunetile ca va voi ajuta .

Posted

Nu ma descurc dami tu ladmin direct modificat ...

Ps : la mine nu e asa .

Cum nu ma =P

Daca ai Ladmin ne-editat..sa stii ca el nu are public OnDialog Response

Creeazo tu!

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
	//Register
    if(dialogid == Dialog_Register)
    {
       if(response)
       {
		    if (strlen(inputtext) == 0) return ShowPlayerDialog(playerid ,Dialog_Register, 1 , "ACCOUNT", "Insert password please", "Register", "Cancel" );
		    if (strlen(inputtext) < 4 || strlen(inputtext) > 20) return ShowPlayerDialog(playerid ,Dialog_Register, 1 , "ACCOUNT", "Password length must be greater than three characters", "Register", "Cancel" );

	    if (udb_Create(PlayerName2(playerid),inputtext))
		{
	        new
	            file[256],
				name[MAX_PLAYER_NAME],
				tmp3[100],
    	        strdate[20],
			    year,month,day;	getdate(year, month, day);
		GetPlayerName(playerid,name,sizeof(name)); format(file,sizeof(file),"/ladmin/users/%s.sav",udb_encode(name));
     	GetPlayerIp(playerid,tmp3,100);	dini_Set(file,"ip",tmp3);
     	dini_Set(file,"password",inputtext);
	    dUserSetINT(PlayerName2(playerid)).("registered",1);
   		format(strdate, sizeof(strdate), "%d/%d/%d",day,month,year);
		dini_Set(file,"RegisteredDate",strdate);
		dUserSetINT(PlayerName2(playerid)).("loggedin",1);
		dUserSetINT(PlayerName2(playerid)).("banned",0);
		dUserSetINT(PlayerName2(playerid)).("level",0);
	    dUserSetINT(PlayerName2(playerid)).("LastOn",0);
    	dUserSetINT(PlayerName2(playerid)).("money",0);
    	dUserSetINT(PlayerName2(playerid)).("kills",0);
	   	dUserSetINT(PlayerName2(playerid)).("deaths",0);
	   	dUserSetINT(PlayerName2(playerid)).("hours",0);
	   	dUserSetINT(PlayerName2(playerid)).("minutes",0);
	   	dUserSetINT(PlayerName2(playerid)).("seconds",0);
	    PlayerInfo[playerid][LoggedIn] = 1;
	    PlayerInfo[playerid][Registered] = 1;
		PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
	   }
     }
   }
   if(dialogid == Dialog_Register)
   {
       if(!response)
       {
 	    if (strlen(inputtext) == 0) return ShowPlayerDialog(playerid ,Dialog_Register, 1 , "ACCOUNT", "Insert password please", "Register", "Cancel" );
		    if (strlen(inputtext) < 4 || strlen(inputtext) > 20) return ShowPlayerDialog(playerid ,Dialog_Register, 1 , "ACCOUNT", "Password length must be greater than three characters", "Register", "Cancel" );

	    if (udb_Create(PlayerName2(playerid),inputtext))
		{
	        new
	            file[256],
				name[MAX_PLAYER_NAME],
				tmp3[100],
    	        strdate[20],
			    year,month,day;	getdate(year, month, day);
		GetPlayerName(playerid,name,sizeof(name)); format(file,sizeof(file),"/ladmin/users/%s.sav",udb_encode(name));
     	GetPlayerIp(playerid,tmp3,100);	dini_Set(file,"ip",tmp3);
     	dini_Set(file,"password",inputtext);
	    dUserSetINT(PlayerName2(playerid)).("registered",1);
   		format(strdate, sizeof(strdate), "%d/%d/%d",day,month,year);
		dini_Set(file,"RegisteredDate",strdate);
		dUserSetINT(PlayerName2(playerid)).("loggedin",1);
		dUserSetINT(PlayerName2(playerid)).("banned",0);
		dUserSetINT(PlayerName2(playerid)).("level",0);
	    dUserSetINT(PlayerName2(playerid)).("LastOn",0);
    	dUserSetINT(PlayerName2(playerid)).("money",0);
    	dUserSetINT(PlayerName2(playerid)).("kills",0);
	   	dUserSetINT(PlayerName2(playerid)).("deaths",0);
	   	dUserSetINT(PlayerName2(playerid)).("hours",0);
	   	dUserSetINT(PlayerName2(playerid)).("minutes",0);
	   	dUserSetINT(PlayerName2(playerid)).("seconds",0);
	    PlayerInfo[playerid][LoggedIn] = 1;
	    PlayerInfo[playerid][Registered] = 1;
		PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
	   }
     }
   }
   //Login
   if(dialogid == Dialog_Login)
    {
       if(response)
       {
       if (strlen(inputtext)==0) return ShowPlayerDialog(playerid ,Dialog_Login, 1 , "ACCOUNT", "Insert password please", "Login", "Cancel" );
       if (udb_CheckLogin(PlayerName2(playerid),inputtext))
       {
		new 	file[256],
				tmp3[100],
			    year,
				month,
				day;getdate(year, month, day);

	   	format(file,sizeof(file),"/ladmin/users/%s.sav",udb_encode(PlayerName2(playerid)) );
   		GetPlayerIp(playerid,tmp3,100);
	   	dini_Set(file,"ip",tmp3);
		LoginPlayer(playerid);
		PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
	   }
      }
    }
	else {
		PlayerInfo[playerid][FailLogin]++;
		printf("LOGIN: %s has failed to login, Wrong password (%s) Attempt (%d)", PlayerName2(playerid), inputtext, PlayerInfo[playerid][FailLogin] );
		if(PlayerInfo[playerid][FailLogin] == MAX_FAIL_LOGINS)
		{
			new string[128]; format(string, sizeof(string), "%s has been kicked (Failed Logins)", PlayerName2(playerid) );
			ShowPlayerDialog(playerid, 9999, 0, ".::ACCOUNT::.", string, "Ok", "");
			print(string);
			Kick(playerid);
		}
		return ShowPlayerDialog(playerid ,Dialog_Login, 1 , "ACCOUNT", "Login failed! Incorrect Password", "Login", "Cancel" );
   }
   if(dialogid == Dialog_Login)
    {
       if(!response)
       {
      if (PlayerInfo[playerid][LoggedIn] == 1) return ShowPlayerDialog(playerid ,Dialog_Login, 1 , "{FFFFFF}ACCOUNT", "{FF0000}You are already logged in.", "Login", "Cancel" );
	      if (!udb_Exists(PlayerName2(playerid))) return ShowPlayerDialog(playerid ,Dialog_Login, 1 , "{FFFFFF}ACCOUNT", "{FF0000}Account doesn't exist, please use 'register' ", "Login", "Cancel" );
	      if (strlen(inputtext)==0) return ShowPlayerDialog(playerid ,Dialog_Login, 1 , "{FFFFFF}ACCOUNT", "{FF0000}nsert password please", "Login", "Cancel" );
       if (udb_CheckLogin(PlayerName2(playerid),inputtext))
       {
		new 	file[256],
				tmp3[100],
			    year,
				month,
				day;getdate(year, month, day);

	   	format(file,sizeof(file),"/ladmin/users/%s.sav",udb_encode(PlayerName2(playerid)) );
   		GetPlayerIp(playerid,tmp3,100);
	   	dini_Set(file,"ip",tmp3);
		LoginPlayer(playerid);
		PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
    }
	else {
		PlayerInfo[playerid][FailLogin]++;
		printf("LOGIN: %s has failed to login, Wrong password (%s) Attempt (%d)", PlayerName2(playerid), inputtext, PlayerInfo[playerid][FailLogin] );
		if(PlayerInfo[playerid][FailLogin] == MAX_FAIL_LOGINS)
		{
			new string[128]; format(string, sizeof(string), "%s has been kicked (Failed Logins)", PlayerName2(playerid) );
			ShowPlayerDialog(playerid, 9999, 0, ".::ACCOUNT::.", string, "Ok", "");
			print(string);
			Kick(playerid);
		}
		return ShowPlayerDialog(playerid ,Dialog_Login, 1 , "ACCOUNT", "Login failed! Incorrect Password", "Login", "Cancel" );
       }
     }
   }
   return 1;
}
Uite aici publicu tot cu Response la Login si Register =P Daca ai Ladmin ne-editat nu mai trebuie sa adaugi la onplayerconnect
new PlayerName[MAX_PLAYER_NAME]
pt. ca deja ii pus.
Asa am vazut un topic si un prieten tot ma rugat sa-l invat,am decis sa va fac un tutorial. Sa incepem. Punem asta la inceput de fs-gm.
#define Dialog_Register 0001 //Eu am pus asa voi puteti sa la schimbati. 
#define Dialog_Login 0002 //Eu am pus asa voi puteti sa la schimbati. 
Acuma dam CTRL + H si cautam asta if(!udb_Exists(PlayerName2(playerid))) Voi aveti asta.
if(!udb_Exists(PlayerName2(playerid))) SendClientMessage(playerid,orange, "{00CEFC}ACCOUNT: {00FF19}Scrie {FC0303}/register {FFFFFF}[{00CEFC}password{FFFFFF}] {00FF19}pentru a creea un cont nou");
	else
	{
	    PlayerInfo[playerid][Registered] = 1;
		format(file,sizeof(file),"/ladmin/users/%s.sav",udb_encode(PlayerName));
		new tmp2[256]; tmp2 = dini_Get(file,"ip");
		if( (!strcmp(tmp3,tmp2,true)) && (ServerInfo[AutoLogin] == 1) )
		{
			LoginPlayer(playerid);
			if(ServerInfo[SetScore] == 1) SetPlayerScore(playerid, dUserINT(PlayerName2(playerid)).("score") );
			if(PlayerInfo[playerid][Level] > 0)
			{
				format(string,sizeof(string),"{00CEFC}ACCOUNT: {00FF19}Ai fost logat automat. {FFFFFF}({00CEFC}Level {FC0303}%d{FFFFFF})", PlayerInfo[playerid][Level] );
				SendClientMessage(playerid,green,string);
       		}
			else if(PlayerInfo[playerid][Vip] > 0)
			{
				format(string,sizeof(string),"{00CEFC}ACCOUNT: {00FF19}Ai fost logat automat. {FFFFFF}({00CEFC}Vip Level {FC0303}%d{FFFFFF})", PlayerInfo[playerid][Vip] );
				SendClientMessage(playerid,green,string);
	  		}
            else SendClientMessage(playerid,green,"{00CEFC}ACCOUNT: {00FF19}Ai fost logat automat.");
  	    }
 		else SendClientMessage(playerid, green, "{00CEFC}ACCOUNT: {00FF19}Acest nick este inregistrat {FC0303}, {00FF19}te poti loga folosind {FC0303}/login {FFFFFF}[{00CEFC}password{FFFFFF}]");
	}
    return 1;
}
il schimbati cu asta.
    if(!udb_Exists(PlayerName2(playerid))) ShowPlayerDialog( playerid, Dialog_Register , 1, "ACCOUNT:","Do not have an account please register to that will save money and scor.","Register", "Cancel");
	else
	{
	    PlayerInfo[playerid][Registered] = 1;
		format(file,sizeof(file),"/ladmin/users/%s.sav",udb_encode(PlayerName));
		new tmp2[256]; tmp2 = dini_Get(file,"ip");
		if( (!strcmp(tmp3,tmp2,true)) && (ServerInfo[AutoLogin] == 1) )
		{
			LoginPlayer(playerid);
			if(ServerInfo[SetScore] == 1) SetPlayerScore(playerid, dUserINT(PlayerName2(playerid)).("score") );
			if(PlayerInfo[playerid][Level] > 0)
			{
				format(string,sizeof(string),"{00CEFC}ACCOUNT: {00FF19}Ai fost logat automat. {FFFFFF}({00CEFC}Level {FC0303}%d{FFFFFF})", PlayerInfo[playerid][Level] );
				SendClientMessage(playerid,green,string);
       		}
			else if(PlayerInfo[playerid][Vip] > 0)
			{
				format(string,sizeof(string),"{00CEFC}ACCOUNT: {00FF19}Ai fost logat automat. {FFFFFF}({00CEFC}Vip Level {FC0303}%d{FFFFFF})", PlayerInfo[playerid][Vip] );
				SendClientMessage(playerid,green,string);
	  		}
            else SendClientMessage(playerid,green,"{00CEFC}ACCOUNT: {00FF19}Ai fost logat automat.");
  	    }
 		else ShowPlayerDialog(playerid ,Dialog_Login, 1 , ""L"Login", "Welcome back \nThis nickname is registered, Please login. ", "Login", "Cancel" );
    }
Dece sal schimbati. Tu ai asa.  SendClientMessage(playerid,orange, "{00CEFC}ACCOUNT: {00FF19}Scrie {FC0303}/register {FFFFFF}[{00CEFC}password{FFFFFF}] {00FF19}pentru a creea un cont nou"); Da trebue de pus cu Dialog asa. ShowPlayerDialog( playerid, Dialog_Register , 1, "ACCOUNT:","Do not have an account please register to that will save money and scor.","Register", "Cancel"); Si asta la OnPlayerConnect daca nul aveti.
new PlayerName[MAX_PLAYER_NAME]
-------------------------------------------------------------------------------------------------------- Si la OnDialogResponse bagi asta, este pusa de doua ori pentru ca daca dai cancel iti da sa introduci dinou parola. Register
 if(dialogid == Dialog_Register)
    {
       if(response)
       {
		    if (strlen(inputtext) == 0) return ShowPlayerDialog(playerid ,Dialog_Register, 1 , "ACCOUNT", "Insert password please", "Register", "Cancel" );
		    if (strlen(inputtext) < 4 || strlen(inputtext) > 20) return ShowPlayerDialog(playerid ,Dialog_Register, 1 , "ACCOUNT", "Password length must be greater than three characters", "Register", "Cancel" );

	    if (udb_Create(PlayerName2(playerid),inputtext))
		{
	        new
	            file[256],
				name[MAX_PLAYER_NAME],
				tmp3[100],
    	        strdate[20],
			    year,month,day;	getdate(year, month, day);
		GetPlayerName(playerid,name,sizeof(name)); format(file,sizeof(file),"/ladmin/users/%s.sav",udb_encode(name));
     	GetPlayerIp(playerid,tmp3,100);	dini_Set(file,"ip",tmp3);
     	dini_Set(file,"password",inputtext);
	    dUserSetINT(PlayerName2(playerid)).("registered",1);
   		format(strdate, sizeof(strdate), "%d/%d/%d",day,month,year);
		dini_Set(file,"RegisteredDate",strdate);
		dUserSetINT(PlayerName2(playerid)).("loggedin",1);
		dUserSetINT(PlayerName2(playerid)).("banned",0);
		dUserSetINT(PlayerName2(playerid)).("level",0);
		dUserSetINT(PlayerName2(playerid)).("vip",0);
	    dUserSetINT(PlayerName2(playerid)).("LastOn",0);
    	dUserSetINT(PlayerName2(playerid)).("money",0);
    	dUserSetINT(PlayerName2(playerid)).("kills",0);
	   	dUserSetINT(PlayerName2(playerid)).("deaths",0);
	   	dUserSetINT(PlayerName2(playerid)).("hours",0);
	   	dUserSetINT(PlayerName2(playerid)).("minutes",0);
	   	dUserSetINT(PlayerName2(playerid)).("seconds",0);
	   	dUserSetINT(PlayerName2(playerid)).("coins",0);
	    PlayerInfo[playerid][LoggedIn] = 1;
	    PlayerInfo[playerid][Registered] = 1;
		PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
	   }
     }
   }
   if(dialogid == Dialog_Register)
   {
       if(!response)
       {
 	    if (strlen(inputtext) == 0) return ShowPlayerDialog(playerid ,Dialog_Register, 1 , "ACCOUNT", "Insert password please", "Register", "Cancel" );
		    if (strlen(inputtext) < 4 || strlen(inputtext) > 20) return ShowPlayerDialog(playerid ,Dialog_Register, 1 , "ACCOUNT", "Password length must be greater than three characters", "Register", "Cancel" );

	    if (udb_Create(PlayerName2(playerid),inputtext))
		{
	        new
	            file[256],
				name[MAX_PLAYER_NAME],
				tmp3[100],
    	        strdate[20],
			    year,month,day;	getdate(year, month, day);
		GetPlayerName(playerid,name,sizeof(name)); format(file,sizeof(file),"/ladmin/users/%s.sav",udb_encode(name));
     	GetPlayerIp(playerid,tmp3,100);	dini_Set(file,"ip",tmp3);
     	dini_Set(file,"password",inputtext);
	    dUserSetINT(PlayerName2(playerid)).("registered",1);
   		format(strdate, sizeof(strdate), "%d/%d/%d",day,month,year);
		dini_Set(file,"RegisteredDate",strdate);
		dUserSetINT(PlayerName2(playerid)).("loggedin",1);
		dUserSetINT(PlayerName2(playerid)).("banned",0);
		dUserSetINT(PlayerName2(playerid)).("level",0);
		dUserSetINT(PlayerName2(playerid)).("vip",0);
	    dUserSetINT(PlayerName2(playerid)).("LastOn",0);
    	dUserSetINT(PlayerName2(playerid)).("money",0);
    	dUserSetINT(PlayerName2(playerid)).("kills",0);
	   	dUserSetINT(PlayerName2(playerid)).("deaths",0);
	   	dUserSetINT(PlayerName2(playerid)).("hours",0);
	   	dUserSetINT(PlayerName2(playerid)).("minutes",0);
	   	dUserSetINT(PlayerName2(playerid)).("seconds",0);
	   	dUserSetINT(PlayerName2(playerid)).("coins",0);
	    PlayerInfo[playerid][LoggedIn] = 1;
	    PlayerInfo[playerid][Registered] = 1;
		PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
	   }
     }
   }
SI asta to acolo. Login
 if(dialogid == Dialog_Login)
    {
       if(response)
       {
       if (strlen(inputtext)==0) return ShowPlayerDialog(playerid ,Dialog_Login, 1 , "ACCOUNT", "Insert password please", "Login", "Cancel" );
       if (udb_CheckLogin(PlayerName2(playerid),inputtext))
       {
		new 	file[256],
				tmp3[100],
			    year,
				month,
				day;getdate(year, month, day);

	   	format(file,sizeof(file),"/ladmin/users/%s.sav",udb_encode(PlayerName2(playerid)) );
   		GetPlayerIp(playerid,tmp3,100);
	   	dini_Set(file,"ip",tmp3);
		LoginPlayer(playerid);
		PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
	   }
      }
    }
	else {
		PlayerInfo[playerid][FailLogin]++;
		printf("LOGIN: %s has failed to login, Wrong password (%s) Attempt (%d)", PlayerName2(playerid), inputtext, PlayerInfo[playerid][FailLogin] );
		if(PlayerInfo[playerid][FailLogin] == MAX_FAIL_LOGINS)
		{
			new string[128]; format(string, sizeof(string), "%s has been kicked (Failed Logins)", PlayerName2(playerid) );
			ShowPlayerDialog(playerid, 9999, 0, ".::ACCOUNT::.", string, "Ok", "");
			print(string);
			Kick(playerid);
		}
		return ShowPlayerDialog(playerid ,Dialog_Login, 1 , "ACCOUNT", "Login failed! Incorrect Password", "Login", "Cancel" );
   }
   if(dialogid == Dialog_Login)
    {
       if(!response)
       {
      if (PlayerInfo[playerid][LoggedIn] == 1) return ShowPlayerDialog(playerid ,Dialog_Login, 1 , ""L"ACCOUNT", ""R"You are already logged in.", "Login", "Cancel" );
	      if (!udb_Exists(PlayerName2(playerid))) return ShowPlayerDialog(playerid ,Dialog_Login, 1 , ""L"ACCOUNT", ""R"Account doesn't exist, please use 'register' ", "Login", "Cancel" );
	      if (strlen(inputtext)==0) return ShowPlayerDialog(playerid ,Dialog_Login, 1 , ""L"ACCOUNT", ""R"Insert password please", "Login", "Cancel" );
       if (udb_CheckLogin(PlayerName2(playerid),inputtext))
       {
		new 	file[256],
				tmp3[100],
			    year,
				month,
				day;getdate(year, month, day);

	   	format(file,sizeof(file),"/ladmin/users/%s.sav",udb_encode(PlayerName2(playerid)) );
   		GetPlayerIp(playerid,tmp3,100);
	   	dini_Set(file,"ip",tmp3);
		LoginPlayer(playerid);
		PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
    }
	else {
		PlayerInfo[playerid][FailLogin]++;
		printf("LOGIN: %s has failed to login, Wrong password (%s) Attempt (%d)", PlayerName2(playerid), inputtext, PlayerInfo[playerid][FailLogin] );
		if(PlayerInfo[playerid][FailLogin] == MAX_FAIL_LOGINS)
		{
			new string[128]; format(string, sizeof(string), "%s has been kicked (Failed Logins)", PlayerName2(playerid) );
			ShowPlayerDialog(playerid, 9999, 0, ".::ACCOUNT::.", string, "Ok", "");
			print(string);
			Kick(playerid);
		}
		return ShowPlayerDialog(playerid ,Dialog_Login, 1 , "ACCOUNT", "Login failed! Incorrect Password", "Login", "Cancel" );
       }
     }
   }

Ceva intrebari nelamuriri nu va aptineti spunetile ca va voi ajuta .

Frumos tutorial :P DAR trebuia sa folosesti Ladmin original cand ai facut dialogurile sa le postezi aici pt. ca tu! in acele dialoguri ai inclus culori "L" si "R" si plus ca la Register ai pus la User sa se creeze si linia Coins si VIP..poate ca unii au folosit LAdmin ne-editat la crearea acelor dialoguri dupa tutorialul tau, si le vor aparea o gramada de erori si eu mai stiu din cauza ca Ladmin-ul lor nu recunoastea liniile cu VIP, Coins si bla bla....eu ti-as spune sa il refaci dinou dar sa  folosesti LAdmin original sa fie ne-editat ca asa nu vor fi probleme de nici un fel=P :D

4/5


F*ck everybody who want and who try to judge me for who I am, b*star*s !

 

 

Posted

80% din toti scripteri din www.sa-mp.ro utilizeaza Ladminu meu editat din DKR.

Care are coins si vip de asta lam facut asa.

Asta doar cei care nu au.

new PlayerName[MAX_PLAYER_NAME]

Pana diseara mai fac inca o parte da cu original.

  • 7 months later...
Posted

Am Ladminu din DKR si am facut ce zce aici atat ca nu aveam asta public OnDialogResponse am adaugat si linia asta cu tot ce trebuie fara nici o erroare sau warning dar nu merge cand intru imi da direct sa dau login nu register si eu nu am cont  ?

  • 1 month later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more details you can also review our Terms of Use and Privacy Policy.