Posts: 368
Threads: 38
Joined: Aug 2010
Reputation:
0
Bom galera, estou precisando de um dialogo, que ja tentei fazer muito mas sempre acaba em erro.
Poderia ser de 2 formas.
O dialogo seria em inputtext
Mais ou menos assim:
Digite abaixo a sua aparencia.
**input dialog**
Pronto Cancelar
E, quando clicar em pronto ele salvaria tudo que o cara digitou na caixa de texto e colocaria dentro da conta dele. Ficando mais ou menos assim,
Nome=Nomedocara
Level=leveltal
Etcetcetc
Aparencia=o que o cara tinha digitado.
A segunda forma seria dessa forma, so mudaria a forma de salvar.
Em vez de salvar "aparencia=" em todas as contas, criaria um arquivo dentro da scriptfiles chamado: "Aparencias"
Dentro dele estaria, por exemplo:
Nomedocara=aparenciadocara
Nomedeoutrocara=aparencidadessecara
Tudo em dini.
Agradeзo desde jб.
Posts: 1,197
Threads: 85
Joined: Jan 2011
Em Dini eu nгo sei fazer, mas sei fazer em SII, serve?
Posts: 199
Threads: 6
Joined: Jul 2011
Reputation:
0
Utiliza DFile, alйm de ser prбtico й fбcil.
Posts: 2,640
Threads: 122
Joined: Feb 2010
Reputation:
0
Faz em SII que eu converto pra ele.
Posts: 368
Threads: 38
Joined: Aug 2010
Reputation:
0
<3 Valeu mano.
@Off topic
Advanced off vai fazer 3 dias, vai demorar muito pra voltar?
Posts: 1,197
Threads: 85
Joined: Jan 2011
27.08.2011, 22:56
(
Последний раз редактировалось Bruno Pereira; 27.08.2011 в 23:32.
)
Feito
espero que goste!
Crie a pasta Aparencias nos seus ScriptFiles
Topo do GM:
PHP код:
#define DAparencia 666
PHP код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
switch(dialogid)
{
case DAparencia:
{
if(!response)// Se o Player clicar no botao SAIR
return Kick(playerid);// Kicka ele!
if(response)
{
new aparencia = strlen(inputtext);// Definimos a strlen(inputtext) [isso й oque ele ira digitar na caixinha], so pra nao ficar repetindo toda hora: strlen(inputtext) kk!
if(!strlen(inputtext))//Se a caixa estiver em branco, ira returnar isso \/
return ShowPlayerDialog(playerid, DAparencia, DIALOG_STYLE_INPUT, "Aparencia", "Vocк tem que digitar algo sobre vocк\nFale algumas caracteristicas de vocк!", "Finalizar", "Sair");
if(aparencia < 10 || aparencia > 100)// Se ele digitar menos de 10 ou mais de 40 caracteres!
return ShowPlayerDialog(playerid, DAparencia, DIALOG_STYLE_INPUT, "Aparencia", "Vocк tem que falar pelo menos 10 e no maximo 100 letras sobre vocк rs.\nFale algumas caracteristicas de vocк!", "Finalizar", "Sair");
if(INI_Open(Aparencias(playerid)))// Cria a pasta e cria o arquivo com o nome do player (usando a stock logo abaixo).
{
INI_WriteString("Aparencia",inputtext);// Seta oque ele digitou...
INI_Save();//Salva o arquivo!
INI_Close();//Fecha o arquivo!
}
}
return 1;
}
}
return 1;
}
PHP код:
public OnPlayerConnect(playerid)
{
if(!fexist(Aparencias(playerid)))// Se a conta do player nгo existir na pasta Aparencias, mostrara o Dialog para ele!
{
ShowPlayerDialog(playerid, DAparencia, DIALOG_STYLE_INPUT, "Aparencia", "Fale um pouco sobre vocк.\nSuas habilidades\nOque gosta de fazer, etc.", "Finalizar", "Sair");
}
return 1;
}
Final do GM:
PHP код:
stock Aparencias(playerid)// Stock de aparencias, "define a pasta"!
{
new String[40];
format(String, 50, "Aparencias/%s.ini", pNome(playerid));//Endereзo onde serб salvo as contas.
return String;
}
PHP код:
stock pNome(playerid)//Essa funзгo irб returnar o nome do jogador, assim facilitando muito, vocк nгo precisara criar toda hora "nome[MAX_PLAYER_NAME]" e bla bla bla...
{
new nome[MAX_PLAYER_NAME];
GetPlayerName(playerid, nome, sizeof(nome));
return nome;
}
Posts: 368
Threads: 38
Joined: Aug 2010
Reputation:
0
Muito obrigado!
Agora irei esperar o Ricop522 converter.
<3