Colocar Dialog de Regras ao Conectar no Server -
RedTub3 - 23.12.2013
Quero colocar um Dialog ao Conectar no Server
Tenho de mexer no OnPlayerConnect e no OnDialogResponse
Mas eu quero saber como fazer isso sem erros, jб fiz umas vezes, Ate fiz com ajuda de uns post daqui e do wiki.sa-mp.com
Postem ae o Cуdigo com base nesse dados para me ajudarem:
Melhor usar #define ou enum?
Ex:
Код:
#define DIALOG_REGRAS
Depois no OnPlayerConnect
Eu fasso isso
Код:
//DIALOG REGRAS
ShowPlayerDialog(playerid, DIALOG_REGRAS, DIALOG_STYLE_MSGBOX, "Concorda com as regras?", "Regras AKI", "Concordo", "Discordo");
E no OnDialogResponse eu fasso
Код:
if(dialogid == DIALOG_REGRAS)
{
if(response) // Se eles aceitarem as regras
{
SendClientMessage(playerid, COLOR_AVISO, "Obrigado por aceitar as regras. Tenha um Bom Jogo!");
}
else // Usarem ESC ou nгo Aceitarem
{
KickWithMessage(playerid, COLOR_INFORMACAO, "What? Nгo aceito as regras entгo vaza!");
}
return 1;
}
return 0;
}
Me ajudem ae com Base nisso que eu fiz. Valeu
Re: Colocar Dialog de Regras ao Conectar no Server -
GM_KoDi - 23.12.2013
ta indo certo, sу que a
pawn Код:
ShowPlayerDialog(playerid, DIALOG_REGRAS, DIALOG_STYLE_MSGBOX, "Concorda com as regras?", "Regras AKI", "Concordo", "Discordo");
recomendo chamar essa dialog na OnDialogResponse na verificaзгo da dialog de Registro, ai na parte em que retornar verdadeira vc chama ela, se chamar ela na OnPlayerConnect direto vai dar conflito com a dialog de Login/Registro
Re: Colocar Dialog de Regras ao Conectar no Server -
RedTub3 - 23.12.2013
Quote:
Originally Posted by O_KoDi
ta indo certo, sу que a
pawn Код:
ShowPlayerDialog(playerid, DIALOG_REGRAS, DIALOG_STYLE_MSGBOX, "Concorda com as regras?", "Regras AKI", "Concordo", "Discordo");
recomendo chamar essa dialog na OnDialogResponse na verificaзгo da dialog de Registro, ai na parte em que retornar verdadeira vc chama ela, se chamar ela na OnPlayerConnect direto vai dar conflito com a dialog de Login/Registro
|
Pode simplificar isso atraz escrevendo o cуdigo certo?
Re: Colocar Dialog de Regras ao Conectar no Server -
GM_KoDi - 23.12.2013
Seu Gm й do tipo que chama Dialog de Login/Registro ao conectar-se no servidor ?
Re: Colocar Dialog de Regras ao Conectar no Server -
DannielCooper - 23.12.2013
Quote:
Originally Posted by RedTub3
Melhor usar #define ou enum?
Ex:
Код:
#define DIALOG_REGRAS
|
WHAT?
Me diz a variavel q checa se o player й registrado ou nao.
Respuesta: Colocar Dialog de Regras ao Conectar no Server -
[BWL]Chamaleon - 23.12.2013
Olha coloca isso:
pawn Код:
//DIALOG REGRAS
ShowPlayerDialog(playerid, DIALOG_REGRAS, DIALOG_STYLE_MSGBOX, "Concorda com as regras?", "Regras AKI", "Concordo", "Discordo");
Na sua dialog de REGISTRO de contas, assim que o player LOGA com sucesso, aparecer esta dialog, pois se vocк colocar ela na Request class, ela pode dar conflito, alias й certeza que ela darб, mais de resto tб tudo correto.
Re: Colocar Dialog de Regras ao Conectar no Server -
RedTub3 - 23.12.2013
Quote:
Originally Posted by O_KoDi
Seu Gm й do tipo que chama Dialog de Login/Registro ao conectar-se no servidor ?
|
Sim. Antigo do Bloody Vegas
Re: Colocar Dialog de Regras ao Conectar no Server -
goldspy98 - 24.12.2013
Quote:
Originally Posted by RedTub3
Melhor usar #define ou enum?
Ex:
Код:
#define DIALOG_REGRAS
|
#define e enum sгo coisas diferentes, o #define й para declarar uma constante (ou seja um valor que nгo irб mudar ao longo do programa) e lida a nнvel do compilador (nгo sei explicar essa parte do compilador muito bem preciso dumas aulinhas extras xD), quanto ao enum elas jб sгo usadas como variбveis (ou seja valores que podem mudar ao longo da execuзгo do programa) a parte das variбveis nгo й totalmente correta pois eles sгo enumeradores mas o uso principal deles й em variбveis, eu nгo tenho muito jeito para explicar coisas mas se nгo entender a parte dos enums dй uma olhada neste tуpico (
https://sampforum.blast.hk/showthread.php?tid=318307).
No caso que mencionou o uso de #define й o mais correto pois serб vocк que irб definir o valor dela e esse valor nгo irб mudar durante a execuзгo do servidor.
pawn Код:
#define DIALOG_REGRAS 1 //O 1 pode ser outro nъmero qualquer pois serб o ID que irб representar o seu Dialogo e esse ID nгo irб mudar ao longo da execuзгo do servidor
-------------------------------
Й complicado dar dicas sem saber quais sгo os erros em questгo de qualquer forma como o O_KoDi disse deve resolver qualquer conflito o dialogo de registo.
Algo assim:
pawn Код:
#define DIALOG_REGRAS
public OnPlayerConnect(playerid)
{
ShowPlayerDialog(playerid, DIALOG_REGRAS, DIALOG_STYLE_MSGBOX, "Concorda com as regras?", "Regras AKI", "Concordo", "Discordo");
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == DIALOG_REGRAS)
{
if(response) //Se eles aceitarem as regras
{
SendClientMessage(playerid, COLOR_AVISO, "Obrigado por aceitar as regras. Tenha um Bom Jogo!");
ShowPlayerDialog(playerid, DIALOG_REGISTO, DIALOG_STYLE_INPUT, "Registe-se", "...", "Registar", "Cancelar"); //Nгo sei como й o seu sistema de registo mas deve ser algo deste gйnero
}
else //Usarem ESC ou nгo Aceitarem
{
KickWithMessage(playerid, COLOR_INFORMACAO, "What? Nгo aceito as regras entгo vaza!");
}
return 1;
}
else if(dialogid == DIALOG_REGISTO)
{
//Aqui ficaria a parte do registo
}
return 0;
}