[Duda] Obtener valor de una variable
#1

Buenas amigos de SAMP quisiera saber si alguien me ayuda con este code para obtener el valor de una variable antes que se ejecute los demas codigos ejemplo:

pawn Код:
forward LOGIN(playerid, dialogid, response, listitem, inputtext[]);
public LOGIN(playerid, dialogid, response, listitem, inputtext[])
{
     switch( response )
     {
         case 0: Dialog_Show(playerid,DIALOG_STYLE_MSGBOX,"{1564F5}Administraciуn - | Warning: Kick |", "Usted ha sido kikeado del servidor por exceder las oportunidades de insertar su contraseсa correctamente.\n\nїUsted perdiу su contraseсa?\nSi usted perdiу su contraseсa ingrese a nuestro Foro:"SERVER_WEB" luego clickй en (їOlvidaste tu contraseсa?).\n\nPase buen dia, ATT: Administraciуn "SERVER_NAME".","Salir","", .dialog = DIALOG_LOGIN), Kick(playerid);
         case 1:
         {
              new pBuffer[129];
              WP_Hash(pBuffer, sizeof pBuffer, inputtext);
              if(!strcmp(g_PlayerInfo[playerid][pPass], pBuffer, false))
              {
                   new query[128];
                   format(query, sizeof(query), "SELECT * FROM `Registrado` = %d", g_PlayerInfo[playerid][pRegistrado]);
                   mysql_function_query(g_Handle, query, true, "CargarCuenta", "", playerid);
                   if(g_PlayerInfo[playerid][pRegistrado] == 1)
                   {
                      CargarCuenta(playerid);
                   }
                   if(g_PlayerInfo[playerid][pRegistrado] == 0)
                   {
                      Dialog_ShowCallback(playerid, using callback OnDialogResponse, DIALOG_STYLE_MSGBOX, "Registro", "Usted no ha completado el registro.\nAhora selecciona una de las siguientes opciones.\n\nїA que sexo perteneces?", "Hombre","Mujer", .dialog = DIALOG_SEXO);
                   }
                   return 0;
              }
              else
              {
                   pWarning[playerid]++;
                   switch(pWarning[playerid])
                   {
                       case 1: Dialog_Show(playerid,DIALOG_STYLE_PASSWORD,"{1564F5}Login - | Warning 1/3 |", "Bienvenido a "SERVER_NAME".\nPor favor ingresa tu contraseсa correctamente.\nContraseсa incorrecta.\n\nContraseсa: ","Entrar","Salir", .dialog = DIALOG_LOGIN);
                       case 2: Dialog_Show(playerid,DIALOG_STYLE_PASSWORD,"{1564F5}Login - | Warning 2/3 |", "Bienvenido a "SERVER_NAME".\nPor favor ingresa tu contraseсa correctamente.\nContraseсa incorrecta.\n\nContraseсa: ","Entrar","Salir", .dialog = DIALOG_LOGIN);
                       case 3: Dialog_Show(playerid,DIALOG_STYLE_INPUT,"{1564F5}Login - | Warning 3/3 |", "Bienvenido a "SERVER_NAME".\nPor favor ingresa tu contraseсa correctamente.\nContraseсa incorrecta.\n\nContraseсa: ","Entrar","Salir", .dialog = DIALOG_LOGIN);
                       case 4: Dialog_Show(playerid,DIALOG_STYLE_MSGBOX,"{1564F5}Administraciуn - | Warning: Kick |", "Usted ha sido kikeado del servidor por exceder las oportunidades de insertar su contraseсa correctamente.\n\nїUsted perdiу su contraseсa?\nSi usted perdiу su contraseсa ingrese a nuestro Foro:"SERVER_WEB" luego clickй en (їOlvidaste tu contraseсa?).\n\nPase buen dia, ATT: Administraciуn "SERVER_NAME".","Salir","", .dialog = DIALOG_LOGIN), Kick(playerid);
                   }
                   return 0;
              }
         }
     }
     return 1;
}
Como pueden ver lo que trato de hacer es obtener el valor de la variable g_PlayerInfo[playerid][pRegistrado] para que asi se ejecute unas de las sentencias if osea si el valor es 0 que lanze el if(g_PlayerInfo[playerid][pRegistrado] == 0) y si es 1 que lanze if(g_PlayerInfo[playerid][pRegistrado] == 1), bueno el problema esta en que no obtengo el valor de la variable y por defecto la tira en 0 siempre y se ejecuta if(g_PlayerInfo[playerid][pRegistrado] == 0).

