- Data de inscrição : 15/08/2010
Número de Mensagens : 1599
Insígnias de JAM :x 0
x 0
x 0
Reputação : 147
Prêmios: 0
: 0
: 0
[pedido] sistema de checar letras
em Dom 14 Jul 2013, 13:01
Bom, preciso de um sistema de checar letra por letra de uma palavra, vai ser mais ou menos assim:
no inicio do jogo uma palavra é escolhida por uma corrente de choose's (como exemplo casa)
depois, vão aparecer alguns quadrados na room (nesse caso 4, casa tem 4 letras)
aí, a pessoa vai clicar em um deles e escrever uma letra, se a letra estiver certa a letra aparece no quadrado.
se alguém puder me ajudar com isso, muito obrigado.
no inicio do jogo uma palavra é escolhida por uma corrente de choose's (como exemplo casa)
depois, vão aparecer alguns quadrados na room (nesse caso 4, casa tem 4 letras)
aí, a pessoa vai clicar em um deles e escrever uma letra, se a letra estiver certa a letra aparece no quadrado.
se alguém puder me ajudar com isso, muito obrigado.
- Ranking :
Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Número de Mensagens : 2964
Insígnias de JAM :x 0
x 0
x 0
Reputação : 121
Prêmios: 1
: 0
: 3
Re: [pedido] sistema de checar letras
em Dom 14 Jul 2013, 19:43
Cara, é trabalhoso, mas não é difícil. Precisa de um monte de variáveis que talvez você não conheça. E eu estou sem o manual aqui comigo, pra conferir. Se eu disser alguma bobagem, alguém me corrija.
Primeiro, você define qual é cada letra. String_copy, letra por letra.
Depois, grava o ascii code de cada letra numa variável do campo. Se você criar o campo via código, fica fácil ter a id do campo. Com a id e um "with", você coloca o code. Ah, pra pegar o code, você usa "ord(letra)". Ou é "chr(letra)"? Cheque aí.
Aí, quando você souber qual o campo selecionado, use "keyboard_key" pra verificar se a letra digitada foi a mesma do campo. Acho que tem uma defasagem de valores (o "A" do keyboard key não tem o mesmo valor ascii do "A"), mas tenho quase certeza de que a ordem das letras é a mesma, então você poderia fazer algo como
Primeiro, você define qual é cada letra. String_copy, letra por letra.
Depois, grava o ascii code de cada letra numa variável do campo. Se você criar o campo via código, fica fácil ter a id do campo. Com a id e um "with", você coloca o code. Ah, pra pegar o code, você usa "ord(letra)". Ou é "chr(letra)"? Cheque aí.
Aí, quando você souber qual o campo selecionado, use "keyboard_key" pra verificar se a letra digitada foi a mesma do campo. Acho que tem uma defasagem de valores (o "A" do keyboard key não tem o mesmo valor ascii do "A"), mas tenho quase certeza de que a ordem das letras é a mesma, então você poderia fazer algo como
- Código:
if (keyboard_key == variável + defasagem){
// acertou
}
else {
// errou
}
- Data de inscrição : 29/01/2011
Número de Mensagens : 800
Insígnias de JAM :x 0
x 0
x 0
Reputação : 26
Prêmios: 0
: 0
: 0
Re: [pedido] sistema de checar letras
em Seg 15 Jul 2013, 09:04
Pra complementar o que o saim falou aí:
- Código:
if string_upper(chr(keyboard_key)) = string_upper(string_char_at(PALAVRA, POSICAO)) then // acertou
... ou ...
- Código:
if keyboard_key mod 32 = ord(string_char_at(PALAVRA, POSICAO)) mod 32 then // acertou
... ou:
- Código:
if string_upper(keyboard_lastchar) = string_upper(string_char_at(palavra, posicao)) then // acertou
Talvez uma dessas formas resolva.
O ASCII diferencia maiúsculas de minúsculas, então, o string_upper serve pra transformar os caracteres em maiúsculas e não haver divergência ao fazer a comparação. O "mod 32" é o mesmo caso, mas só vai funcionar com as letras.
- Data de inscrição : 15/08/2010
Número de Mensagens : 1599
Insígnias de JAM :x 0
x 0
x 0
Reputação : 147
Prêmios: 0
: 0
: 0
Re: [pedido] sistema de checar letras
em Seg 15 Jul 2013, 11:32
acho que intendi, obrigado Saim e brendan640 tava precisando disso... se precisarem... só falar :p
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum