[Problema] Login

¿Tienes dudas sobre un código? Consúltalas aquí y aprende cómo se solucionan diferentes tipos de errores.

Moderador: Ayudantes

Reglas del Foro
  • A la hora de realizar su pregunta, especifique bien los detalles y tenga buena ortografía, de esa manera el resto de los usuarios podrán entender su pregunta.
  • Recuerde proporcionar el código que le trae problemas y sus respectivos errores utilizando el BBCode [Pawn]Código aquí[/Pawn] en su mensaje.
  • En esta sección, sólo podrás publicar preguntas asociadas a programación en PAWN ("¿Cuál es la diferencia entre new y static?"), más no temas relacionados a pedir códigos ("¿Me pueden pasar el sistema de 'X' servidor?"). (Ir a Pedidos para publicar estos temas).
  • Si tu pregunta es relacionada con un GM publicado en PawnScript, no crees tu pregunta en esta sección, créala en el mismo tema desde donde obtuviste el GameMode.
  • Evita colocar títulos como: "[Pregunta]", "[Duda]", "[Ayuda]", etc. Los títulos deben ser descriptivos.
  • Si la pregunta es respondida, no modifiques el título ni el contenido de los mensajes del tema. Quizás le pueda servir a alguien más en otro momento.
  • Si la pregunta es respondida, el tema será movido a "Preguntas Solucionadas".
  • Si la pregunta no cumple con alguna de las reglas antes mencionadas o con las Normas del foro, el tema será movido a "Preguntas Cerradas" o a la Papelera.
Responder
Lolkilla
Aprendiz
Aprendiz
Mensajes: 158
Registrado: 29 Mar 2014 17:30
Reputación: 0

20 Jun 2019 12:18

Estoy usando la gm de HA-RP - ZC y la modifiqué completamente, pero la había abandonado porque dejé de scriptear por un tiempo, la dejé con un error pero ya no recuerdo que fue lo que último que hice, lo que sucede es que al igresar no lanza al panel de ingreso o de registro, no entiendo que sucede, por acá voy a dejar el OnplayerConnect y las funciones de logeo y registro, no encuentro el error porque todo parece estar en orden, acá lo dejo.

Función OnplayerConnect.
 Codigo Pawno:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200