PD: Para que entiendan mejor obtener el valor de una variable MySQL antes de las sentencias if.

No dudes en comentar de alguna idea o ejemplo de como puedo obtener esta variable antes de la sentencia if por favor.
Gracias por sus ayudas.

Un saludo.
Reply
#2

para ello debes tener en cuenta que dependiendo de donde este el sistema de registro o tal ves en OnPlayerConnet
chekeas si esta registrado o si no si es asi le seteas la variable en 1 y si no se la seteas a 0 creo que es lo que quieres no ??
Reply
#3

Quote:
Originally Posted by cesar_******
Посмотреть сообщение
para ello debes tener en cuenta que dependiendo de donde este el sistema de registro o tal ves en OnPlayerConnet
chekeas si esta registrado o si no si es asi le seteas la variable en 1 y si no se la seteas a 0 creo que es lo que quieres no ??
Si es lo que quiero y lo hice en OnPlayerConnet pero entonces no me reconocia la contraseсa del LOGIN.

PD: Lo que hago es un sistema de que si te desconectas en el registro y te vayas a loguear si no lo haz completado entonces te envie al Registro no se si me entiendes.

Un saludo y muchas gracias.
Reply
#4

ps no entendi pero dime que usas para el registro dini o file
y explica un poco mejor lo que quieres
Reply
#5

Quote:
Originally Posted by cesar_******
Посмотреть сообщение
ps no entendi pero dime que usas para el registro dini o file
y explica un poco mejor lo que quieres
Me refiero a que si te desconectas cuando estas en el registro de los datos osea,sexo,edad,email y eso cuando vayas al loguearte te envie nuevamente al registro.

No man uso MySQL fijate en el codigo...

Muchas gracias.
Reply
#6

lol cierto bueno mira tйcnicamente al registrarse hay un ultimo paso el cual se da una ves por registro y en ese le seteas muchas cosas como level dinero entre otras hay tendrбs que setearle la variable registro en 1 y al momento de conectarse si existe se la seteas en 1 no se si me entiendes

EDIT: obvio que el ultimo paso se da si llena el formulario de registro tal como sexo , edad , ciudad mientras no cumpla con el formulario la variable registro permanecerб en 0 y cada ves que entra tendrб que llenar el formulario ya que no a llegado al ultimo paso
Reply
#7

Quote:
Originally Posted by cesar_******
Посмотреть сообщение
lol cierto bueno mira tйcnicamente al registrarse hay un ultimo paso el cual se da una ves por registro y en ese le seteas muchas cosas como level dinero entre otras hay tendrбs que setearle la variable registro en 1 y al momento de conectarse si existe se la seteas en 1 no se si me entiendes

EDIT: obvio que el ultimo paso se da si llena el formulario de registro tal como sexo , edad , ciudad mientras no cumpla con el formulario la variable registro permanecerб en 0 y cada ves que entra tendrб que llenar el formulario ya que no a llegado al ultimo paso
No es eso ya tengo todo seteado que cuando se registran la variable se setea en 0 pero cuando terminan el registro se setea en 1 el sistema funciona bien pero al no obtener el valor de la variable antes de las sentencias if en el LOGIN por defecto ya que la variable no tiene valor ejecuta la sentencia if 0, solo quiero saber como leer la variable antes de las sentencias if lo intente en OnPlayerConnect pero la contraseсa no la reconoce.

PD: El sistema lo estoy haciendo con MySQL R7 con cache ya que es mas estable y rapido en cargar datos.

Un saludo y muchas gracias.
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)