Partagez
Aller en bas
avatar
Mi7
Membre

Nombre de messages : 37
Distinction : aucune
Date d'inscription : 18/06/2012

Résolu [résolu]Clavier manque des touches?

le Lun 9 Déc 2013 - 4:06
Bonjours/Bonsoir

J'aimerais savoir pourquoi RPG maker VX aces on ne peut pas assigner nos touches.

ici sur l'image on voit très bien que nous sommes limités aux touches A, B, C, X, Y, Z, L, R



J'aimerais pouvoir sélectionner les touches suivantes : F, G, H, J, R, T, Y, U, K J'utilise le script Falcao Pearl ABS Liquid v2 je veux les assigner sur mon contrôleur X360.



Mon problème dans condition : Le Heroes attaque presse la touche F ( donne un coup d'épée sur le pot et le pot se brise) mais je peux pas faire cela dû à la limitation de touche qui n'est pas implanté dans le jeu.




J'ai trouvé des scripts pour le clavier mais seulement pour XP où VX... si vous avez une idée comment m'aider se serai très apprécié.




avatar
Spytje
Administrateur

Nombre de messages : 5899
Localisation : La terre
Distinction : Spiraliste [Korn']
Forestia : Projet du mois juillet 2014
Papy Pulkigrat [Yama']
Date d'inscription : 16/03/2008

Résolu Re: [résolu]Clavier manque des touches?

le Lun 9 Déc 2013 - 10:18
Script clavier sous Ace hop :

Code:
=begin
Keyboard Module
by Fomar0153
Version 1.0
----------------------
Notes
----------------------
Allows you test for keyboard input
----------------------
Instructions
----------------------
For a trigger (basically a click, holding a keydown will only trigger
it once) use:
Keyboard.trigger?(Keyboard::VK_DELETE)

For a press (basically if the key is down) use:
Keyboard.press?(Keyboard::VK_KEYA)

For toggles (press once for on, press again for off) use:
Keyboard.toggle?(Keyboard::VK_KEYA)
----------------------
Known bugs
----------------------
None
=end
module Keyboard
 
  KEY_STATE = Win32API.new("user32", "GetKeyState", ["i"], "i")
  AKEY_STATE = Win32API.new("user32", "GetAsyncKeyState", ["i"], "i")
 
  # Key Codes found at:
  # http://msdn.microsoft.com/en-us/library/windows/desktop/dd375731(v=vs.85).aspx
  # Mouse buttons are physical
  VK_LBUTTON  = 0x01  # Left Mouse Button
  VK_RBUTTON  = 0x02  # Right Mouse Button
  VK_CANCEL  = 0x03  # Control-break processing
  VK_MBUTTON  = 0x04  # Middle mouse button (three-button mouse)
  VK_XBUTTON1 = 0x05  # X1 mouse button
  VK_XBUTTON2 = 0x06  # X2 mouse button
  VK_BACK    = 0x08  # BACKSPACE key
  VK_TAB      = 0x09  # TAB key
  VK_CLEAR    = 0x0C  # CLEAR key
  VK_RETURN  = 0x0D  # ENTER key
  VK_SHIFT    = 0x10  # SHIFT key
  VK_CONTROL  = 0x11  # CTRL key
  VK_MENU    = 0x12  # ALT key
  VK_PAUSE    = 0x13  # PAUSE key
  VK_CAPITAL  = 0x14  # CAPS LOCK key
  VK_ESCAPE  = 0x1B  # ESC key
  VK_SPACE    = 0x20  # SPACEBAR
  VK_PRIOR    = 0x21  # PAGE UP key
  VK_NEXT    = 0x22  # PAGE DOWN key
  VK_END      = 0x23  # END key
  VK_HOME    = 0x24  # HOME key
  VK_LEFT    = 0x25  # LEFT ARROW key
  VK_UP      = 0x26  # UP ARROW key
  VK_RIGHT    = 0x27  # RIGHT ARROW key
  VK_DOWN    = 0x28  # DOWN ARROW key
  VK_SELECT  = 0x29  # SELECT key
  VK_PRINT    = 0x2A  # PRINT key
  VK_EXECUTE  = 0x2B  # EXECUTE key
  VK_SNAPSHOT = 0x2C  # PRINT SCREEN key
  VK_INSERT  = 0x2D  # INS key
  VK_DELETE  = 0x2E  # DEL key
  VK_HELP    = 0x2F  # HELP key
  VK_NUMBERS0 = 0x30  # 0 key
  VK_NUMBERS1 = 0x31  # 1 key
  VK_NUMBERS2 = 0x32  # 2 key
  VK_NUMBERS3 = 0x33  # 3 key
  VK_NUMBERS4 = 0x34  # 4 key
  VK_NUMBERS5 = 0x35  # 5 key
  VK_NUMBERS6 = 0x36  # 6 key
  VK_NUMBERS7 = 0x37  # 7 key
  VK_NUMBERS8 = 0x38  # 8 key
  VK_NUMBERS9 = 0x39  # 9 key
  VK_KEYA    = 0x41  # A key
  VK_KEYB    = 0x42  # B key
  VK_KEYC    = 0x43  # C key
  VK_KEYD    = 0x44  # D key
  VK_KEYE    = 0x45  # E key
  VK_KEYF    = 0x46  # F key
  VK_KEYG    = 0x47  # G key
  VK_KEYH    = 0x48  # H key
  VK_KEYI    = 0x49  # I key
  VK_KEYJ    = 0x4A  # J key
  VK_KEYK    = 0x4B  # K key
  VK_KEYL    = 0x4C  # L key
  VK_KEYM    = 0x4D  # M key
  VK_KEYN    = 0x4E  # N key
  VK_KEYO    = 0x4F  # O key
  VK_KEYP    = 0x50  # P key
  VK_KEYQ    = 0x51  # Q key
  VK_KEYR    = 0x52  # R key
  VK_KEYS    = 0x53  # S key
  VK_KEYT    = 0x54  # T key
  VK_KEYU    = 0x55  # U key
  VK_KEYV    = 0x56  # V key
  VK_KEYW    = 0x57  # W key
  VK_KEYX    = 0x58  # X key
  VK_KEYY    = 0x59  # Y key
  VK_KEYZ    = 0x5A  # Z key
 
  def self.trigger?(key)
    if AKEY_STATE.call(key) != 0
      return true
    end
  end
 
  def self.press?(key)
    r = KEY_STATE.call(key)
    if r == -127 or r == -128
      return true
    end
  end
 
  # For things like caps lock
  def self.toggle?(key)
    if  KEY_STATE.call(key) == 1
      return true
    end
  end
end
avatar
Mi7
Membre

Nombre de messages : 37
Distinction : aucune
Date d'inscription : 18/06/2012

Résolu Re: [résolu]Clavier manque des touches?

le Mer 11 Déc 2013 - 7:02
Merci pour le script mais de toute évidence je ne suis pas plus avancé  scratch  écoute si tu as déjà utilisé ce script si tu veux bien pourrais tu me donner un exemple de son fonctionnement

j'ai fait 2-3 petits tests j'ai ajouté dans mon event un script : Keyboard.press?(Keyboard::VK_KEYF)

mais ça fait totalement rien c'Est surement parce que j'ai pas compris....

Puis ton projet WoF complètement débile j'adore !
avatar
Ewaldar
Membre

Nombre de messages : 1387
Age : 24
Localisation : Suisse
Distinction : aucune
Date d'inscription : 29/12/2011
http://ewaldar.wixsite.com/les-ames-perdues

Résolu Re: [résolu]Clavier manque des touches?

le Mer 11 Déc 2013 - 9:50
Tu l'as mise en condition ? Il ne faut pas créer une commande de script, mais créer une condition, aller en page 4, et sélectionner le script, puis, tu insères cette commande sans mettre de sinon.
avatar
Spytje
Administrateur

Nombre de messages : 5899
Localisation : La terre
Distinction : Spiraliste [Korn']
Forestia : Projet du mois juillet 2014
Papy Pulkigrat [Yama']
Date d'inscription : 16/03/2008

Résolu Re: [résolu]Clavier manque des touches?

le Mer 11 Déc 2013 - 13:34
Oui c'est bien ça essaie de mettre ça dans une condition si t n'y arrive toujours pas je te ferai une démo.

Puis ton projet WoF complètement débile j'adore !

Hey mon projet est pas débile ! Smile
avatar
Mi7
Membre

Nombre de messages : 37
Distinction : aucune
Date d'inscription : 18/06/2012

Résolu Re: [résolu]Clavier manque des touches?

le Mer 11 Déc 2013 - 19:23
J'ai mis la commande dans une condition sans maitre d'option dans SINON et c'Est peut-être moi qui prends pas la bonne ligne de commande bref l'image ci-dessous va tout dévoiler Wink

avatar
Spytje
Administrateur

Nombre de messages : 5899
Localisation : La terre
Distinction : Spiraliste [Korn']
Forestia : Projet du mois juillet 2014
Papy Pulkigrat [Yama']
Date d'inscription : 16/03/2008

Résolu Re: [résolu]Clavier manque des touches?

le Mer 11 Déc 2013 - 19:34
Est ce que tu peux me dire ce que tu veux faire exactement.

La ton événement est bon mais ça ne fonctionnera pas comme ça vu que tu dois avant tout activer ton événement avec la touche "enter".

Faudrait que ton événement soit en processus parallèle pour que cella fonctionne avec la touche A, mais dans ce cas même si tu te trouves à 20 mètres de celui-ci, l'événement se lancera.
avatar
vincent26
Membre

Nombre de messages : 766
Age : 22
Localisation : baume de transit le village paumé
Distinction : aucune
Date d'inscription : 17/08/2010

Résolu Re: [résolu]Clavier manque des touches?

le Mer 11 Déc 2013 - 20:00
rajoute ' == true ' aprés ta ligne de condition script

si tu veut que cela soit possible seulement si tu te trouve devant l'objet ajoute ça a la suite :
en remplacant bien entendue le Xobjet par la coordonné x de ton event
et Yobjet par la coordonné y de ton event

&& $game_player.x == XOBJET && $game_player.y == YOBJET-1


puis tu met ton event en processus paralléle
avatar
Spytje
Administrateur

Nombre de messages : 5899
Localisation : La terre
Distinction : Spiraliste [Korn']
Forestia : Projet du mois juillet 2014
Papy Pulkigrat [Yama']
Date d'inscription : 16/03/2008

Résolu Re: [résolu]Clavier manque des touches?

le Mer 11 Déc 2013 - 20:18
si tu veut que cela soit possible seulement si tu te trouve devant l'objet ajoute ça a la suite :
en remplacant bien entendue le Xobjet par la coordonné x de ton event
et Yobjet par la coordonné y de ton event

&& $game_player.x == XOBJET && $game_player.y == YOBJET-1


puis tu met ton event en processus paralléle


Ta solution est bonne mais ne fonctionnera que si tu te trouve au dessus de l'événement il me semble, si tu es à gauche, droite ou en dessous ça ne fonctionnera pas.
avatar
vincent26
Membre

Nombre de messages : 766
Age : 22
Localisation : baume de transit le village paumé
Distinction : aucune
Date d'inscription : 17/08/2010

Résolu Re: [résolu]Clavier manque des touches?

le Mer 11 Déc 2013 - 20:47
dans ce cas remplace toute par cela :

Keyboard.press?(Keyboard::VK_KEYF) == true && (($game_player.x == XOBJET && $game_player.y == YOBJET-1)||($game_player.x == XOBJET-1 && $game_player.y == YOBJET)||($game_player.x == XOBJET+1 && $game_player.y == YOBJET)||($game_player.x == XOBJET && $game_player.y == YOBJET+1))

avatar
Spytje
Administrateur

Nombre de messages : 5899
Localisation : La terre
Distinction : Spiraliste [Korn']
Forestia : Projet du mois juillet 2014
Papy Pulkigrat [Yama']
Date d'inscription : 16/03/2008

Résolu Re: [résolu]Clavier manque des touches?

le Mer 11 Déc 2013 - 20:48
Voila maintenant ça va lui être utile merci Smile
avatar
Mi7
Membre

Nombre de messages : 37
Distinction : aucune
Date d'inscription : 18/06/2012

Résolu Re: [résolu]Clavier manque des touches?

le Jeu 12 Déc 2013 - 7:26
@vincent26 a écrit:rajoute ' == true ' aprés ta ligne de condition script

si tu veut que cela soit possible seulement si tu te trouve devant l'objet ajoute ça a la suite :
en remplacant bien entendue le Xobjet par la coordonné x de ton event
et Yobjet par la coordonné y de ton event

&& $game_player.x == XOBJET && $game_player.y == YOBJET-1


puis tu met ton event en processus paralléle

Merci de ta réponse Smile


j'ai testé ce que tu m'as dit : Keyboard.press?(Keyboard::VK_KEYF) == true : ça ne fonctionne pas quand j'appuis sur la touche F... mais ce qui est encore plus drôle, j'appuie sur la touche F + Enter et ça fonctionne  lol!  bref faudrait revoir ce qui cloche   

Pour ce qui est de ceci : Keyboard.press?(Keyboard::VK_KEYF) == true && (($game_player.x == XOBJET && $game_player.y == YOBJET-1)||($game_player.x == XOBJET-1 && $game_player.y == YOBJET)||($game_player.x == XOBJET+1 && $game_player.y == YOBJET)||($game_player.x == XOBJET && $game_player.y == YOBJET+1))

Tous les XOBJET et YOBJET doivent être remplacé par les cordonner qui est l'emplacement de mon event? les cordonner c'Est bien ce qui est en bas à droite de Rpg maker 019,005 ? X c'Est le 019 et Y 005?
avatar
Berka
Administrateur

Nombre de messages : 1831
Age : 27
Localisation : Paris
Distinction : rubyste déglingué
9ème dan en scripting-no-jutsu

Nouveau Justine Beber ;P
Date d'inscription : 16/12/2007
http://rpgruby.olympe-network.com

Résolu Re: [résolu]Clavier manque des touches?

le Jeu 12 Déc 2013 - 12:01
Hello,


Dans ton cas, l'event est en déclenchement manuel, c'est-à-dire que son contenu ne sera interprété qu'après appui de la touche Input::C (donc Enter).
Donc, dans ton ordre il faut déclencher l'event (Enter) puis satisfaire la condition (F) pour exécuter le contenu.
Solution: mets ton event en proc parallèle.
Bonne journée,

Berka

Et puis:
Code:
Keyboard.press?(Keyboard::VK_KEYF)
et
Code:
Keyboard.press?(Keyboard::VK_KEYF) == true
C'est la même chose dans une condition.

avatar
Spytje
Administrateur

Nombre de messages : 5899
Localisation : La terre
Distinction : Spiraliste [Korn']
Forestia : Projet du mois juillet 2014
Papy Pulkigrat [Yama']
Date d'inscription : 16/03/2008

Résolu Re: [résolu]Clavier manque des touches?

le Jeu 12 Déc 2013 - 12:41
Pour ce qui est de ceci : Keyboard.press?(Keyboard::VK_KEYF) == true && (($game_player.x == XOBJET && $game_player.y == YOBJET-1)||($game_player.x == XOBJET-1 && $game_player.y == YOBJET)||($game_player.x == XOBJET+1 && $game_player.y == YOBJET)||($game_player.x == XOBJET && $game_player.y == YOBJET+1))

Tous les XOBJET et YOBJET doivent être remplacé par les cordonner qui est l'emplacement de mon event? les cordonner c'Est bien ce qui est en bas à droite de Rpg maker 019,005 ? X c'Est le 019 et Y 005?

Oui exacte si tes coordonnées sont 9,5 tu devras mettre cette ligne :

Code:
Keyboard.press?(Keyboard::VK_KEYF) == true && (($game_player.x == 9 && $game_player.y == 5-1)||($game_player.x == 9-1 && $game_player.y == 5)||($game_player.x == 9+1 && $game_player.y == 5)||($game_player.x == 9 && $game_player.y == 5+1))

...
avatar
vincent26
Membre

Nombre de messages : 766
Age : 22
Localisation : baume de transit le village paumé
Distinction : aucune
Date d'inscription : 17/08/2010

Résolu Re: [résolu]Clavier manque des touches?

le Jeu 12 Déc 2013 - 17:16
exactement cela
tu met ton event en processus parralélle et tu met dans ta condition ce que ta donné spywaretof
avatar
Mi7
Membre

Nombre de messages : 37
Distinction : aucune
Date d'inscription : 18/06/2012

Résolu Re: [résolu]Clavier manque des touches?

le Ven 13 Déc 2013 - 7:09
bon je suis un peux déçu dû résulta au moins c'est fonctionnel la commande suivante à bien fonctionner :

Keyboard.press?(Keyboard::VK_KEYF) == true && (($game_player.x == 9 && $game_player.y == 5-1)||($game_player.x == 9-1 && $game_player.y == 5)||($game_player.x == 9+1 && $game_player.y == 5)||($game_player.x == 9 && $game_player.y == 5+1))

Alors a ce que je vois on est obligé de passer l'évent en processus parallèle et on ne peut pas non plus maitre une option dans (Condition -SINON) parce ce que ça ne fonctionne pas...(comme dit plus haut)


Humm je suis un peux embarrasser je me demande si je devrais pas changer mon script de combat par celui de MogHunter XAS je sais pas a quel version qui est rendue sous VX-ACE et je crois qu'il m'a lair beaucoup mieux pour ce que je veux faire...

quel q'un sait où je peux trouver la dernière version pour faire des tests j'ai vu la 0.5 sous VX-ACE qui datent du 11.01.12

Je veux faire comme dans Zelda exemple : coup d'épée sur un pot, il casse ou sinon le joueur presse la touche action et il ne fait que regarder dans le pot sans le casser ou encore couper les herbes...

Bref un très grand merci pour votre temps et vos réponses j'attends de vos nouvelles sur ma dernière question pour enfin prendre une décision finale.
avatar
Spytje
Administrateur

Nombre de messages : 5899
Localisation : La terre
Distinction : Spiraliste [Korn']
Forestia : Projet du mois juillet 2014
Papy Pulkigrat [Yama']
Date d'inscription : 16/03/2008

Résolu Re: [résolu]Clavier manque des touches?

le Ven 13 Déc 2013 - 7:58
Pour la dernière version de XAS :

http://www.mediafire.com/download/6eazmf7idblvd9p/XAS_0_6b.zip


J'ai fais quelques tutoriels également et traduit pas mal de scripts en français, disponible sur le forum :

http://www.rpgmakervx-fr.com/t15181-tutoriel-xas-partie-1

http://www.rpgmakervx-fr.com/t15182-tutoriel-xas-partie-2

http://www.rpgmakervx-fr.com/t15184-tutoriel-xas-partie-3

http://www.rpgmakervx-fr.com/t15186-tutoriel-xas-partie-4


Si tu as d'autres questions je suis la, une grosse partie de mon projet repose sur ce script.

Spy.


PS : Je te conseil vivement de faire ton projet sur la version démo de XAS que tu vas télécharger.
avatar
Mi7
Membre

Nombre de messages : 37
Distinction : aucune
Date d'inscription : 18/06/2012

Résolu Re: [résolu]Clavier manque des touches?

le Ven 13 Déc 2013 - 21:12
Merci beaucoup je vais donc suivre tes conseils précieux Smile je suis très content de voir que tu as fait des tuto ça va grandement m'aider à poursuivre sur le bon chemin Wink
Contenu sponsorisé

Résolu Re: [résolu]Clavier manque des touches?

Revenir en haut
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum