[Ajuda] Help
#1

Seguinte, Queria Melhorar esse codigo, Coloquei as textdraw's no Meu Sistema de Login/Registro, Sу que ficou Bugado, Queria Saber se Consigo Por Pra carregar os Arquivos Uma Vez Sу, Por que Toda ver que Clico nas Textdraw's Login/registro Carrega as coisas.

Ex: Clico em Registro, ele carrega Pra ver se a conta Ja estб registrada, Mas se clicar denovo ele carrega Novamente e Vai Multiplicando As Coisas Salvas Score, Money, etc..


Код:
public OnPlayerClickPlayerTextDraw(playerid, PlayerText:playertextid)
{
    new cmdString[200];

	if(playertextid == PlayerRegistro[0])
    {
        if (PlayerFile_Load(playerid) == 0) 
		{
    	    for(new i = 4; i < sizeof(Registro); i++) { TextDrawHideForPlayer(playerid, Registro[i]); }
			for(new i; i < sizeof(PlayerRegistro); i++) { PlayerTextDrawHide(playerid, PlayerRegistro[i]); }

			format(cmdString, sizeof(cmdString),"{F8F8FF}Bem Vindo(a) Ao Servidor {EE3B3B}%s{F8F8FF}\n\nVocк nгo tem uma Conta registrada\n\nDigite uma senha para Registrar\n\nStatus: {EE3B3B}N/A Registrado{F8F8FF}\n\nIP: {EE3B3B}%s", Nome, IP(playerid));
			ShowPlayerDialog(playerid, DIALOG_REGISTRO, DIALOG_STYLE_PASSWORD, "~   REGISTRANDO   ~", cmdString, "Registrar", "Cancelar");
		}
		else
	  	{
			SendClientMessage(playerid, COR_AVISO, "• Vocк ja tem uma Conta, Clique em Logar para Logar.");
		}
	}
	if(playertextid == PlayerRegistro[1])
	{
        if (PlayerFile_Load(playerid) == 1)
		{

			for(new i = 4; i < sizeof(Registro); i++) { TextDrawHideForPlayer(playerid, Registro[i]); }
			for(new i; i < sizeof(PlayerRegistro); i++) { PlayerTextDrawHide(playerid, PlayerRegistro[i]); }

			format(cmdString, sizeof(cmdString),"{F8F8FF}Bem Vindo(a) Ao Servidor {EE3B3B}%s{F8F8FF}\n\nVocк ja tem uma Conta registrada\n\nDigite sua Senha para Logar\n\nStatus: {EE3B3B}Registrado{F8F8FF}\n\nIP: {EE3B3B}%s", Nome, IP(playerid));
			ShowPlayerDialog(playerid, DIALOG_LOGIN, DIALOG_STYLE_PASSWORD, "~   LOGANDO   ~", cmdString, "Logar", "Cancelar");
		}
		else
		{
			SendClientMessage(playerid, COR_AVISO, "• Vocк nгo tem uma Conta, Clique em Registrar para Registrar.");
		}
    }
	if(playertextid == PlayerRegistro[2])
	{

		for(new i = 4; i < sizeof(Registro); i++) { TextDrawHideForPlayer(playerid, Registro[i]); }
		for(new i; i < sizeof(PlayerRegistro); i++) { PlayerTextDrawHide(playerid, PlayerRegistro[i]); }

		for(new i = 0; i < sizeof(Info); i++) { TextDrawShowForPlayer(playerid, Info[i]); }
		PlayerTextDrawShow(playerid, PlayerRegistro[5]);

	}
	if(playertextid == PlayerRegistro[3])
	{

		for(new i = 4; i < sizeof(Registro); i++) { TextDrawHideForPlayer(playerid, Registro[i]); }
		for(new i; i < sizeof(PlayerRegistro); i++) { PlayerTextDrawHide(playerid, PlayerRegistro[i]); }

		for(new i = 0; i < sizeof(Dicas); i++) { TextDrawShowForPlayer(playerid, Dicas[i]); }
		PlayerTextDrawShow(playerid, PlayerRegistro[5]);

	}
	if(playertextid == PlayerRegistro[4])
	{
		format(cmdString, sizeof(cmdString), "O Jogador %s Resolveu sair do Servidor", Nome);
		SendClientMessageToAll(COR_ADMIN, cmdString);
		GameTextForPlayer(playerid, "~", 1000, 6);
	}
	if(playertextid == PlayerRegistro[5])
	{
		for(new i; i < sizeof(Registro); i++) { TextDrawShowForPlayer(playerid, Registro[i]); }
		for(new i; i < sizeof(PlayerRegistro) - 1; i++) { PlayerTextDrawShow(playerid, PlayerRegistro[i]); }

		for(new i = 0; i < sizeof(Info); i++) { TextDrawHideForPlayer(playerid, Info[i]); }
		for(new i = 0; i < sizeof(Dicas); i++) { TextDrawHideForPlayer(playerid, Dicas[i]); }
		PlayerTextDrawHide(playerid, PlayerRegistro[5]);
	}
    return 1;
}
Reply
#2

Cria uma variбvel para dizer que jб foi clicado!

new clicou[MAX_PLAYERS];

EX:

Textdraw == clicarregistro
{
if(clicou[playerid] == 1) return 0;
codigo
clicou[playerid] = 1;
}
textdraw == clciarregistro2
{
if(clicou[playerid] == 2) return 0;
codigo
clicou[playerid] = 2;
}

Pelo oque eu entendi eu cheguei б isso!
Reply
#3

Quote:
Originally Posted by Jonorusc
Посмотреть сообщение
Cria uma variбvel para dizer que jб foi clicado!

new clicou[MAX_PLAYERS];

EX:

Textdraw == clicarregistro
{
if(clicou[playerid] == 1) return 0;
codigo
clicou[playerid] = 1;
}
textdraw == clciarregistro2
{
if(clicou[playerid] == 2) return 0;
codigo
clicou[playerid] = 2;
}

Pelo oque eu entendi eu cheguei б isso!
Vlw, Mas n era bem isso que eu estava procurando. Consegui Resolver.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)