[Ajuda] Pegar nick do jogador e exibir na String do Dialogo
#1

Saudaзхes,
Comecei ontem a aprender Pawn e estou com uma dъvida que creio que seja simples.
Na caixa de diбlogo que criei quando o usuбrio erra a senha, quero existir um texto nesse formato:
"Senha incorreta. Insira a senha registrada no nick NOME DO NICK AQUI para poder prosseguir."

Espero que possam me ajudar, obrigado pela atenзгo.
Reply
#2

Vocк precisa criar uma formataзгo, para entгo, fazer esse tipo de coisa.

Um exemplo:
pawn Код:
new string[128], name[MAX_PLAYER_NAME];
GetPlayerName(playerid, name, MAX_PLAYER_NAME);
format(string, sizeof(string), "Senha incorreta. Insira a senha registrada no nick %s para poder prosseguir.", name);
ShowPlayerDialog(playerid, ID DO DIALOGO, DIALOG_STYLE_PASSWORD, "Fazendo o login", string, "Entrar", "Sair");
Й isso. Aн onde eu coloquei %s, vai pegar a string, no caso name e a string criada vai para o diбlogo.
Reply
#3

Quote:
Originally Posted by pWesley
Посмотреть сообщение
Vocк precisa criar uma formataзгo, para entгo, fazer esse tipo de coisa.

Um exemplo:
pawn Код:
new string[128], name[MAX_PLAYER_NAME];
GetPlayerName(playerid, name, MAX_PLAYER_NAME);
format(string, sizeof(string), "Senha incorreta. Insira a senha registrada no nick %s para poder prosseguir.", name);
ShowPlayerDialog(playerid, ID DO DIALOGO, DIALOG_STYLE_PASSWORD, "Fazendo o login", string, "Entrar", "Sair");
Й isso. Aн onde eu coloquei %s, vai pegar a string, no caso name e a string criada vai para o diбlogo.
Bacana, entendi.
Aproveitando para sanar uma dъvida:
O que significa "string[128]," ?

Ali em "new" vocк cria uma variбvel, o que seria entгo esse "string[128],"? e em seguida hб "name [MAX_PLAYER_NAME];"
Isso pelo o que entendi significa que a variбvel "name" vai conter o nome do jogador (MAX_PLAYER_NAME).
Estou certo? Pode me dizer para que cada pedaзo do cуdigo?
E pra que "GetPlayerName(playerid, name, MAX_PLAYER_NAME);" ?
Tenho conhecimento de outras linguagens e gosto de aprender isso. Pego as coisas facilmente.
Muito obrigado pela atenзгo.


O cуdigo deu certo, mas queria tambйm aproveitar e perguntar como faзo pra limitar atй onde eu quero a parte da string com cor? Veja como ficou a cor:



Penso em colocar {CORPADRAO} no resto da string em que eu nгo quero a cor verde.
Reply
#4

Quote:
Originally Posted by SirUndead
Посмотреть сообщение
Bacana, entendi.
Aproveitando para sanar uma dъvida:
O que significa "string[128]," ?
Ali em "new" vocк cria uma variбvel, o que seria entгo esse "string[128],"? e em seguida hб "name [MAX_PLAYER_NAME];"
Isso pelo o que entendi significa que a variбvel "name" vai conter o nome do jogador (MAX_PLAYER_NAME).
Estou certo? Pode me dizer para que cada pedaзo do cуdigo?
String й somente o nome que identifica essa variбvel. O MAX_PLAYER_NAME й somente um nъmero, que estб definida na include principal. Como tambйm o MAX_PLAYERS, que vem por padrгo 500.

Entгo isso:
Код:
new string[MAX_PLAYERS];
Й a mesma coisa que isso:
Код:
new string[500]
GetPlayerName, como o prуprio nome jб diz, й a funзгo para pegar o nome do jogador.

Funciona assim:
Код:
GetPlayerName(identificaзгo do jogador, variбvel, tamanhoda(variavel));
No caso preenchido, ficaria assim:
Код:
new var[MAX_PLAYER_NAME];
GetPlayerName(playerid, var,sizeof(var));
Como foi explicado, essa funзгo pega o nome do jogador e armazena na variбvel "var".

Quote:
Originally Posted by SirUndead
Посмотреть сообщение
O cуdigo deu certo, mas queria tambйm aproveitar e perguntar como faзo pra limitar atй onde eu quero a parte da string com cor? Veja como ficou a cor:



Penso em colocar {CORPADRAO} no resto da string em que eu nгo quero a cor verde.
Sobre as cores, vocк sу precisa definir na frase. De forma anбloga, assim:
Код:
Olб {cуdigo da cor verde} %s {cуdigo da cor branca}! Seja bem vindo!
Reply
#5

"GetPlayerName(playerid, name, MAX_PLAYER_NAME);" ?
Isso й para pegar o nome Jogador!
Quote:

new string[128]

isso e a variavel para mandar a Mensagem que a senha esta errada
Quote:

format(string, sizeof(string), "Senha incorreta. Insira a senha registrada no nick %s para poder prosseguir.", name);

& tambem para aparecer a Dialog
Quote:

ShowPlayerDialog(playerid, ID DO DIALOGO, DIALOG_STYLE_PASSWORD, "Fazendo o login", string, "Entrar", "Sair");

e dps do nome do player voce apenas coloca
Quote:

{FFFFFF}

Que vai Ficar Branco!
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)