public OnPlayerConnect(playerid)
{
    gettime(Hora, Minuto);
    SetPlayerTime(playerid,Hora,Minuto);
    EncendioMotor[playerid] = 0;
	ApagoMotor[playerid] = 0;
    if(IsPlayerNPC(playerid)) return 1;
	new playerIP[32];
	GetPlayerIp(playerid, playerIP, sizeof(playerIP));
	SetPlayerColor(playerid,COLOR_WHITE);
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
	SendClientMessage(playerid, COLOR_WHITE, "=====================================================");
    SendClientMessage(playerid, COLOR_WHITE, "| HARP - Roleplay - Gracias por esta oportunidad|");
	SendClientMessage(playerid, COLOR_WHITE, "====================================================");
	if (CheckBan(playerIP) == 1)
	{
	    SetPlayerName(playerid, "BannedPlayer");
	    SendClientMessage(playerid, COLOR_RED, "{0040FF}[PD-RP]{FFFFFF} Te Encuentras Baneado Del Servidor.");
		SetTimerEx("TimerKICK",1000,0,"d",playerid);
		return 1;
 	}

	TotalConnect++;
	resetPlayerVariables(playerid);
	MapsRemoveForPlayer(playerid);
	ClearMarriage(playerid);
	SyncPlayerTime(playerid);
 	ShowMenuLogin(playerid);
 	new pame[MAX_PLAYER_NAME];
    GetPlayerName(playerid, pame, sizeof(pame));
	new connecting_ip[32+1];
	GetPlayerIp(playerid,connecting_ip,32);
	new num_players_on_ip = GetNumberOfPlayersOnThisIP(connecting_ip);

 #if defined antinick_crash
		if(!strcmp("con",pame,true) || !strcmp("aux",pame,true) || !strcmp("prn",pame,true) || !strcmp("lptn",pame,true) || !strcmp("nul",pame,true) || !strcmp("clock$",pame,true))
	{
	    format(string7, sizeof(string7), "[PC-RP]: %s ah sido kickeado Automaticamente [Razon: Nombre Reservado De Windows]", pame);
    	SendClientMessageToAll(red, string7);
    	#if defined Guardar_Logs
    	GuardarAntiBot("NameCrash",string7);
		#endif
    	printf(string7);
		SetTimerEx("TimerKICK",1000,0,"d",playerid);
	}
	#endif
	if(num_players_on_ip > MAX_CONNECTIONS_FROM_IP) {
 	format(string7, sizeof(string7), "[PC-RP]: %s [%i] a Sido Baneado Automaticamente [Razon: Bot ( %d Bots Detectados )]", pame,playerid,MAX_CONNECTIONS_FROM_IP);
	SendClientMessageToAll(red, string7);
	#if defined Guardar_Logs
	GuardarAntiBot("AntiBot",string7);
	#endif
	SetTimerEx("TimerKICK",1000,0,"d",playerid);
  	return 1;
	}
    GetPlayerIp(playerid, JoinIP, sizeof(JoinIP));

	if(Iter_Count(Player) > MaxPlayersConnected)
	{
		MaxPlayersConnected = Iter_Count(Player);
		gettime(MPHour,MPMinute);
		getdate(MPYear,MPMonth,MPDay);
	}
	if(Info[playerid][pPbizzkey] == 0)
	{
	Info[playerid][pPbizzkey] = 9999;
	}
    if(MaxPlayersConnected > 200) MaxPlayersConnected = 200; // Temp good fix

	new playername[MAX_PLAYER_NAME];
	GetPlayerName(playerid, playername, sizeof(playername));
	if(!INI_Exist(playername)) // If exists in Y_ini
	{
    	if(doesAccountExist(playername)) // If exists in .ini
    	{
			ConvertAccount(playerid); // Convert Account to y_ini
			return 1;
		}
	}
    SetTimerEx("SafeLogin", 100, 0, "d", playerid); // acá el timer para mandarte al login

	Koson1[playerid] = 0;Kosonrob[playerid] = 1 ;
    recojercesped[playerid]=0;
    papilla[playerid] = 0;
    paposo[playerid] = 0;
  	PlayAudioStreamForPlayer(playerid,"http://dl.soundowl.com/2dx4.mp3" class="postlink">http://dl.soundowl.com/2dx4.mp3");//cancion entrada
    ClearChatbox(playerid);
    acobrarcesped[playerid]=0;
    armaRecibir[playerid]=0;
    autorepara[playerid] = 0;
    autorepara2[playerid] = 0;
	SetPVarInt(playerid,"PlayerStartDrova",0);
	lena1[playerid] = 0;
	HaveTaser[playerid] = 0;
	RemovePlayerAttachedObject(playerid, 0);
	SetPVarInt(playerid,"Miner", 0);
 	SetPVarInt(playerid,"Start", 0);
 	Vortex[playerid] = 0;
	//texto estado //
	textdrawscount++;
	Delete3DTextLabel(estado[playerid]);
 	ConEstado[playerid] = false;
 	VentaDeArmaCon[playerid][0] = -1;
    VentaDeArmaCon[playerid][1] = 0;
    Watching[playerid] = 0;
    manubrio[playerid] = 0;
    papillo[playerid] = 0;
    refuer[playerid] = 0;
    RadioOn[playerid] = 1;
    SetTimerEx("TimerROB",1200000,false,"d",playerid);
	return 1;
}



function SafeLogin(playerid) //acá la función para logear
{
    ClearChatbox(playerid);
	SetPlayerJoinCamera(playerid);
	new playername[MAX_PLAYER_NAME];
	GetPlayerName(playerid, playername, sizeof(playername));
	if(INI_Exist(playername))
	{
	    gPlayerAccount[playerid] = 1;
        ShowMainMenuDialog(playerid, 1);
		return 1;
	}
	else
	{
	    if(strfind( playername, "_", true) == -1) //Por si tu nick no tiene el _
		{
		    SetPlayerName(playerid, "InvalidNick");
			SendClientMessageEx(playerid, COLOR_WHITE, "Porfavor usa el formato correcto: Nombre_Apellido");
			SendClientMessageEx(playerid, COLOR_WHITE, "Vuelve a entrar con el formato indicado." );
			Kick(playerid);
		}
		else
		{
			gPlayerAccount[playerid] = 0; //Acá detecta si la cuenta no existe y te manda la registro
        	ShowMainMenuDialog(playerid, 2); //Acá te manda al case 2 de el ShowMainMenuDialog
	    }
	    return 1;
	}
}

ShowMainMenuDialog(playerid, frame) // y por último la función de login case 1 y de registro case 2
{
	new titlestring[60];
	InsideMainMenu[playerid] = true;
	switch(frame)
	{
		case 1:
		{
		    INI_ParseFile(UserPath(playerid), "LoadUser_pass", .bExtra = true, .extra = playerid);
			format(titlestring, sizeof(titlestring), "{72BEFF}Login: {FFFFFF}%s", GetPlayerNameEx(playerid));
			SafeDialogEx(playerid,DLOGIN,DIALOG_STYLE_PASSWORD ,titlestring,"{FFFFFF}Bienvenido de nuevo al servidor\n\n{72BEFF}Contraseña:","Entrar","Salir");
			SetPlayerVirtualWorld(playerid, 20);
		}
		case 2:
		{
			format(titlestring, sizeof(titlestring), "{72BEFF}Login: {FFFFFF}%s", GetPlayerNameEx(playerid));
			SafeDialogEx(playerid,DREGISTER,DIALOG_STYLE_PASSWORD ,titlestring,"{FFFFFF}Bienvenido a HispanoAmerica Roleplay\nIngresa una contraseña para registrarte en el servidor.\n\n{72BEFF}Contraseña:","Entrar","Salir");
	    	SetPlayerVirtualWorld(playerid, 20);
		}
	}
}

ShowMenuLogin(playerid)
{
    ClearChatbox(playerid);
	for(new i = 0; i < 20; i++)
	{
		TextDrawShowForPlayer(playerid, LoginMenu[i]);
	}
	TextDrawShowForPlayer(playerid, cargando);
	TextDrawShowForPlayer(playerid, looking);
	TextDrawHideForPlayer(playerid, LogoNombre);
	TextDrawHideForPlayer(playerid, LogoFondo);
 	TextDrawShowForPlayer(playerid, FechaD);
    //TextDrawShowForPlayer(playerid, TiempoD);
	TextDrawShowForPlayer(playerid, box);

	return 1;
}

HideMenuLogin(playerid)
{
    TextDrawHideForPlayer(playerid, MOTD);
	for(new i = 0; i < 20; i++) { TextDrawHideForPlayer(playerid, LoginMenu[i]); }
	TextDrawShowForPlayer(playerid, LogoNombre);
	TextDrawShowForPlayer(playerid, LogoFondo);
 	TextDrawShowForPlayer(playerid, FechaD);
    //TextDrawShowForPlayer(playerid, TiempoD);
	return 1;
}
  Cantidad de llaves: Abiertas(31)-Cerradas(31) | Lineas Totales: 200
EDITO:

Acá las funciones de DREGISTER - DLOGIN:
 Codigo Pawno:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65

case DLOGIN:
		{
        	if(response == 1)
        	{
				if(udb_hash(inputtext) == Info[playerid][pKey])
				{
					InsideMainMenu[playerid] = false;
					INI_ParseFile(UserPath(playerid), "LoadUser_data", .bExtra = true, .extra = playerid);
					PlayerLogin(playerid);
				}
				else
				{
	        		new ip[32];
	        		new titlestring[64];
		        	GetPlayerIp(playerid, ip, 32);
					format(titlestring, sizeof(titlestring), "{FFFFFF}Login: {FFFFFF}%s", GetPlayerNameEx(playerid));
					format(string, sizeof(string), "{FFFFFF}Direccion IP: %s\nBienvenido de nuevo!\nIngresa tu contraseña.\n\n{FFFFFF}Contraseña:", ip);
		        	SafeDialogEx(playerid,DLOGIN,DIALOG_STYLE_INPUT ,titlestring,string,"Entrar","Salir");
		        	SetPlayerVirtualWorld(playerid, 20);
                	return 1;
				}
        	}
        	else
			{
			    SendClientMessageEx(playerid, COLOR_RED, "Fuiste expulsado del servidor automáticamente.");
            	SetTimerEx("TimerKICK",1000,0,"d",playerid);
        	}
        	return 1;
		}
    	case DREGISTER:
    	{
        	if (response == 1)
        	{
            	if(strlen(inputtext) > 12)
            	{
		        	new ip[32];
		        	new titlestring[64];
		        	GetPlayerIp(playerid, ip, 32);
		        	format(titlestring, sizeof(titlestring), "{FFFFFF}Hay un problema en el{FF8000}Registro", GetPlayerNameEx(playerid));
		        	format(string, sizeof(string), "{FFFFFF}¡El máximo de caracteres para una clave es de 12!\n\n%s Ingrese una {033AA9}contraseña {FFFFFF}valida para poder entrar al servidor\n\n{033AA9}Nueva contraseña:", GetPlayerNameEx(playerid));
		        	SafeDialogEx(playerid,DREGISTER,DIALOG_STYLE_PASSWORD ,titlestring,string,"Registrar","Salir");
	            	SetPlayerVirtualWorld(playerid, 20);
                	return 1;
            	}
            	if(isnull(inputtext))
            	{
		        	new ip[32];
		        	new titlestring[64];
		        	GetPlayerIp(playerid, ip, 32);
					format(titlestring, sizeof(titlestring), "{6DA2F7}Panel de registro", GetPlayerNameEx(playerid));
			         format(string, sizeof(string), "{FFFFFF}Introduce una contraseña.\n\n{FFFFFF}Esta cuenta {6DA2F7}no está registrada {FFFFFF}en nuestro servidor.\n{FFFFFF}Ingresa una contraseña para registrarla y poder ingresar al servidor.\n", ip);
					SafeDialogEx(playerid,DREGISTER,DIALOG_STYLE_PASSWORD,titlestring,string,"Registrar","Salir");
                	return 1;
            	}
            	InsideMainMenu[playerid] = false;
				OnPlayerRegister(playerid,inputtext);
            	return 1;
        	}
        	else
        	{
        	    SendClientMessageEx(playerid, COLOR_GENERAL, "Fuiste expulsado del servidor automáticamente.");
            	SetTimerEx("TimerKICK",1000,0,"d",playerid);
        	}
			return 1;
    	}
  Cantidad de llaves: Abiertas(26)-Cerradas(26) | Lineas Totales: 65
¿Alguna solución? -beg
Última edición por Lolkilla el 25 Jun 2019 18:50, editado 1 vez en total.
Lolkilla
Aprendiz
Aprendiz
Mensajes: 158
Registrado: 29 Mar 2014 17:30
Reputación: 0

23 Jun 2019 10:09

UP, por favor ayudenme no sé que sucede -beg -beg -beg
Lolkilla
Aprendiz
Aprendiz
Mensajes: 158
Registrado: 29 Mar 2014 17:30
Reputación: 0

25 Jun 2019 18:51

UPPPPPPPP -beg -beg -beg -beg -beg -beg -beg
Avatar de Usuario
Daniel Walker
Avanzado
Avanzado
Mensajes: 557
Registrado: 04 Feb 2017 17:10
Ubicación: Bogotá
Contactar:
Reputación: 46

25 Jun 2019 19:30

 Codigo Pawno:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205

[quote=Lolkilla post_id=169562 time=1561051123 user_id=133]
Estoy usando la gm de HA-RP - ZC y la modifiqué completamente, pero la había abandonado porque dejé de scriptear por un tiempo, la dejé con un error pero ya no recuerdo que fue lo que último que hice, lo que sucede es que al igresar no lanza al panel de ingreso o de registro, no entiendo que sucede, por acá voy a dejar el OnplayerConnect y las funciones de logeo y registro, no encuentro el error porque todo parece estar en orden, acá lo dejo.

Función OnplayerConnect.

[pawn=]public OnPlayerConnect(playerid)
{
    gettime(Hora, Minuto);
    SetPlayerTime(playerid,Hora,Minuto);
    EncendioMotor[playerid] = 0;
	ApagoMotor[playerid] = 0;
    if(IsPlayerNPC(playerid)) return 1;
	new playerIP[32];
	GetPlayerIp(playerid, playerIP, sizeof(playerIP));
	SetPlayerColor(playerid,COLOR_WHITE);
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
	SendClientMessage(playerid, COLOR_WHITE, "=====================================================");
    SendClientMessage(playerid, COLOR_WHITE, "| HARP - Roleplay - Gracias por esta oportunidad|");
	SendClientMessage(playerid, COLOR_WHITE, "====================================================");
	if (CheckBan(playerIP) == 1)
	{
	    SetPlayerName(playerid, "BannedPlayer");
	    SendClientMessage(playerid, COLOR_RED, "{0040FF}[PD-RP]{FFFFFF} Te Encuentras Baneado Del Servidor.");
		SetTimerEx("TimerKICK",1000,0,"d",playerid);
		return 1;
 	}

	TotalConnect++;
	resetPlayerVariables(playerid);
	MapsRemoveForPlayer(playerid);
	ClearMarriage(playerid);
	SyncPlayerTime(playerid);
 	ShowMenuLogin(playerid);
 	new pame[MAX_PLAYER_NAME];
    GetPlayerName(playerid, pame, sizeof(pame));
	new connecting_ip[32+1];
	GetPlayerIp(playerid,connecting_ip,32);
	new num_players_on_ip = GetNumberOfPlayersOnThisIP(connecting_ip);

 #if defined antinick_crash
		if(!strcmp("con",pame,true) || !strcmp("aux",pame,true) || !strcmp("prn",pame,true) || !strcmp("lptn",pame,true) || !strcmp("nul",pame,true) || !strcmp("clock$",pame,true))
	{
	    format(string7, sizeof(string7), "[PC-RP]: %s ah sido kickeado Automaticamente [Razon: Nombre Reservado De Windows]", pame);
    	SendClientMessageToAll(red, string7);
    	#if defined Guardar_Logs
    	GuardarAntiBot("NameCrash",string7);
		#endif
    	printf(string7);
		SetTimerEx("TimerKICK",1000,0,"d",playerid);
	}
	#endif
	if(num_players_on_ip > MAX_CONNECTIONS_FROM_IP) {
 	format(string7, sizeof(string7), "[PC-RP]: %s [%i] a Sido Baneado Automaticamente [Razon: Bot ( %d Bots Detectados )]", pame,playerid,MAX_CONNECTIONS_FROM_IP);
	SendClientMessageToAll(red, string7);
	#if defined Guardar_Logs
	GuardarAntiBot("AntiBot",string7);
	#endif
	SetTimerEx("TimerKICK",1000,0,"d",playerid);
  	return 1;
	}
    GetPlayerIp(playerid, JoinIP, sizeof(JoinIP));

	if(Iter_Count(Player) > MaxPlayersConnected)
	{
		MaxPlayersConnected = Iter_Count(Player);
		gettime(MPHour,MPMinute);
		getdate(MPYear,MPMonth,MPDay);
	}
	if(Info[playerid][pPbizzkey] == 0)
	{
	Info[playerid][pPbizzkey] = 9999;
	}
    if(MaxPlayersConnected > 200) MaxPlayersConnected = 200; // Temp good fix

	new playername[MAX_PLAYER_NAME];
	GetPlayerName(playerid, playername, sizeof(playername));
	if(!INI_Exist(playername)) // If exists in Y_ini
	{
    	if(doesAccountExist(playername)) // If exists in .ini
    	{
			ConvertAccount(playerid); // Convert Account to y_ini
			return 1;
		}
	}
    SetTimerEx("SafeLogin", 100, 0, "d", playerid); // acá el timer para mandarte al login

	Koson1[playerid] = 0;Kosonrob[playerid] = 1 ;
    recojercesped[playerid]=0;
    papilla[playerid] = 0;
    paposo[playerid] = 0;
  	PlayAudioStreamForPlayer(playerid,"http://dl.soundowl.com/2dx4.mp3" class="postlink">http://dl.soundowl.com/2dx4.mp3");//cancion entrada
    ClearChatbox(playerid);
    acobrarcesped[playerid]=0;
    armaRecibir[playerid]=0;
    autorepara[playerid] = 0;
    autorepara2[playerid] = 0;
	SetPVarInt(playerid,"PlayerStartDrova",0);
	lena1[playerid] = 0;
	HaveTaser[playerid] = 0;
	RemovePlayerAttachedObject(playerid, 0);
	SetPVarInt(playerid,"Miner", 0);
 	SetPVarInt(playerid,"Start", 0);
 	Vortex[playerid] = 0;
	//texto estado //
	textdrawscount++;
	Delete3DTextLabel(estado[playerid]);
 	ConEstado[playerid] = false;
 	VentaDeArmaCon[playerid][0] = -1;
    VentaDeArmaCon[playerid][1] = 0;
    Watching[playerid] = 0;
    manubrio[playerid] = 0;
    papillo[playerid] = 0;
    refuer[playerid] = 0;
    RadioOn[playerid] = 1;
    SetTimerEx("TimerROB",1200000,false,"d",playerid);
	return 1;
}



function SafeLogin(playerid) //acá la función para logear
{
    ClearChatbox(playerid);
	SetPlayerJoinCamera(playerid);
	new playername[MAX_PLAYER_NAME];
	GetPlayerName(playerid, playername, sizeof(playername));
	if(INI_Exist(playername))
	{
	    gPlayerAccount[playerid] = 1;
        ShowMainMenuDialog(playerid, 1);
		return 1;
	}
	else
	{
	    if(strfind( playername, "_", true) == -1) //Por si tu nick no tiene el _
		{
		    SetPlayerName(playerid, "InvalidNick");
			SendClientMessageEx(playerid, COLOR_WHITE, "Porfavor usa el formato correcto: Nombre_Apellido");
			SendClientMessageEx(playerid, COLOR_WHITE, "Vuelve a entrar con el formato indicado." );
			Kick(playerid);
		}
		else
		{
			gPlayerAccount[playerid] = 0; //Acá detecta si la cuenta no existe y te manda la registro
        	ShowMainMenuDialog(playerid, 2); //Acá te manda al case 2 de el ShowMainMenuDialog
	    }
	    return 1;
	}
}

ShowMainMenuDialog(playerid, frame) // y por último la función de login case 1 y de registro case 2
{
	new titlestring[60];
	InsideMainMenu[playerid] = true;
	switch(frame)
	{
		case 1:
		{
		    INI_ParseFile(UserPath(playerid), "LoadUser_pass", .bExtra = true, .extra = playerid);
			format(titlestring, sizeof(titlestring), "{72BEFF}Login: {FFFFFF}%s", GetPlayerNameEx(playerid));
			SafeDialogEx(playerid,DLOGIN,DIALOG_STYLE_PASSWORD ,titlestring,"{FFFFFF}Bienvenido de nuevo al servidor\n\n{72BEFF}Contraseña:","Entrar","Salir");
			SetPlayerVirtualWorld(playerid, 20);
		}
		case 2:
		{
			format(titlestring, sizeof(titlestring), "{72BEFF}Login: {FFFFFF}%s", GetPlayerNameEx(playerid));
			SafeDialogEx(playerid,DREGISTER,DIALOG_STYLE_PASSWORD ,titlestring,"{FFFFFF}Bienvenido a HispanoAmerica Roleplay\nIngresa una contraseña para registrarte en el servidor.\n\n{72BEFF}Contraseña:","Entrar","Salir");
	    	SetPlayerVirtualWorld(playerid, 20);
		}
	}
}

ShowMenuLogin(playerid)
{
    ClearChatbox(playerid);
	for(new i = 0; i < 20; i++)
	{
		TextDrawShowForPlayer(playerid, LoginMenu[i]);
	}
	TextDrawShowForPlayer(playerid, cargando);
	TextDrawShowForPlayer(playerid, looking);
	TextDrawHideForPlayer(playerid, LogoNombre);
	TextDrawHideForPlayer(playerid, LogoFondo);
 	TextDrawShowForPlayer(playerid, FechaD);
    //TextDrawShowForPlayer(playerid, TiempoD);
	TextDrawShowForPlayer(playerid, box);

	return 1;
}

HideMenuLogin(playerid)
{
    TextDrawHideForPlayer(playerid, MOTD);
	for(new i = 0; i < 20; i++) { TextDrawHideForPlayer(playerid, LoginMenu[i]); }
	TextDrawShowForPlayer(playerid, LogoNombre);
	TextDrawShowForPlayer(playerid, LogoFondo);
 	TextDrawShowForPlayer(playerid, FechaD);
    //TextDrawShowForPlayer(playerid, TiempoD);
	return 1;
}
  Cantidad de llaves: Abiertas(31)-Cerradas(31) | Lineas Totales: 205
EDITO:

Acá las funciones de DREGISTER - DLOGIN:
 Codigo Pawno:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65

case DLOGIN:
		{
        	if(response == 1)
        	{
				if(udb_hash(inputtext) == Info[playerid][pKey])
				{
					InsideMainMenu[playerid] = false;
					INI_ParseFile(UserPath(playerid), "LoadUser_data", .bExtra = true, .extra = playerid);
					PlayerLogin(playerid);
				}
				else
				{
	        		new ip[32];
	        		new titlestring[64];
		        	GetPlayerIp(playerid, ip, 32);
					format(titlestring, sizeof(titlestring), "{FFFFFF}Login: {FFFFFF}%s", GetPlayerNameEx(playerid));
					format(string, sizeof(string), "{FFFFFF}Direccion IP: %s\nBienvenido de nuevo!\nIngresa tu contraseña.\n\n{FFFFFF}Contraseña:", ip);
		        	SafeDialogEx(playerid,DLOGIN,DIALOG_STYLE_INPUT ,titlestring,string,"Entrar","Salir");
		        	SetPlayerVirtualWorld(playerid, 20);
                	return 1;
				}
        	}
        	else
			{
			    SendClientMessageEx(playerid, COLOR_RED, "Fuiste expulsado del servidor automáticamente.");
            	SetTimerEx("TimerKICK",1000,0,"d",playerid);
        	}
        	return 1;
		}
    	case DREGISTER:
    	{
        	if (response == 1)
        	{
            	if(strlen(inputtext) > 12)
            	{
		        	new ip[32];
		        	new titlestring[64];
		        	GetPlayerIp(playerid, ip, 32);
		        	format(titlestring, sizeof(titlestring), "{FFFFFF}Hay un problema en el{FF8000}Registro", GetPlayerNameEx(playerid));
		        	format(string, sizeof(string), "{FFFFFF}¡El máximo de caracteres para una clave es de 12!\n\n%s Ingrese una {033AA9}contraseña {FFFFFF}valida para poder entrar al servidor\n\n{033AA9}Nueva contraseña:", GetPlayerNameEx(playerid));
		        	SafeDialogEx(playerid,DREGISTER,DIALOG_STYLE_PASSWORD ,titlestring,string,"Registrar","Salir");
	            	SetPlayerVirtualWorld(playerid, 20);
                	return 1;
            	}
            	if(isnull(inputtext))
            	{
		        	new ip[32];
		        	new titlestring[64];
		        	GetPlayerIp(playerid, ip, 32);
					format(titlestring, sizeof(titlestring), "{6DA2F7}Panel de registro", GetPlayerNameEx(playerid));
			         format(string, sizeof(string), "{FFFFFF}Introduce una contraseña.\n\n{FFFFFF}Esta cuenta {6DA2F7}no está registrada {FFFFFF}en nuestro servidor.\n{FFFFFF}Ingresa una contraseña para registrarla y poder ingresar al servidor.\n", ip);
					SafeDialogEx(playerid,DREGISTER,DIALOG_STYLE_PASSWORD,titlestring,string,"Registrar","Salir");
                	return 1;
            	}
            	InsideMainMenu[playerid] = false;
				OnPlayerRegister(playerid,inputtext);
            	return 1;
        	}
        	else
        	{
        	    SendClientMessageEx(playerid, COLOR_GENERAL, "Fuiste expulsado del servidor automáticamente.");
            	SetTimerEx("TimerKICK",1000,0,"d",playerid);
        	}
			return 1;
    	}
  Cantidad de llaves: Abiertas(26)-Cerradas(26) | Lineas Totales: 65
¿Alguna solución? -beg
[/quote]
[/pawn]

pasa el showmenulogin
Imagen


Proyecto Actual: Next Nation Roleplay
Dudas en mis sistemas o en general, envía MP con confianza (Respondo Diseño, Pawn, HTML, CSS)


Disfruta de mis Aportes Aquí Abajo :P

Aporte: Diseños & Webs: Mostrar
Next Gaming Desings, Photoshop Templates: Click Aquí
Web HTML Template para RP: Click Aquí
Logos Estilo FZ, Templayes: Click Aquí
Plantilla, Banner Fenixzone: Click Aquí
Pinceles para Photoshop CS6, CC Click Aquí
Rangos para foro SMF & PhpBB, Photoshop: Click Aquí
Header Server Zombie: Click Aquí
Header + Logo Verde Photoshop: Click Aquí
Guías & Filterscripts: Mostrar
Sistema casas SQLTraducido: Click Aquí
Sistema Admin Teleport por Checkpoint:Click Aquí

ImagenFacebook PersonalImagenCanal YTImagenPortafolio (Próximamente)
Lolkilla
Aprendiz
Aprendiz
Mensajes: 158
Registrado: 29 Mar 2014 17:30
Reputación: 0

30 Jun 2019 01:31

Daniel Walker escribió:
25 Jun 2019 19:30
 Codigo Pawno:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205

[quote=Lolkilla post_id=169562 time=1561051123 user_id=133]
Estoy usando la gm de HA-RP - ZC y la modifiqué completamente, pero la había abandonado porque dejé de scriptear por un tiempo, la dejé con un error pero ya no recuerdo que fue lo que último que hice, lo que sucede es que al igresar no lanza al panel de ingreso o de registro, no entiendo que sucede, por acá voy a dejar el OnplayerConnect y las funciones de logeo y registro, no encuentro el error porque todo parece estar en orden, acá lo dejo.

Función OnplayerConnect.

[pawn=]public OnPlayerConnect(playerid)
{
    gettime(Hora, Minuto);
    SetPlayerTime(playerid,Hora,Minuto);
    EncendioMotor[playerid] = 0;
	ApagoMotor[playerid] = 0;
    if(IsPlayerNPC(playerid)) return 1;
	new playerIP[32];
	GetPlayerIp(playerid, playerIP, sizeof(playerIP));
	SetPlayerColor(playerid,COLOR_WHITE);
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
	SendClientMessage(playerid, COLOR_WHITE, "=====================================================");
    SendClientMessage(playerid, COLOR_WHITE, "| HARP - Roleplay - Gracias por esta oportunidad|");
	SendClientMessage(playerid, COLOR_WHITE, "====================================================");
	if (CheckBan(playerIP) == 1)
	{
	    SetPlayerName(playerid, "BannedPlayer");
	    SendClientMessage(playerid, COLOR_RED, "{0040FF}[PD-RP]{FFFFFF} Te Encuentras Baneado Del Servidor.");
		SetTimerEx("TimerKICK",1000,0,"d",playerid);
		return 1;
 	}

	TotalConnect++;
	resetPlayerVariables(playerid);
	MapsRemoveForPlayer(playerid);
	ClearMarriage(playerid);
	SyncPlayerTime(playerid);
 	ShowMenuLogin(playerid);
 	new pame[MAX_PLAYER_NAME];
    GetPlayerName(playerid, pame, sizeof(pame));
	new connecting_ip[32+1];
	GetPlayerIp(playerid,connecting_ip,32);
	new num_players_on_ip = GetNumberOfPlayersOnThisIP(connecting_ip);

 #if defined antinick_crash
		if(!strcmp("con",pame,true) || !strcmp("aux",pame,true) || !strcmp("prn",pame,true) || !strcmp("lptn",pame,true) || !strcmp("nul",pame,true) || !strcmp("clock$",pame,true))
	{
	    format(string7, sizeof(string7), "[PC-RP]: %s ah sido kickeado Automaticamente [Razon: Nombre Reservado De Windows]", pame);
    	SendClientMessageToAll(red, string7);
    	#if defined Guardar_Logs
    	GuardarAntiBot("NameCrash",string7);
		#endif
    	printf(string7);
		SetTimerEx("TimerKICK",1000,0,"d",playerid);
	}
	#endif
	if(num_players_on_ip > MAX_CONNECTIONS_FROM_IP) {
 	format(string7, sizeof(string7), "[PC-RP]: %s [%i] a Sido Baneado Automaticamente [Razon: Bot ( %d Bots Detectados )]", pame,playerid,MAX_CONNECTIONS_FROM_IP);
	SendClientMessageToAll(red, string7);
	#if defined Guardar_Logs
	GuardarAntiBot("AntiBot",string7);
	#endif
	SetTimerEx("TimerKICK",1000,0,"d",playerid);
  	return 1;
	}
    GetPlayerIp(playerid, JoinIP, sizeof(JoinIP));

	if(Iter_Count(Player) > MaxPlayersConnected)
	{
		MaxPlayersConnected = Iter_Count(Player);
		gettime(MPHour,MPMinute);
		getdate(MPYear,MPMonth,MPDay);
	}
	if(Info[playerid][pPbizzkey] == 0)
	{
	Info[playerid][pPbizzkey] = 9999;
	}
    if(MaxPlayersConnected > 200) MaxPlayersConnected = 200; // Temp good fix

	new playername[MAX_PLAYER_NAME];
	GetPlayerName(playerid, playername, sizeof(playername));
	if(!INI_Exist(playername)) // If exists in Y_ini
	{
    	if(doesAccountExist(playername)) // If exists in .ini
    	{
			ConvertAccount(playerid); // Convert Account to y_ini
			return 1;
		}
	}
    SetTimerEx("SafeLogin", 100, 0, "d", playerid); // acá el timer para mandarte al login

	Koson1[playerid] = 0;Kosonrob[playerid] = 1 ;
    recojercesped[playerid]=0;
    papilla[playerid] = 0;
    paposo[playerid] = 0;
  	PlayAudioStreamForPlayer(playerid,"http://dl.soundowl.com/2dx4.mp3" class="postlink">http://dl.soundowl.com/2dx4.mp3");//cancion entrada
    ClearChatbox(playerid);
    acobrarcesped[playerid]=0;
    armaRecibir[playerid]=0;
    autorepara[playerid] = 0;
    autorepara2[playerid] = 0;
	SetPVarInt(playerid,"PlayerStartDrova",0);
	lena1[playerid] = 0;
	HaveTaser[playerid] = 0;
	RemovePlayerAttachedObject(playerid, 0);
	SetPVarInt(playerid,"Miner", 0);
 	SetPVarInt(playerid,"Start", 0);
 	Vortex[playerid] = 0;
	//texto estado //
	textdrawscount++;
	Delete3DTextLabel(estado[playerid]);
 	ConEstado[playerid] = false;
 	VentaDeArmaCon[playerid][0] = -1;
    VentaDeArmaCon[playerid][1] = 0;
    Watching[playerid] = 0;
    manubrio[playerid] = 0;
    papillo[playerid] = 0;
    refuer[playerid] = 0;
    RadioOn[playerid] = 1;
    SetTimerEx("TimerROB",1200000,false,"d",playerid);
	return 1;
}



function SafeLogin(playerid) //acá la función para logear
{
    ClearChatbox(playerid);
	SetPlayerJoinCamera(playerid);
	new playername[MAX_PLAYER_NAME];
	GetPlayerName(playerid, playername, sizeof(playername));
	if(INI_Exist(playername))
	{
	    gPlayerAccount[playerid] = 1;
        ShowMainMenuDialog(playerid, 1);
		return 1;
	}
	else
	{
	    if(strfind( playername, "_", true) == -1) //Por si tu nick no tiene el _
		{
		    SetPlayerName(playerid, "InvalidNick");
			SendClientMessageEx(playerid, COLOR_WHITE, "Porfavor usa el formato correcto: Nombre_Apellido");
			SendClientMessageEx(playerid, COLOR_WHITE, "Vuelve a entrar con el formato indicado." );
			Kick(playerid);
		}
		else
		{
			gPlayerAccount[playerid] = 0; //Acá detecta si la cuenta no existe y te manda la registro
        	ShowMainMenuDialog(playerid, 2); //Acá te manda al case 2 de el ShowMainMenuDialog
	    }
	    return 1;
	}
}

ShowMainMenuDialog(playerid, frame) // y por último la función de login case 1 y de registro case 2
{
	new titlestring[60];
	InsideMainMenu[playerid] = true;
	switch(frame)
	{
		case 1:
		{
		    INI_ParseFile(UserPath(playerid), "LoadUser_pass", .bExtra = true, .extra = playerid);
			format(titlestring, sizeof(titlestring), "{72BEFF}Login: {FFFFFF}%s", GetPlayerNameEx(playerid));
			SafeDialogEx(playerid,DLOGIN,DIALOG_STYLE_PASSWORD ,titlestring,"{FFFFFF}Bienvenido de nuevo al servidor\n\n{72BEFF}Contraseña:","Entrar","Salir");
			SetPlayerVirtualWorld(playerid, 20);
		}
		case 2:
		{
			format(titlestring, sizeof(titlestring), "{72BEFF}Login: {FFFFFF}%s", GetPlayerNameEx(playerid));
			SafeDialogEx(playerid,DREGISTER,DIALOG_STYLE_PASSWORD ,titlestring,"{FFFFFF}Bienvenido a HispanoAmerica Roleplay\nIngresa una contraseña para registrarte en el servidor.\n\n{72BEFF}Contraseña:","Entrar","Salir");
	    	SetPlayerVirtualWorld(playerid, 20);
		}
	}
}

ShowMenuLogin(playerid)
{
    ClearChatbox(playerid);
	for(new i = 0; i < 20; i++)
	{
		TextDrawShowForPlayer(playerid, LoginMenu[i]);
	}
	TextDrawShowForPlayer(playerid, cargando);
	TextDrawShowForPlayer(playerid, looking);
	TextDrawHideForPlayer(playerid, LogoNombre);
	TextDrawHideForPlayer(playerid, LogoFondo);
 	TextDrawShowForPlayer(playerid, FechaD);
    //TextDrawShowForPlayer(playerid, TiempoD);
	TextDrawShowForPlayer(playerid, box);

	return 1;
}

HideMenuLogin(playerid)
{
    TextDrawHideForPlayer(playerid, MOTD);
	for(new i = 0; i < 20; i++) { TextDrawHideForPlayer(playerid, LoginMenu[i]); }
	TextDrawShowForPlayer(playerid, LogoNombre);
	TextDrawShowForPlayer(playerid, LogoFondo);
 	TextDrawShowForPlayer(playerid, FechaD);
    //TextDrawShowForPlayer(playerid, TiempoD);
	return 1;
}
  Cantidad de llaves: Abiertas(31)-Cerradas(31) | Lineas Totales: 205
EDITO:

Acá las funciones de DREGISTER - DLOGIN:
 Codigo Pawno:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65

case DLOGIN:
		{
        	if(response == 1)
        	{
				if(udb_hash(inputtext) == Info[playerid][pKey])
				{
					InsideMainMenu[playerid] = false;
					INI_ParseFile(UserPath(playerid), "LoadUser_data", .bExtra = true, .extra = playerid);
					PlayerLogin(playerid);
				}
				else
				{
	        		new ip[32];
	        		new titlestring[64];
		        	GetPlayerIp(playerid, ip, 32);
					format(titlestring, sizeof(titlestring), "{FFFFFF}Login: {FFFFFF}%s", GetPlayerNameEx(playerid));
					format(string, sizeof(string), "{FFFFFF}Direccion IP: %s\nBienvenido de nuevo!\nIngresa tu contraseña.\n\n{FFFFFF}Contraseña:", ip);
		        	SafeDialogEx(playerid,DLOGIN,DIALOG_STYLE_INPUT ,titlestring,string,"Entrar","Salir");
		        	SetPlayerVirtualWorld(playerid, 20);
                	return 1;
				}
        	}
        	else
			{
			    SendClientMessageEx(playerid, COLOR_RED, "Fuiste expulsado del servidor automáticamente.");
            	SetTimerEx("TimerKICK",1000,0,"d",playerid);
        	}
        	return 1;
		}
    	case DREGISTER:
    	{
        	if (response == 1)
        	{
            	if(strlen(inputtext) > 12)
            	{
		        	new ip[32];
		        	new titlestring[64];
		        	GetPlayerIp(playerid, ip, 32);
		        	format(titlestring, sizeof(titlestring), "{FFFFFF}Hay un problema en el{FF8000}Registro", GetPlayerNameEx(playerid));
		        	format(string, sizeof(string), "{FFFFFF}¡El máximo de caracteres para una clave es de 12!\n\n%s Ingrese una {033AA9}contraseña {FFFFFF}valida para poder entrar al servidor\n\n{033AA9}Nueva contraseña:", GetPlayerNameEx(playerid));
		        	SafeDialogEx(playerid,DREGISTER,DIALOG_STYLE_PASSWORD ,titlestring,string,"Registrar","Salir");
	            	SetPlayerVirtualWorld(playerid, 20);
                	return 1;
            	}
            	if(isnull(inputtext))
            	{
		        	new ip[32];
		        	new titlestring[64];
		        	GetPlayerIp(playerid, ip, 32);
					format(titlestring, sizeof(titlestring), "{6DA2F7}Panel de registro", GetPlayerNameEx(playerid));
			         format(string, sizeof(string), "{FFFFFF}Introduce una contraseña.\n\n{FFFFFF}Esta cuenta {6DA2F7}no está registrada {FFFFFF}en nuestro servidor.\n{FFFFFF}Ingresa una contraseña para registrarla y poder ingresar al servidor.\n", ip);
					SafeDialogEx(playerid,DREGISTER,DIALOG_STYLE_PASSWORD,titlestring,string,"Registrar","Salir");
                	return 1;
            	}
            	InsideMainMenu[playerid] = false;
				OnPlayerRegister(playerid,inputtext);
            	return 1;
        	}
        	else
        	{
        	    SendClientMessageEx(playerid, COLOR_GENERAL, "Fuiste expulsado del servidor automáticamente.");
            	SetTimerEx("TimerKICK",1000,0,"d",playerid);
        	}
			return 1;
    	}
  Cantidad de llaves: Abiertas(26)-Cerradas(26) | Lineas Totales: 65
¿Alguna solución? -beg
[/pawn]

pasa el showmenulogin
[/quote]

En el script estaba bro, pero acá te lo vuelvo a colocar;
 Codigo Pawno:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

ShowMenuLogin(playerid)
{
    ClearChatbox(playerid);
	for(new i = 0; i < 20; i++)
	{
		TextDrawShowForPlayer(playerid, LoginMenu[i]);
	}
	TextDrawShowForPlayer(playerid, cargando);
	TextDrawShowForPlayer(playerid, looking);
	TextDrawHideForPlayer(playerid, LogoNombre);
	TextDrawHideForPlayer(playerid, LogoFondo);
 	TextDrawShowForPlayer(playerid, FechaD);
    //TextDrawShowForPlayer(playerid, TiempoD);
	TextDrawShowForPlayer(playerid, box);

	return 1;
}
  Cantidad de llaves: Abiertas(2)-Cerradas(2) | Lineas Totales: 17
Avatar de Usuario
Daniel Walker
Avanzado
Avanzado
Mensajes: 557
Registrado: 04 Feb 2017 17:10
Ubicación: Bogotá
Contactar:
Reputación: 46

30 Jun 2019 19:58

Spoiler:
Lolkilla escribió:
30 Jun 2019 01:31
Daniel Walker escribió:
25 Jun 2019 19:30
 Codigo Pawno:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205

[quote=Lolkilla post_id=169562 time=1561051123 user_id=133]
Estoy usando la gm de HA-RP - ZC y la modifiqué completamente, pero la había abandonado porque dejé de scriptear por un tiempo, la dejé con un error pero ya no recuerdo que fue lo que último que hice, lo que sucede es que al igresar no lanza al panel de ingreso o de registro, no entiendo que sucede, por acá voy a dejar el OnplayerConnect y las funciones de logeo y registro, no encuentro el error porque todo parece estar en orden, acá lo dejo.

Función OnplayerConnect.

[pawn=]public OnPlayerConnect(playerid)
{
    gettime(Hora, Minuto);
    SetPlayerTime(playerid,Hora,Minuto);
    EncendioMotor[playerid] = 0;
	ApagoMotor[playerid] = 0;
    if(IsPlayerNPC(playerid)) return 1;
	new playerIP[32];
	GetPlayerIp(playerid, playerIP, sizeof(playerIP));
	SetPlayerColor(playerid,COLOR_WHITE);
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
	SendClientMessage(playerid, COLOR_WHITE, "=====================================================");
    SendClientMessage(playerid, COLOR_WHITE, "| HARP - Roleplay - Gracias por esta oportunidad|");
	SendClientMessage(playerid, COLOR_WHITE, "====================================================");
	if (CheckBan(playerIP) == 1)
	{
	    SetPlayerName(playerid, "BannedPlayer");
	    SendClientMessage(playerid, COLOR_RED, "{0040FF}[PD-RP]{FFFFFF} Te Encuentras Baneado Del Servidor.");
		SetTimerEx("TimerKICK",1000,0,"d",playerid);
		return 1;
 	}

	TotalConnect++;
	resetPlayerVariables(playerid);
	MapsRemoveForPlayer(playerid);
	ClearMarriage(playerid);
	SyncPlayerTime(playerid);
 	ShowMenuLogin(playerid);
 	new pame[MAX_PLAYER_NAME];
    GetPlayerName(playerid, pame, sizeof(pame));
	new connecting_ip[32+1];
	GetPlayerIp(playerid,connecting_ip,32);
	new num_players_on_ip = GetNumberOfPlayersOnThisIP(connecting_ip);

 #if defined antinick_crash
		if(!strcmp("con",pame,true) || !strcmp("aux",pame,true) || !strcmp("prn",pame,true) || !strcmp("lptn",pame,true) || !strcmp("nul",pame,true) || !strcmp("clock$",pame,true))
	{
	    format(string7, sizeof(string7), "[PC-RP]: %s ah sido kickeado Automaticamente [Razon: Nombre Reservado De Windows]", pame);
    	SendClientMessageToAll(red, string7);
    	#if defined Guardar_Logs
    	GuardarAntiBot("NameCrash",string7);
		#endif
    	printf(string7);
		SetTimerEx("TimerKICK",1000,0,"d",playerid);
	}
	#endif
	if(num_players_on_ip > MAX_CONNECTIONS_FROM_IP) {
 	format(string7, sizeof(string7), "[PC-RP]: %s [%i] a Sido Baneado Automaticamente [Razon: Bot ( %d Bots Detectados )]", pame,playerid,MAX_CONNECTIONS_FROM_IP);
	SendClientMessageToAll(red, string7);
	#if defined Guardar_Logs
	GuardarAntiBot("AntiBot",string7);
	#endif
	SetTimerEx("TimerKICK",1000,0,"d",playerid);
  	return 1;
	}
    GetPlayerIp(playerid, JoinIP, sizeof(JoinIP));

	if(Iter_Count(Player) > MaxPlayersConnected)
	{
		MaxPlayersConnected = Iter_Count(Player);
		gettime(MPHour,MPMinute);
		getdate(MPYear,MPMonth,MPDay);
	}
	if(Info[playerid][pPbizzkey] == 0)
	{
	Info[playerid][pPbizzkey] = 9999;
	}
    if(MaxPlayersConnected > 200) MaxPlayersConnected = 200; // Temp good fix

	new playername[MAX_PLAYER_NAME];
	GetPlayerName(playerid, playername, sizeof(playername));
	if(!INI_Exist(playername)) // If exists in Y_ini
	{
    	if(doesAccountExist(playername)) // If exists in .ini
    	{
			ConvertAccount(playerid); // Convert Account to y_ini
			return 1;
		}
	}
    SetTimerEx("SafeLogin", 100, 0, "d", playerid); // acá el timer para mandarte al login

	Koson1[playerid] = 0;Kosonrob[playerid] = 1 ;
    recojercesped[playerid]=0;
    papilla[playerid] = 0;
    paposo[playerid] = 0;
  	PlayAudioStreamForPlayer(playerid,"http://dl.soundowl.com/2dx4.mp3" class="postlink">http://dl.soundowl.com/2dx4.mp3");//cancion entrada
    ClearChatbox(playerid);
    acobrarcesped[playerid]=0;
    armaRecibir[playerid]=0;
    autorepara[playerid] = 0;
    autorepara2[playerid] = 0;
	SetPVarInt(playerid,"PlayerStartDrova",0);
	lena1[playerid] = 0;
	HaveTaser[playerid] = 0;
	RemovePlayerAttachedObject(playerid, 0);
	SetPVarInt(playerid,"Miner", 0);
 	SetPVarInt(playerid,"Start", 0);
 	Vortex[playerid] = 0;
	//texto estado //
	textdrawscount++;
	Delete3DTextLabel(estado[playerid]);
 	ConEstado[playerid] = false;
 	VentaDeArmaCon[playerid][0] = -1;
    VentaDeArmaCon[playerid][1] = 0;
    Watching[playerid] = 0;
    manubrio[playerid] = 0;
    papillo[playerid] = 0;
    refuer[playerid] = 0;
    RadioOn[playerid] = 1;
    SetTimerEx("TimerROB",1200000,false,"d",playerid);
	return 1;
}



function SafeLogin(playerid) //acá la función para logear
{
    ClearChatbox(playerid);
	SetPlayerJoinCamera(playerid);
	new playername[MAX_PLAYER_NAME];
	GetPlayerName(playerid, playername, sizeof(playername));
	if(INI_Exist(playername))
	{
	    gPlayerAccount[playerid] = 1;
        ShowMainMenuDialog(playerid, 1);
		return 1;
	}
	else
	{
	    if(strfind( playername, "_", true) == -1) //Por si tu nick no tiene el _
		{
		    SetPlayerName(playerid, "InvalidNick");
			SendClientMessageEx(playerid, COLOR_WHITE, "Porfavor usa el formato correcto: Nombre_Apellido");
			SendClientMessageEx(playerid, COLOR_WHITE, "Vuelve a entrar con el formato indicado." );
			Kick(playerid);
		}
		else
		{
			gPlayerAccount[playerid] = 0; //Acá detecta si la cuenta no existe y te manda la registro
        	ShowMainMenuDialog(playerid, 2); //Acá te manda al case 2 de el ShowMainMenuDialog
	    }
	    return 1;
	}
}

ShowMainMenuDialog(playerid, frame) // y por último la función de login case 1 y de registro case 2
{
	new titlestring[60];
	InsideMainMenu[playerid] = true;
	switch(frame)
	{
		case 1:
		{
		    INI_ParseFile(UserPath(playerid), "LoadUser_pass", .bExtra = true, .extra = playerid);
			format(titlestring, sizeof(titlestring), "{72BEFF}Login: {FFFFFF}%s", GetPlayerNameEx(playerid));
			SafeDialogEx(playerid,DLOGIN,DIALOG_STYLE_PASSWORD ,titlestring,"{FFFFFF}Bienvenido de nuevo al servidor\n\n{72BEFF}Contraseña:","Entrar","Salir");
			SetPlayerVirtualWorld(playerid, 20);
		}
		case 2:
		{
			format(titlestring, sizeof(titlestring), "{72BEFF}Login: {FFFFFF}%s", GetPlayerNameEx(playerid));
			SafeDialogEx(playerid,DREGISTER,DIALOG_STYLE_PASSWORD ,titlestring,"{FFFFFF}Bienvenido a HispanoAmerica Roleplay\nIngresa una contraseña para registrarte en el servidor.\n\n{72BEFF}Contraseña:","Entrar","Salir");
	    	SetPlayerVirtualWorld(playerid, 20);
		}
	}
}

ShowMenuLogin(playerid)
{
    ClearChatbox(playerid);
	for(new i = 0; i < 20; i++)
	{
		TextDrawShowForPlayer(playerid, LoginMenu[i]);
	}
	TextDrawShowForPlayer(playerid, cargando);
	TextDrawShowForPlayer(playerid, looking);
	TextDrawHideForPlayer(playerid, LogoNombre);
	TextDrawHideForPlayer(playerid, LogoFondo);
 	TextDrawShowForPlayer(playerid, FechaD);
    //TextDrawShowForPlayer(playerid, TiempoD);
	TextDrawShowForPlayer(playerid, box);

	return 1;
}

HideMenuLogin(playerid)
{
    TextDrawHideForPlayer(playerid, MOTD);
	for(new i = 0; i < 20; i++) { TextDrawHideForPlayer(playerid, LoginMenu[i]); }
	TextDrawShowForPlayer(playerid, LogoNombre);
	TextDrawShowForPlayer(playerid, LogoFondo);
 	TextDrawShowForPlayer(playerid, FechaD);
    //TextDrawShowForPlayer(playerid, TiempoD);
	return 1;
}
  Cantidad de llaves: Abiertas(31)-Cerradas(31) | Lineas Totales: 205
EDITO:

Acá las funciones de DREGISTER - DLOGIN:
 Codigo Pawno:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65

case DLOGIN:
		{
        	if(response == 1)
        	{
				if(udb_hash(inputtext) == Info[playerid][pKey])
				{
					InsideMainMenu[playerid] = false;
					INI_ParseFile(UserPath(playerid), "LoadUser_data", .bExtra = true, .extra = playerid);
					PlayerLogin(playerid);
				}
				else
				{
	        		new ip[32];
	        		new titlestring[64];
		        	GetPlayerIp(playerid, ip, 32);
					format(titlestring, sizeof(titlestring), "{FFFFFF}Login: {FFFFFF}%s", GetPlayerNameEx(playerid));
					format(string, sizeof(string), "{FFFFFF}Direccion IP: %s\nBienvenido de nuevo!\nIngresa tu contraseña.\n\n{FFFFFF}Contraseña:", ip);
		        	SafeDialogEx(playerid,DLOGIN,DIALOG_STYLE_INPUT ,titlestring,string,"Entrar","Salir");
		        	SetPlayerVirtualWorld(playerid, 20);
                	return 1;
				}
        	}
        	else
			{
			    SendClientMessageEx(playerid, COLOR_RED, "Fuiste expulsado del servidor automáticamente.");
            	SetTimerEx("TimerKICK",1000,0,"d",playerid);
        	}
        	return 1;
		}
    	case DREGISTER:
    	{
        	if (response == 1)
        	{
            	if(strlen(inputtext) > 12)
            	{
		        	new ip[32];
		        	new titlestring[64];
		        	GetPlayerIp(playerid, ip, 32);
		        	format(titlestring, sizeof(titlestring), "{FFFFFF}Hay un problema en el{FF8000}Registro", GetPlayerNameEx(playerid));
		        	format(string, sizeof(string), "{FFFFFF}¡El máximo de caracteres para una clave es de 12!\n\n%s Ingrese una {033AA9}contraseña {FFFFFF}valida para poder entrar al servidor\n\n{033AA9}Nueva contraseña:", GetPlayerNameEx(playerid));
		        	SafeDialogEx(playerid,DREGISTER,DIALOG_STYLE_PASSWORD ,titlestring,string,"Registrar","Salir");
	            	SetPlayerVirtualWorld(playerid, 20);
                	return 1;
            	}
            	if(isnull(inputtext))
            	{
		        	new ip[32];
		        	new titlestring[64];
		        	GetPlayerIp(playerid, ip, 32);
					format(titlestring, sizeof(titlestring), "{6DA2F7}Panel de registro", GetPlayerNameEx(playerid));
			         format(string, sizeof(string), "{FFFFFF}Introduce una contraseña.\n\n{FFFFFF}Esta cuenta {6DA2F7}no está registrada {FFFFFF}en nuestro servidor.\n{FFFFFF}Ingresa una contraseña para registrarla y poder ingresar al servidor.\n", ip);
					SafeDialogEx(playerid,DREGISTER,DIALOG_STYLE_PASSWORD,titlestring,string,"Registrar","Salir");
                	return 1;
            	}
            	InsideMainMenu[playerid] = false;
				OnPlayerRegister(playerid,inputtext);
            	return 1;
        	}
        	else
        	{
        	    SendClientMessageEx(playerid, COLOR_GENERAL, "Fuiste expulsado del servidor automáticamente.");
            	SetTimerEx("TimerKICK",1000,0,"d",playerid);
        	}
			return 1;
    	}
  Cantidad de llaves: Abiertas(26)-Cerradas(26) | Lineas Totales: 65
¿Alguna solución? -beg
[/pawn]

pasa el showmenulogin
En el script estaba bro, pero acá te lo vuelvo a colocar;
 Codigo Pawno:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

ShowMenuLogin(playerid)
{
    ClearChatbox(playerid);
	for(new i = 0; i < 20; i++)
	{
		TextDrawShowForPlayer(playerid, LoginMenu[i]);
	}
	TextDrawShowForPlayer(playerid, cargando);
	TextDrawShowForPlayer(playerid, looking);
	TextDrawHideForPlayer(playerid, LogoNombre);
	TextDrawHideForPlayer(playerid, LogoFondo);
 	TextDrawShowForPlayer(playerid, FechaD);
    //TextDrawShowForPlayer(playerid, TiempoD);
	TextDrawShowForPlayer(playerid, box);

	return 1;
}
  Cantidad de llaves: Abiertas(2)-Cerradas(2) | Lineas Totales: 17
[/quote]
¿No debería mostrar algún dialogo el ShowMenuLogin?
Imagen


Proyecto Actual: Next Nation Roleplay
Dudas en mis sistemas o en general, envía MP con confianza (Respondo Diseño, Pawn, HTML, CSS)


Disfruta de mis Aportes Aquí Abajo :P

Aporte: Diseños & Webs: Mostrar
Next Gaming Desings, Photoshop Templates: Click Aquí
Web HTML Template para RP: Click Aquí
Logos Estilo FZ, Templayes: Click Aquí
Plantilla, Banner Fenixzone: Click Aquí
Pinceles para Photoshop CS6, CC Click Aquí
Rangos para foro SMF & PhpBB, Photoshop: Click Aquí
Header Server Zombie: Click Aquí
Header + Logo Verde Photoshop: Click Aquí
Guías & Filterscripts: Mostrar
Sistema casas SQLTraducido: Click Aquí
Sistema Admin Teleport por Checkpoint:Click Aquí

ImagenFacebook PersonalImagenCanal YTImagenPortafolio (Próximamente)
Lolkilla
Aprendiz
Aprendiz
Mensajes: 158
Registrado: 29 Mar 2014 17:30
Reputación: 0

30 Jun 2019 23:41

Daniel Walker escribió:
30 Jun 2019 19:58
Spoiler:
Lolkilla escribió:
30 Jun 2019 01:31
Daniel Walker escribió:
25 Jun 2019 19:30
 Codigo Pawno:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205

[quote=Lolkilla post_id=169562 time=1561051123 user_id=133]
Estoy usando la gm de HA-RP - ZC y la modifiqué completamente, pero la había abandonado porque dejé de scriptear por un tiempo, la dejé con un error pero ya no recuerdo que fue lo que último que hice, lo que sucede es que al igresar no lanza al panel de ingreso o de registro, no entiendo que sucede, por acá voy a dejar el OnplayerConnect y las funciones de logeo y registro, no encuentro el error porque todo parece estar en orden, acá lo dejo.

Función OnplayerConnect.

[pawn=]public OnPlayerConnect(playerid)
{
    gettime(Hora, Minuto);
    SetPlayerTime(playerid,Hora,Minuto);
    EncendioMotor[playerid] = 0;
	ApagoMotor[playerid] = 0;
    if(IsPlayerNPC(playerid)) return 1;
	new playerIP[32];
	GetPlayerIp(playerid, playerIP, sizeof(playerIP));
	SetPlayerColor(playerid,COLOR_WHITE);
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
	SendClientMessage(playerid, COLOR_WHITE, "=====================================================");
    SendClientMessage(playerid, COLOR_WHITE, "| HARP - Roleplay - Gracias por esta oportunidad|");
	SendClientMessage(playerid, COLOR_WHITE, "====================================================");
	if (CheckBan(playerIP) == 1)
	{
	    SetPlayerName(playerid, "BannedPlayer");
	    SendClientMessage(playerid, COLOR_RED, "{0040FF}[PD-RP]{FFFFFF} Te Encuentras Baneado Del Servidor.");
		SetTimerEx("TimerKICK",1000,0,"d",playerid);
		return 1;
 	}

	TotalConnect++;
	resetPlayerVariables(playerid);
	MapsRemoveForPlayer(playerid);
	ClearMarriage(playerid);
	SyncPlayerTime(playerid);
 	ShowMenuLogin(playerid);
 	new pame[MAX_PLAYER_NAME];
    GetPlayerName(playerid, pame, sizeof(pame));
	new connecting_ip[32+1];
	GetPlayerIp(playerid,connecting_ip,32);
	new num_players_on_ip = GetNumberOfPlayersOnThisIP(connecting_ip);

 #if defined antinick_crash
		if(!strcmp("con",pame,true) || !strcmp("aux",pame,true) || !strcmp("prn",pame,true) || !strcmp("lptn",pame,true) || !strcmp("nul",pame,true) || !strcmp("clock$",pame,true))
	{
	    format(string7, sizeof(string7), "[PC-RP]: %s ah sido kickeado Automaticamente [Razon: Nombre Reservado De Windows]", pame);
    	SendClientMessageToAll(red, string7);
    	#if defined Guardar_Logs
    	GuardarAntiBot("NameCrash",string7);
		#endif
    	printf(string7);
		SetTimerEx("TimerKICK",1000,0,"d",playerid);
	}
	#endif
	if(num_players_on_ip > MAX_CONNECTIONS_FROM_IP) {
 	format(string7, sizeof(string7), "[PC-RP]: %s [%i] a Sido Baneado Automaticamente [Razon: Bot ( %d Bots Detectados )]", pame,playerid,MAX_CONNECTIONS_FROM_IP);
	SendClientMessageToAll(red, string7);
	#if defined Guardar_Logs
	GuardarAntiBot("AntiBot",string7);
	#endif
	SetTimerEx("TimerKICK",1000,0,"d",playerid);
  	return 1;
	}
    GetPlayerIp(playerid, JoinIP, sizeof(JoinIP));

	if(Iter_Count(Player) > MaxPlayersConnected)
	{
		MaxPlayersConnected = Iter_Count(Player);
		gettime(MPHour,MPMinute);
		getdate(MPYear,MPMonth,MPDay);
	}
	if(Info[playerid][pPbizzkey] == 0)
	{
	Info[playerid][pPbizzkey] = 9999;
	}
    if(MaxPlayersConnected > 200) MaxPlayersConnected = 200; // Temp good fix

	new playername[MAX_PLAYER_NAME];
	GetPlayerName(playerid, playername, sizeof(playername));
	if(!INI_Exist(playername)) // If exists in Y_ini
	{
    	if(doesAccountExist(playername)) // If exists in .ini
    	{
			ConvertAccount(playerid); // Convert Account to y_ini
			return 1;
		}
	}
    SetTimerEx("SafeLogin", 100, 0, "d", playerid); // acá el timer para mandarte al login

	Koson1[playerid] = 0;Kosonrob[playerid] = 1 ;
    recojercesped[playerid]=0;
    papilla[playerid] = 0;
    paposo[playerid] = 0;
  	PlayAudioStreamForPlayer(playerid,"http://dl.soundowl.com/2dx4.mp3" class="postlink">http://dl.soundowl.com/2dx4.mp3");//cancion entrada
    ClearChatbox(playerid);
    acobrarcesped[playerid]=0;
    armaRecibir[playerid]=0;
    autorepara[playerid] = 0;
    autorepara2[playerid] = 0;
	SetPVarInt(playerid,"PlayerStartDrova",0);
	lena1[playerid] = 0;
	HaveTaser[playerid] = 0;
	RemovePlayerAttachedObject(playerid, 0);
	SetPVarInt(playerid,"Miner", 0);
 	SetPVarInt(playerid,"Start", 0);
 	Vortex[playerid] = 0;
	//texto estado //
	textdrawscount++;
	Delete3DTextLabel(estado[playerid]);
 	ConEstado[playerid] = false;
 	VentaDeArmaCon[playerid][0] = -1;
    VentaDeArmaCon[playerid][1] = 0;
    Watching[playerid] = 0;
    manubrio[playerid] = 0;
    papillo[playerid] = 0;
    refuer[playerid] = 0;
    RadioOn[playerid] = 1;
    SetTimerEx("TimerROB",1200000,false,"d",playerid);
	return 1;
}



function SafeLogin(playerid) //acá la función para logear
{
    ClearChatbox(playerid);
	SetPlayerJoinCamera(playerid);
	new playername[MAX_PLAYER_NAME];
	GetPlayerName(playerid, playername, sizeof(playername));
	if(INI_Exist(playername))
	{
	    gPlayerAccount[playerid] = 1;
        ShowMainMenuDialog(playerid, 1);
		return 1;
	}
	else
	{
	    if(strfind( playername, "_", true) == -1) //Por si tu nick no tiene el _
		{
		    SetPlayerName(playerid, "InvalidNick");
			SendClientMessageEx(playerid, COLOR_WHITE, "Porfavor usa el formato correcto: Nombre_Apellido");
			SendClientMessageEx(playerid, COLOR_WHITE, "Vuelve a entrar con el formato indicado." );
			Kick(playerid);
		}
		else
		{
			gPlayerAccount[playerid] = 0; //Acá detecta si la cuenta no existe y te manda la registro
        	ShowMainMenuDialog(playerid, 2); //Acá te manda al case 2 de el ShowMainMenuDialog
	    }
	    return 1;
	}
}

ShowMainMenuDialog(playerid, frame) // y por último la función de login case 1 y de registro case 2
{
	new titlestring[60];
	InsideMainMenu[playerid] = true;
	switch(frame)
	{
		case 1:
		{
		    INI_ParseFile(UserPath(playerid), "LoadUser_pass", .bExtra = true, .extra = playerid);
			format(titlestring, sizeof(titlestring), "{72BEFF}Login: {FFFFFF}%s", GetPlayerNameEx(playerid));
			SafeDialogEx(playerid,DLOGIN,DIALOG_STYLE_PASSWORD ,titlestring,"{FFFFFF}Bienvenido de nuevo al servidor\n\n{72BEFF}Contraseña:","Entrar","Salir");
			SetPlayerVirtualWorld(playerid, 20);
		}
		case 2:
		{
			format(titlestring, sizeof(titlestring), "{72BEFF}Login: {FFFFFF}%s", GetPlayerNameEx(playerid));
			SafeDialogEx(playerid,DREGISTER,DIALOG_STYLE_PASSWORD ,titlestring,"{FFFFFF}Bienvenido a HispanoAmerica Roleplay\nIngresa una contraseña para registrarte en el servidor.\n\n{72BEFF}Contraseña:","Entrar","Salir");
	    	SetPlayerVirtualWorld(playerid, 20);
		}
	}
}

ShowMenuLogin(playerid)
{
    ClearChatbox(playerid);
	for(new i = 0; i < 20; i++)
	{
		TextDrawShowForPlayer(playerid, LoginMenu[i]);
	}
	TextDrawShowForPlayer(playerid, cargando);
	TextDrawShowForPlayer(playerid, looking);
	TextDrawHideForPlayer(playerid, LogoNombre);
	TextDrawHideForPlayer(playerid, LogoFondo);
 	TextDrawShowForPlayer(playerid, FechaD);
    //TextDrawShowForPlayer(playerid, TiempoD);
	TextDrawShowForPlayer(playerid, box);

	return 1;
}

HideMenuLogin(playerid)
{
    TextDrawHideForPlayer(playerid, MOTD);
	for(new i = 0; i < 20; i++) { TextDrawHideForPlayer(playerid, LoginMenu[i]); }
	TextDrawShowForPlayer(playerid, LogoNombre);
	TextDrawShowForPlayer(playerid, LogoFondo);
 	TextDrawShowForPlayer(playerid, FechaD);
    //TextDrawShowForPlayer(playerid, TiempoD);
	return 1;
}
  Cantidad de llaves: Abiertas(31)-Cerradas(31) | Lineas Totales: 205
EDITO:

Acá las funciones de DREGISTER - DLOGIN:
 Codigo Pawno:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65

case DLOGIN:
		{
        	if(response == 1)
        	{
				if(udb_hash(inputtext) == Info[playerid][pKey])
				{
					InsideMainMenu[playerid] = false;
					INI_ParseFile(UserPath(playerid), "LoadUser_data", .bExtra = true, .extra = playerid);
					PlayerLogin(playerid);
				}
				else
				{
	        		new ip[32];
	        		new titlestring[64];
		        	GetPlayerIp(playerid, ip, 32);
					format(titlestring, sizeof(titlestring), "{FFFFFF}Login: {FFFFFF}%s", GetPlayerNameEx(playerid));
					format(string, sizeof(string), "{FFFFFF}Direccion IP: %s\nBienvenido de nuevo!\nIngresa tu contraseña.\n\n{FFFFFF}Contraseña:", ip);
		        	SafeDialogEx(playerid,DLOGIN,DIALOG_STYLE_INPUT ,titlestring,string,"Entrar","Salir");
		        	SetPlayerVirtualWorld(playerid, 20);
                	return 1;
				}
        	}
        	else
			{
			    SendClientMessageEx(playerid, COLOR_RED, "Fuiste expulsado del servidor automáticamente.");
            	SetTimerEx("TimerKICK",1000,0,"d",playerid);
        	}
        	return 1;
		}
    	case DREGISTER:
    	{
        	if (response == 1)
        	{
            	if(strlen(inputtext) > 12)
            	{
		        	new ip[32];
		        	new titlestring[64];
		        	GetPlayerIp(playerid, ip, 32);
		        	format(titlestring, sizeof(titlestring), "{FFFFFF}Hay un problema en el{FF8000}Registro", GetPlayerNameEx(playerid));
		        	format(string, sizeof(string), "{FFFFFF}¡El máximo de caracteres para una clave es de 12!\n\n%s Ingrese una {033AA9}contraseña {FFFFFF}valida para poder entrar al servidor\n\n{033AA9}Nueva contraseña:", GetPlayerNameEx(playerid));
		        	SafeDialogEx(playerid,DREGISTER,DIALOG_STYLE_PASSWORD ,titlestring,string,"Registrar","Salir");
	            	SetPlayerVirtualWorld(playerid, 20);
                	return 1;
            	}
            	if(isnull(inputtext))
            	{
		        	new ip[32];
		        	new titlestring[64];
		        	GetPlayerIp(playerid, ip, 32);
					format(titlestring, sizeof(titlestring), "{6DA2F7}Panel de registro", GetPlayerNameEx(playerid));
			         format(string, sizeof(string), "{FFFFFF}Introduce una contraseña.\n\n{FFFFFF}Esta cuenta {6DA2F7}no está registrada {FFFFFF}en nuestro servidor.\n{FFFFFF}Ingresa una contraseña para registrarla y poder ingresar al servidor.\n", ip);
					SafeDialogEx(playerid,DREGISTER,DIALOG_STYLE_PASSWORD,titlestring,string,"Registrar","Salir");
                	return 1;
            	}
            	InsideMainMenu[playerid] = false;
				OnPlayerRegister(playerid,inputtext);
            	return 1;
        	}
        	else
        	{
        	    SendClientMessageEx(playerid, COLOR_GENERAL, "Fuiste expulsado del servidor automáticamente.");
            	SetTimerEx("TimerKICK",1000,0,"d",playerid);
        	}
			return 1;
    	}
  Cantidad de llaves: Abiertas(26)-Cerradas(26) | Lineas Totales: 65
¿Alguna solución? -beg
[/pawn]

pasa el showmenulogin
En el script estaba bro, pero acá te lo vuelvo a colocar;
 Codigo Pawno:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

ShowMenuLogin(playerid)
{
    ClearChatbox(playerid);
	for(new i = 0; i < 20; i++)
	{
		TextDrawShowForPlayer(playerid, LoginMenu[i]);
	}
	TextDrawShowForPlayer(playerid, cargando);
	TextDrawShowForPlayer(playerid, looking);
	TextDrawHideForPlayer(playerid, LogoNombre);
	TextDrawHideForPlayer(playerid, LogoFondo);
 	TextDrawShowForPlayer(playerid, FechaD);
    //TextDrawShowForPlayer(playerid, TiempoD);
	TextDrawShowForPlayer(playerid, box);

	return 1;
}
  Cantidad de llaves: Abiertas(2)-Cerradas(2) | Lineas Totales: 17


¿No debería mostrar algún dialogo el ShowMenuLogin?
[/quote]

Chequee otras gm con esa base y no tienen ningún dialogo y funcionan normalmente así, ¿me dirías como agregaría ese dialogo en todo caso?, porque te tiene que mandar a la función de ShowMainMenuDialog y no comprendo porque no lo hace
Lolkilla
Aprendiz
Aprendiz
Mensajes: 158
Registrado: 29 Mar 2014 17:30
Reputación: 0

02 Jul 2019 20:34

upppppp -beg -beg -beg
Avatar de Usuario
Eduardo_1
Master
Master
Mensajes: 1546
Registrado: 13 Dic 2016 17:50
Contactar:
Reputación: 105

02 Jul 2019 22:19

No prometo nada, sólo arreglé el código para ver si así funciona, quizá este se confunda.
 Codigo Pawno:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235

public OnPlayerConnect(playerid)
{
    gettime(Hora, Minuto);
    SetPlayerTime(playerid,Hora,Minuto);
    if(IsPlayerNPC(playerid)) return 1;
    //
    new check_ip[16], check_name[24], fmat[128];
    GetPlayerIp(playerid, check_ip, 16);
    GetPlayerName(playerid, check_name, 24);
    if(CheckBan(check_ip))
	{
	    SetPlayerName(playerid, "BannedPlayer");
	    SendClientMessage(playerid, 0x0040FFFF, "[PD-RP] {FFFFFF}Estáis baneado del servidor, no podéis jugar.");
		SetTimerEx("TimerKICK",1000,0,"d",playerid);
		return 1;
 	}
	if(strfind(playername, "_", true) == -1) //Por si tu nick no tiene el _
	{
		SetPlayerName(playerid, "InvalidNick");
		SendClientMessage(playerid, 0x0040FFFF, "[PD-RP] {FFFFFF}Estáis usando un formato de nombre incorrecto, debes usar: Nombre_Apellido");
		SetTimerEx("TimerKICK",1000,0,"d",playerid);
		return 1;
	}
	#if defined antinick_crash
		if(!strcmp("con", check_name, true) || !strcmp("aux", check_name, true) || !strcmp("prn", check_name, true) || !strcmp("lptn", check_name, true) || !strcmp("nul", check_name, true) || !strcmp("clock$", check_name, true))
		{
			format(fmat, 100, "[PC-RP] %s ha sido expulsado automáticamente [Razón: Nombre reservado]", check_name);
			SendClientMessageToAll(red, fmat);
			#if defined Guardar_Logs
				GuardarAntiBot("NameCrash", fmat);
			#endif
			print(fmat);
			SetTimerEx("TimerKICK",1000,0,"d",playerid);
		}
	#endif
	if(GetNumberOfPlayersOnThisIP(check_ip) > MAX_CONNECTIONS_FROM_IP)
	{
		format(fmat, sizeof(fmat), "[PC-RP] %s ha sido baneado automáticamente [Razón: %d bots detectados]", check_name, MAX_CONNECTIONS_FROM_IP);
		SendClientMessageToAll(red, fmat);
		#if defined Guardar_Logs
			GuardarAntiBot("AntiBot", fmat);
		#endif
		SetTimerEx("TimerKICK",1000,0,"d",playerid);
		return 1;
	}
    //
    PlayAudioStreamForPlayer(playerid, "http://dl.soundowl.com/2dx4.mp3" class="postlink">http://dl.soundowl.com/2dx4.mp3");//cancion entrada
	SetPlayerColor(playerid,COLOR_WHITE);
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
	SendClientMessage(playerid, COLOR_WHITE, "=====================================================");
    SendClientMessage(playerid, COLOR_WHITE, "| HARP - Roleplay - Gracias por esta oportunidad|");
	SendClientMessage(playerid, COLOR_WHITE, "====================================================");
	//
	TotalConnect++;
	resetPlayerVariables(playerid);
	MapsRemoveForPlayer(playerid);
	ClearMarriage(playerid);
	SyncPlayerTime(playerid);

	if(Iter_Count(Player) > MaxPlayersConnected)
	{
		MaxPlayersConnected = Iter_Count(Player);
		gettime(MPHour,MPMinute);
		getdate(MPYear,MPMonth,MPDay);
	}
	if(!INI_Exist(check_name) && doesAccountExist(check_name)) // If exists in .ini
    {
		ConvertAccount(playerid); // Convert Account to y_ini
		return 1;
	}
	//Resets
    EncendioMotor[playerid] = 0;
	ApagoMotor[playerid] = 0;
	Koson1[playerid] = 0;
	Kosonrob[playerid] = 1;
    recojercesped[playerid] = 0;
    papilla[playerid] = 0;
    paposo[playerid] = 0;
    acobrarcesped[playerid] = 0;
    armaRecibir[playerid] = 0;
    autorepara[playerid] = 0;
    autorepara2[playerid] = 0;
	SetPVarInt(playerid,"PlayerStartDrova",0);
	lena1[playerid] = 0;
	HaveTaser[playerid] = 0;
	RemovePlayerAttachedObject(playerid, 0);
	SetPVarInt(playerid,"Miner", 0);
 	SetPVarInt(playerid,"Start", 0);
 	Vortex[playerid] = 0;
	textdrawscount++;
	Delete3DTextLabel(estado[playerid]);
 	ConEstado[playerid] = false;
 	VentaDeArmaCon[playerid][0] = -1;
    VentaDeArmaCon[playerid][1] = 0;
    Watching[playerid] = 0;
    manubrio[playerid] = 0;
    papillo[playerid] = 0;
    refuer[playerid] = 0;
    RadioOn[playerid] = 1;
    SetTimerEx("TimerROB",1200000,false,"d",playerid);
    //
    ShowMenuLogin(playerid);
    SetTimerEx("SafeLogin", 100, 0, "d", playerid); // acá el timer para mandarte al login
	return 1;
}



function SafeLogin(playerid) //acá la función para logear
{
    ClearChatbox(playerid);
	SetPlayerJoinCamera(playerid);
	new playername[MAX_PLAYER_NAME];
	GetPlayerName(playerid, playername, sizeof(playername));
	if(INI_Exist(playername))
	{
	    gPlayerAccount[playerid] = 1;
        ShowMainMenuDialog(playerid, 1);
	}
	else
	{
		gPlayerAccount[playerid] = 0; //Acá detecta si la cuenta no existe y te manda la registro
       	ShowMainMenuDialog(playerid, 2); //Acá te manda al case 2 de el ShowMainMenuDialog
	}
	return 1;
}

ShowMainMenuDialog(playerid, frame) // y por último la función de login case 1 y de registro case 2
{
	new titlestring[60];
	InsideMainMenu[playerid] = true;
	SetPlayerVirtualWorld(playerid, 20);
	format(titlestring, sizeof(titlestring), "{72BEFF}Login: {FFFFFF}%s", GetPlayerNameEx(playerid));
	if(frame == 1)
	{
	    INI_ParseFile(UserPath(playerid), "LoadUser_pass", .bExtra = true, .extra = playerid);
		SafeDialogEx(playerid,DLOGIN,DIALOG_STYLE_PASSWORD ,titlestring,"{FFFFFF}Bienvenido de nuevo al servidor\n\n{72BEFF}Contraseña:","Entrar","Salir");
	}
	else
	{
		SafeDialogEx(playerid,DREGISTER,DIALOG_STYLE_PASSWORD ,titlestring,"{FFFFFF}Bienvenido a HispanoAmerica Roleplay\nIngresa una contraseña para registrarte en el servidor.\n\n{72BEFF}Contraseña:","Entrar","Salir");
	}
}

ShowMenuLogin(playerid)
{
    ClearChatbox(playerid);
	for(new i = 0; i < 20; i++)
	{
		TextDrawShowForPlayer(playerid, LoginMenu[i]);
	}
	TextDrawShowForPlayer(playerid, cargando);
	TextDrawShowForPlayer(playerid, looking);
	TextDrawHideForPlayer(playerid, LogoNombre);
	TextDrawHideForPlayer(playerid, LogoFondo);
 	TextDrawShowForPlayer(playerid, FechaD);
    //TextDrawShowForPlayer(playerid, TiempoD);
	TextDrawShowForPlayer(playerid, box);
}

HideMenuLogin(playerid)
{
    TextDrawHideForPlayer(playerid, MOTD);
	for(new i = 0; i < 20; i++) { TextDrawHideForPlayer(playerid, LoginMenu[i]); }
	TextDrawShowForPlayer(playerid, LogoNombre);
	TextDrawShowForPlayer(playerid, LogoFondo);
 	TextDrawShowForPlayer(playerid, FechaD);
    //TextDrawShowForPlayer(playerid, TiempoD);
}
//
case DLOGIN:
{
	if(response)
	{
		if(udb_hash(inputtext) == Info[playerid][pKey])
		{
			InsideMainMenu[playerid] = false;
			INI_ParseFile(UserPath(playerid), "LoadUser_data", .bExtra = true, .extra = playerid);
			PlayerLogin(playerid);
		}
		else
		{
			new ip[16], titlestring[64];
			GetPlayerIp(playerid, ip, 16);
			format(titlestring, sizeof(titlestring), "{FFFFFF}Login: {FFFFFF}%s", GetPlayerNameEx(playerid));
			format(string, sizeof(string), "{FFFFFF}Direccion IP: %s\nBienvenido de nuevo!\nIngresa tu contraseña.\n\n{FFFFFF}Contraseña:", ip);
			SafeDialogEx(playerid,DLOGIN,DIALOG_STYLE_INPUT ,titlestring,string,"Entrar","Salir");
			SetPlayerVirtualWorld(playerid, 20);
			return 1;
		}
	}
	else
	{
		SendClientMessageEx(playerid, COLOR_RED, "Fuiste expulsado del servidor automáticamente.");
		SetTimerEx("TimerKICK",1000,0,"d",playerid);
	}
	return 1;
}
case DREGISTER:
{
	if(response)
	{
	    new ip[16], titlestring[64];
		GetPlayerIp(playerid, ip, 16);
		if(strlen(inputtext) > 12)
		{
			format(titlestring, sizeof(titlestring), "{FFFFFF}Hay un problema en el{FF8000}Registro", GetPlayerNameEx(playerid));
			format(string, sizeof(string), "{FFFFFF}¡El máximo de caracteres para una clave es de 12!\n\n%s Ingrese una {033AA9}contraseña {FFFFFF}valida para poder entrar al servidor\n\n{033AA9}Nueva contraseña:", GetPlayerNameEx(playerid));
			SafeDialogEx(playerid,DREGISTER,DIALOG_STYLE_PASSWORD ,titlestring,string,"Registrar","Salir");
			SetPlayerVirtualWorld(playerid, 20);
			return 1;
		}
		if(isnull(inputtext))
		{
			format(titlestring, sizeof(titlestring), "{6DA2F7}Panel de registro", GetPlayerNameEx(playerid));
			format(string, sizeof(string), "{FFFFFF}Introduce una contraseña.\n\n{FFFFFF}Esta cuenta {6DA2F7}no está registrada {FFFFFF}en nuestro servidor.\n{FFFFFF}Ingresa una contraseña para registrarla y poder ingresar al servidor.\n", ip);
			SafeDialogEx(playerid,DREGISTER,DIALOG_STYLE_PASSWORD,titlestring,string,"Registrar","Salir");
			return 1;
		}
		InsideMainMenu[playerid] = false;
		OnPlayerRegister(playerid,inputtext);
		return 1;
	}
	else
	{
		SendClientMessageEx(playerid, COLOR_GENERAL, "Fuiste expulsado del servidor automáticamente.");
		SetTimerEx("TimerKICK",1000,0,"d",playerid);
	}
	return 1;
}
  Cantidad de llaves: Abiertas(51)-Cerradas(51) | Lineas Totales: 235

Un sabio escribió: No a todo el mundo se puede ayudar porque siempre hay un mal agradecido que termina pagándote mal. Corrige al sabio y será más sabio, corrige al necio y será tu enemigo.
Anónimo escribió: El orgulloso no reconoce sus defectos, errores o la contradicción. En el fondo su ignorancia es debida a su falta de humildad.
Vendo modo de juego Roleplay (GM-RP): New states sin bugs con PCU (UCP) no responsive (Y-INI). Interesados al imbox.


Avatar de Usuario
gloweryt
Junior
Junior
Mensajes: 195
Registrado: 16 May 2017 11:42
Ubicación: Colombia
Reputación: 11

06 Jul 2019 18:59

Lolkilla escribió:
30 Jun 2019 23:41
...
Eduardo_1 escribió:
02 Jul 2019 22:19
...

Independientemente se solucione tu error, una recomendación de mucha ayuda si la tomas, es comentar tu código de manera regular en los puntos clave, para así evitar o saber llevar estas situaciones
No te preocupes si no funciona bien. Si todo estuviera correcto, serías despedido de tu trabajo

-Ley Mosher de Ingeniería de Software


Lolkilla
Aprendiz
Aprendiz
Mensajes: 158
Registrado: 29 Mar 2014 17:30
Reputación: 0

08 Jul 2019 14:07

Eduardo_1 escribió:
02 Jul 2019 22:19
No prometo nada, sólo arreglé el código para ver si así funciona, quizá este se confunda.
 Codigo Pawno:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235

public OnPlayerConnect(playerid)
{
    gettime(Hora, Minuto);
    SetPlayerTime(playerid,Hora,Minuto);
    if(IsPlayerNPC(playerid)) return 1;
    //
    new check_ip[16], check_name[24], fmat[128];
    GetPlayerIp(playerid, check_ip, 16);
    GetPlayerName(playerid, check_name, 24);
    if(CheckBan(check_ip))
	{
	    SetPlayerName(playerid, "BannedPlayer");
	    SendClientMessage(playerid, 0x0040FFFF, "[PD-RP] {FFFFFF}Estáis baneado del servidor, no podéis jugar.");
		SetTimerEx("TimerKICK",1000,0,"d",playerid);
		return 1;
 	}
	if(strfind(playername, "_", true) == -1) //Por si tu nick no tiene el _
	{
		SetPlayerName(playerid, "InvalidNick");
		SendClientMessage(playerid, 0x0040FFFF, "[PD-RP] {FFFFFF}Estáis usando un formato de nombre incorrecto, debes usar: Nombre_Apellido");
		SetTimerEx("TimerKICK",1000,0,"d",playerid);
		return 1;
	}
	#if defined antinick_crash
		if(!strcmp("con", check_name, true) || !strcmp("aux", check_name, true) || !strcmp("prn", check_name, true) || !strcmp("lptn", check_name, true) || !strcmp("nul", check_name, true) || !strcmp("clock$", check_name, true))
		{
			format(fmat, 100, "[PC-RP] %s ha sido expulsado automáticamente [Razón: Nombre reservado]", check_name);
			SendClientMessageToAll(red, fmat);
			#if defined Guardar_Logs
				GuardarAntiBot("NameCrash", fmat);
			#endif
			print(fmat);
			SetTimerEx("TimerKICK",1000,0,"d",playerid);
		}
	#endif
	if(GetNumberOfPlayersOnThisIP(check_ip) > MAX_CONNECTIONS_FROM_IP)
	{
		format(fmat, sizeof(fmat), "[PC-RP] %s ha sido baneado automáticamente [Razón: %d bots detectados]", check_name, MAX_CONNECTIONS_FROM_IP);
		SendClientMessageToAll(red, fmat);
		#if defined Guardar_Logs
			GuardarAntiBot("AntiBot", fmat);
		#endif
		SetTimerEx("TimerKICK",1000,0,"d",playerid);
		return 1;
	}
    //
    PlayAudioStreamForPlayer(playerid, "http://dl.soundowl.com/2dx4.mp3" class="postlink">http://dl.soundowl.com/2dx4.mp3");//cancion entrada
	SetPlayerColor(playerid,COLOR_WHITE);
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
    SendClientMessage(playerid, COLOR_WHITE, "");
	SendClientMessage(playerid, COLOR_WHITE, "=====================================================");
    SendClientMessage(playerid, COLOR_WHITE, "| HARP - Roleplay - Gracias por esta oportunidad|");
	SendClientMessage(playerid, COLOR_WHITE, "====================================================");
	//
	TotalConnect++;
	resetPlayerVariables(playerid);
	MapsRemoveForPlayer(playerid);
	ClearMarriage(playerid);
	SyncPlayerTime(playerid);

	if(Iter_Count(Player) > MaxPlayersConnected)
	{
		MaxPlayersConnected = Iter_Count(Player);
		gettime(MPHour,MPMinute);
		getdate(MPYear,MPMonth,MPDay);
	}
	if(!INI_Exist(check_name) && doesAccountExist(check_name)) // If exists in .ini
    {
		ConvertAccount(playerid); // Convert Account to y_ini
		return 1;
	}
	//Resets
    EncendioMotor[playerid] = 0;
	ApagoMotor[playerid] = 0;
	Koson1[playerid] = 0;
	Kosonrob[playerid] = 1;
    recojercesped[playerid] = 0;
    papilla[playerid] = 0;
    paposo[playerid] = 0;
    acobrarcesped[playerid] = 0;
    armaRecibir[playerid] = 0;
    autorepara[playerid] = 0;
    autorepara2[playerid] = 0;
	SetPVarInt(playerid,"PlayerStartDrova",0);
	lena1[playerid] = 0;
	HaveTaser[playerid] = 0;
	RemovePlayerAttachedObject(playerid, 0);
	SetPVarInt(playerid,"Miner", 0);
 	SetPVarInt(playerid,"Start", 0);
 	Vortex[playerid] = 0;
	textdrawscount++;
	Delete3DTextLabel(estado[playerid]);
 	ConEstado[playerid] = false;
 	VentaDeArmaCon[playerid][0] = -1;
    VentaDeArmaCon[playerid][1] = 0;
    Watching[playerid] = 0;
    manubrio[playerid] = 0;
    papillo[playerid] = 0;
    refuer[playerid] = 0;
    RadioOn[playerid] = 1;
    SetTimerEx("TimerROB",1200000,false,"d",playerid);
    //
    ShowMenuLogin(playerid);
    SetTimerEx("SafeLogin", 100, 0, "d", playerid); // acá el timer para mandarte al login
	return 1;
}



function SafeLogin(playerid) //acá la función para logear
{
    ClearChatbox(playerid);
	SetPlayerJoinCamera(playerid);
	new playername[MAX_PLAYER_NAME];
	GetPlayerName(playerid, playername, sizeof(playername));
	if(INI_Exist(playername))
	{
	    gPlayerAccount[playerid] = 1;
        ShowMainMenuDialog(playerid, 1);
	}
	else
	{
		gPlayerAccount[playerid] = 0; //Acá detecta si la cuenta no existe y te manda la registro
       	ShowMainMenuDialog(playerid, 2); //Acá te manda al case 2 de el ShowMainMenuDialog
	}
	return 1;
}

ShowMainMenuDialog(playerid, frame) // y por último la función de login case 1 y de registro case 2
{
	new titlestring[60];
	InsideMainMenu[playerid] = true;
	SetPlayerVirtualWorld(playerid, 20);
	format(titlestring, sizeof(titlestring), "{72BEFF}Login: {FFFFFF}%s", GetPlayerNameEx(playerid));
	if(frame == 1)
	{
	    INI_ParseFile(UserPath(playerid), "LoadUser_pass", .bExtra = true, .extra = playerid);
		SafeDialogEx(playerid,DLOGIN,DIALOG_STYLE_PASSWORD ,titlestring,"{FFFFFF}Bienvenido de nuevo al servidor\n\n{72BEFF}Contraseña:","Entrar","Salir");
	}
	else
	{
		SafeDialogEx(playerid,DREGISTER,DIALOG_STYLE_PASSWORD ,titlestring,"{FFFFFF}Bienvenido a HispanoAmerica Roleplay\nIngresa una contraseña para registrarte en el servidor.\n\n{72BEFF}Contraseña:","Entrar","Salir");
	}
}

ShowMenuLogin(playerid)
{
    ClearChatbox(playerid);
	for(new i = 0; i < 20; i++)
	{
		TextDrawShowForPlayer(playerid, LoginMenu[i]);
	}
	TextDrawShowForPlayer(playerid, cargando);
	TextDrawShowForPlayer(playerid, looking);
	TextDrawHideForPlayer(playerid, LogoNombre);
	TextDrawHideForPlayer(playerid, LogoFondo);
 	TextDrawShowForPlayer(playerid, FechaD);
    //TextDrawShowForPlayer(playerid, TiempoD);
	TextDrawShowForPlayer(playerid, box);
}

HideMenuLogin(playerid)
{
    TextDrawHideForPlayer(playerid, MOTD);
	for(new i = 0; i < 20; i++) { TextDrawHideForPlayer(playerid, LoginMenu[i]); }
	TextDrawShowForPlayer(playerid, LogoNombre);
	TextDrawShowForPlayer(playerid, LogoFondo);
 	TextDrawShowForPlayer(playerid, FechaD);
    //TextDrawShowForPlayer(playerid, TiempoD);
}
//
case DLOGIN:
{
	if(response)
	{
		if(udb_hash(inputtext) == Info[playerid][pKey])
		{
			InsideMainMenu[playerid] = false;
			INI_ParseFile(UserPath(playerid), "LoadUser_data", .bExtra = true, .extra = playerid);
			PlayerLogin(playerid);
		}
		else
		{
			new ip[16], titlestring[64];
			GetPlayerIp(playerid, ip, 16);
			format(titlestring, sizeof(titlestring), "{FFFFFF}Login: {FFFFFF}%s", GetPlayerNameEx(playerid));
			format(string, sizeof(string), "{FFFFFF}Direccion IP: %s\nBienvenido de nuevo!\nIngresa tu contraseña.\n\n{FFFFFF}Contraseña:", ip);
			SafeDialogEx(playerid,DLOGIN,DIALOG_STYLE_INPUT ,titlestring,string,"Entrar","Salir");
			SetPlayerVirtualWorld(playerid, 20);
			return 1;
		}
	}
	else
	{
		SendClientMessageEx(playerid, COLOR_RED, "Fuiste expulsado del servidor automáticamente.");
		SetTimerEx("TimerKICK",1000,0,"d",playerid);
	}
	return 1;
}
case DREGISTER:
{
	if(response)
	{
	    new ip[16], titlestring[64];
		GetPlayerIp(playerid, ip, 16);
		if(strlen(inputtext) > 12)
		{
			format(titlestring, sizeof(titlestring), "{FFFFFF}Hay un problema en el{FF8000}Registro", GetPlayerNameEx(playerid));
			format(string, sizeof(string), "{FFFFFF}¡El máximo de caracteres para una clave es de 12!\n\n%s Ingrese una {033AA9}contraseña {FFFFFF}valida para poder entrar al servidor\n\n{033AA9}Nueva contraseña:", GetPlayerNameEx(playerid));
			SafeDialogEx(playerid,DREGISTER,DIALOG_STYLE_PASSWORD ,titlestring,string,"Registrar","Salir");
			SetPlayerVirtualWorld(playerid, 20);
			return 1;
		}
		if(isnull(inputtext))
		{
			format(titlestring, sizeof(titlestring), "{6DA2F7}Panel de registro", GetPlayerNameEx(playerid));
			format(string, sizeof(string), "{FFFFFF}Introduce una contraseña.\n\n{FFFFFF}Esta cuenta {6DA2F7}no está registrada {FFFFFF}en nuestro servidor.\n{FFFFFF}Ingresa una contraseña para registrarla y poder ingresar al servidor.\n", ip);
			SafeDialogEx(playerid,DREGISTER,DIALOG_STYLE_PASSWORD,titlestring,string,"Registrar","Salir");
			return 1;
		}
		InsideMainMenu[playerid] = false;
		OnPlayerRegister(playerid,inputtext);
		return 1;
	}
	else
	{
		SendClientMessageEx(playerid, COLOR_GENERAL, "Fuiste expulsado del servidor automáticamente.");
		SetTimerEx("TimerKICK",1000,0,"d",playerid);
	}
	return 1;
}
  Cantidad de llaves: Abiertas(51)-Cerradas(51) | Lineas Totales: 235
No me funciono de esa manera :s, no sé que hacer ya.
Responder