🤔 Para Refletir :
"Zzz... Zzzz... Opa! A cutscene já acabou?"
- Delayzado

Javascripters, me ajudem!

Estado
Tópico fechado. Não é possível fazer postagens nela.

_AGS_

Conde
Membro
Membro
Juntou-se
02 de Julho de 2015
Postagens
327
Bravecoins
2
Eu tava fazendo meu sistema por eventos para a Gincana da Fábrica dos Duendes, então eu testei ele, só que não funcionou!
É um sistema de controles, tipo aperta tal tecla o personagem move pra tal direção.
Tá aqui o print pra vcs terem uma idéia do que eu fiz:
SKBsEvF.png

Quando eu aperto tipo, W, o personagem não move pra cima.
E agora?
 
Olha eu num sei porra nenhuma de javaScript mas ACHO que o problema pode estar no mapeamento das keys. Você tem certeza que os scripts do RPG Maker reconhecem que 'A' significa a tecla A? Teclas são acessadas com números inteiros, não com letras. Lá no código do plugin padrão rpg_core, você pode encontrar o seguinte trecho:
Código:
Input.keyMapper = {
    9: 'tab',       // tab
    13: 'ok',       // enter
    16: 'shift',    // shift
    17: 'control',  // control
    18: 'control',  // alt
    27: 'escape',   // escape
    32: 'ok',       // space
    33: 'pageup',   // pageup
    34: 'pagedown', // pagedown
    37: 'left',     // left arrow
    38: 'up',       // up arrow
    39: 'right',    // right arrow
    40: 'down',     // down arrow
    45: 'escape',   // insert
    81: 'pageup',   // Q
    87: 'pagedown', // W
    88: 'escape',   // X
    90: 'ok',       // Z
    96: 'escape',   // numpad 0
    98: 'down',     // numpad 2
    100: 'left',    // numpad 4
    102: 'right',   // numpad 6
    104: 'up',      // numpad 8
    120: 'debug'    // F9
};
Percebeu que não tem as letras que você tá tentando acessar? Tenta colocar alguma dessas daí, como 'right', 'up', etc, e vê se seu sistema funciona. Se funcionar, então é esse o problema. Se não funcionar então eu não sei ><

--------
[nóis manja, FF shauHDUDU]
 
Repetindo o que a belle falou no outro tópico...

W não quer dizer que seja a tecla W, em alguns casos (quase esse caso) no padrão do maker essa tecla nem é reconhecida.

Agora você tem que usar um plugin que ative todas as teclas do Teclado.

Aqui parece estar definido todas as teclas que dá pra usar (padrão): (veja que o W é definido com nome 'pagedown')
MJd6m0k.png


PS: Fui atropelado pela belle, mas tudo bem XD
 
Não é lá muito recomendado, mas caso você queira deixar o sistema só com eventos, pode fazer a seguinte script call:

Código:
if (!Input._agsDefined) {
  Input.keyMapper[65] = 'a';
  Input.keyMapper[83] = 's';
  Input.keyMapper[68] = 'd';
  Input._agsDefined = true;
}

Como o FelipeFalcon disse acima, a tecla W já está definida como "pageup", então você coloca esse nome quando quiser verificar essa tecla. E eu coloquei no código os nomes em letras minúsculas, caso queira-as maiúsculas é só mudar.
 
Fogomax comentou:
Não é lá muito recomendado, mas caso você queira deixar o sistema só com eventos, pode fazer a seguinte script call:

Código:
if (!Input._agsDefined) {
  Input.keyMapper[65] = 'a';
  Input.keyMapper[83] = 's';
  Input.keyMapper[68] = 'd';
  Input._agsDefined = true;
}

Como o FelipeFalcon disse acima, a tecla W já está definida como "pageup", então você coloca esse nome quando quiser verificar essa tecla. E eu coloquei no código os nomes em letras minúsculas, caso queira-as maiúsculas é só mudar.

Obrigado a você também, e aproveitando a resposta (de quase dois meses atrás), qual o número interno da tecla 'c'?
 
[member=124]AGS[/member]

65 = A
66 = B
67 = C

...

97 = a
98 = b
99 = c

Basicamente o que aquele script faz é mapear 'A' para ser a mesma coisa que 'a'. i.e. keyMapper[65] = 'a'.

Agora se está falando de "código interno" como 'pageup' por exemplo, welp, aí não tem definido.

Só por questões de conhecimento...
codigo-ascii.jpg
 
Na verdade os códigos que o Input usa são Virtual-Key Codes, só acontece de os códigos ASCII para os caracteres coincidirem >.<

O que aquele script na verdade faz o método Input.isTrigger entender que quando receber 'a' ele deve procurar por toques na tecla virtual 65 (0x41).
 
Masked comentou:
Na verdade os códigos que o Input usa são Virtual-Key Codes, só acontece de os códigos ASCII para os caracteres coincidirem >.<

O que aquele script na verdade faz o método Input.isTrigger entender que quando receber 'a' ele deve procurar por toques na tecla virtual 65 (0x41).

Alucard_2 comentou:
[member=124]AGS[/member]

65 = A
66 = B
67 = C

...

97 = a
98 = b
99 = c

Basicamente o que aquele script faz é mapear 'A' para ser a mesma coisa que 'a'. i.e. keyMapper[65] = 'a'.

Agora se está falando de "código interno" como 'pageup' por exemplo, welp, aí não tem definido.

Só por questões de conhecimento...
codigo-ascii.jpg

Ah, entendi...
quer dizer que eu posso editar aquele script call para fazer com que C seja a mesma coisa que c?
 
Estado
Tópico fechado. Não é possível fazer postagens nela.
Voltar
Topo Inferior