|
Huge Clucker
Join Date: Nov 2011
Location: El Salvador
Posts: 277
Reputation: 27
|
Pasar registros a dialogos.
RESUMEN
Bueno, aqui les voy a enseñar a pasar registros de 'Sexo', 'Edad', 'Originidad' a dialog, esto es unicamente para los gamemodes/filterscript :cigarro:, que ya contengan un registro como LARP, Ya que aquí no enseñaré como hacerlo desde 0, luego hago uno para eso. comenzamos.
Primer paso - Definición
Bueno, lo primero que hay que hacer es definir los dialogos que usaremos, para que no nos muestre errores, warning, étc, y no hallan conflictos en su creación, de esta forma ponemos esto bajo los includes.
pawn Code:
#define DIALOGO_RSEXO 6421 #define DIALOG_REDAD 6427 #define DIALOG_RCITY 6429 #define DIALOG_RTUTO 1057
Segundo paso - Inicio de la fila
Bueno, esto es como una fila, ya que se guiará de el primer dialogo luego de pasar el primero ira al segundo, tercero, etc, hasta ir al tutorial... realizaremos lo siguiente en 'SetPlayerSpawn' (como ya mencione arriba es para gamemodes que Ya conengan un registro común).
pawn Code:
ShowPlayerDialog(playerid, DIALOGO_RSEXO, DIALOG_STYLE_MSGBOX, "{E75500}* {FFFFFF}Paso 1 {E75500}*", "{E75500}Sexo\n\n{FFFFFF}Antes de comenzar es necesario que Marques el Género que será tu personaje", "Mujer", "Hombre"); SendClientMessage(playerid, COLOR_YELLOW, "Por favor, seleccione los datos de registro correctamente.");
Esto lo colocaremos bajo la variable cual hacia que se pudiera utilizar teclas u poner cosas como 'masculino', 'femenino, 'origen', étc... En la mayoria de gamemodes esta tiene definida como: RegistrationStep - RegistroActivado, étc. Luego de colocar esto, nos dirigimos a OnDialogResponse y colocaremos el siguiente codigo.
pawn Code:
if(dialogid == DIALOGO_RSEXO) if(response) { PlayerInfo[playerid][pChar] = 90; SetPlayerSkin(playerid, 90); PlayerInfo[playerid][pSex] = 2;
SendClientMessage(playerid, 0xD00115FF, "-------------------------------------------------"); SendClientMessage(playerid, 0xD3D0D4FF, "{FFFFFF}Personal de Migración: {FF7D3F}Gracias, Eres Mujer."); SendClientMessage(playerid, 0xD00115FF, "-------------------------------------------------"); ShowPlayerDialog(playerid, DIALOG_REDAD, DIALOG_STYLE_INPUT, "{E75500}* {FFFFFF}Paso 2 {E75500}*", "{F0F0F0}¿Que edad tiene?", "Seguir", "Volver"); return 1; } else { PlayerInfo[playerid][pChar] = 26; SetPlayerSkin(playerid, 26); PlayerInfo[playerid][pSex] = 1;
//LimpiarConsola(playerid, 2); SendClientMessage(playerid, 0xD00115FF, "-------------------------------------------------"); SendClientMessage(playerid, 0xD3D0D4FF, "{FFFFFF}Personal de Migración: {FF7D3F}Gracias, Eres Hombre."); SendClientMessage(playerid, 0xD00115FF, "-------------------------------------------------"); ShowPlayerDialog(playerid, DIALOG_REDAD, DIALOG_STYLE_INPUT, "{E75500}* {FFFFFF}Paso 2 {E75500}*", "{F0F0F0}¿Que edad tiene?", "Seguir", "Volver"); return 1; }
if(dialogid == DIALOG_REDAD) { if ( response == 1 ) { if ( strval( inputtext ) >= 15 && strval( inputtext ) <= 60 ) { new EdadNumeroS1[256]; PlayerInfo[playerid][pAge] = strval(inputtext); //LimpiarConsola(playerid, 2); SendClientMessage(playerid, 0xD00115FF, "---------------------------------------------------------------------------"); format(EdadNumeroS1, sizeof(EdadNumeroS1), "{FFFFFF}Personal de Migración: {FF7D3F}Gracias, Tú edad es %d", PlayerInfo[playerid][pAge]); SendClientMessage(playerid, 0xD3D0D4FF, EdadNumeroS1); SendClientMessage(playerid, 0xD00115FF, "---------------------------------------------------------------------------"); ShowPlayerDialog(playerid, DIALOG_RCITY, DIALOG_STYLE_MSGBOX, "{E75500}* {FFFFFF}Paso 3 {E75500}*", "{E75500}Ciudad\n\n{FFFFFF}Seleccione la ciudad de origen en donde desea haver Nacido.\n\n{43CE00}Selección:", "Liberty City", "Los Santos"); } else { SendClientMessage(playerid,0xD00115FF,"La edad tiene que estar comprendida entre 15 y 60 años"); ShowPlayerDialog(playerid, DIALOG_REDAD, DIALOG_STYLE_INPUT, "{E75500}* {FFFFFF}Paso 2 {E75500}*", "{F0F0F0}¿Que edad tiene?", "Seguir", "Volver"); } } else { ShowPlayerDialog(playerid, DIALOGO_RSEXO, DIALOG_STYLE_MSGBOX, "{E75500}* {FFFFFF}Paso 1 {E75500}*", "{E75500}Sexo\n\n{FFFFFF}Antes de comenzar es necesario que Marques el sexo que será tu personaje", "Hombre", "Mujer"); } return 1; }
if(dialogid == DIALOG_RCITY) { if(response == 0) // Los Santos { //LimpiarConsola(playerid, 2); SendClientMessage(playerid, 0xD00115FF, "---------------------------------------------------------------------------"); SendClientMessage(playerid, 0xD3D0D4FF, "{FFFFFF}Personal de Migración: {FF7D3F}Gracias, Eres de Los Santos. "); SendClientMessage(playerid, 0xD00115FF, "---------------------------------------------------------------------------"); ShowPlayerDialog(playerid,DIALOG_RTUTO,DIALOG_STYLE_MSGBOX,"{00DD00}Fin del registro",\ "{FFFFFF}Información {00FF00}Anticipada.\n\n\n{FFFFFF}A Continuación verás el tutorial oficial de VillaRol.\n\n{FFFFFF}Presta mucha atención, Si deseas pasar a otra pagina Cuando ya hallas\n\n{FFFFFF}Visto una, Presiona {FF0000}Enter {FFFFFF}para pasar de Pagina." ,"Continuar",""); } if(response == 1) // Liberty City { //LimpiarConsola(playerid, 2); SendClientMessage(playerid, 0xD00115FF, "---------------------------------------------------------------------------"); SendClientMessage(playerid, 0xD3D0D4FF, "{FFFFFF}Personal de Migración: {FF7D3F}Gracias, Eres de Liberty City."); SendClientMessage(playerid, 0xD00115FF, "---------------------------------------------------------------------------"); ShowPlayerDialog(playerid,DIALOG_RTUTO,DIALOG_STYLE_MSGBOX,"{00DD00}Fin del registro",\ "{FFFFFF}Información {00FF00}Anticipada.\n\n\n{FFFFFF}A Continuación verás el tutorial oficial de VillaRol.\n\n{FFFFFF}Presta mucha atención, Si deseas pasar a otra pagina Cuando ya hallas\n\n{FFFFFF}Visto una, Presiona {FF0000}Enter {FFFFFF}para pasar de Pagina." ,"Continuar",""); } return 1; }
if(dialogid == DIALOG_RTUTO) { TutTime[playerid] = 1; //Tutorial_Show(playerid); RegistrationStep[playerid] = 0; return 1; }
Donde he puesto los // pueden quitarlos, los he puesto por si tienen definido eso y quieren usarlo, Ya que pueden tener el tutorial en una callback u stock, como por ejemplo //Tutorial_Show(playerid);, De esa forma terminamos y realizamos el registro completamente bien, Eliminen la variable que mencioné, la cual puede estar nombrada como, RegistrationStep u RegistroActivado, espero que les halla servido :cigarro:
Saludos.
__________________
Suscribete a mi canal
|