Aller en bas
Nayt
Nayt
Membre

Nombre de messages : 4
Age : 28
Distinction : aucune
Date d'inscription : 16/01/2009

[Résolu] Problème avec un script de gestion de clavier Empty [Résolu] Problème avec un script de gestion de clavier

Dim 24 Jan 2010 - 16:23
Salut à tous , j'ai regardé et je pense que je poste dans la bonne section ... ?
Voilà , j'ai un problème avec ce script :

Code:
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
#                                                                  Gestion du Clavier
# par TLN et Lordrik, revu par Berka                                                                    rgss2 (VX)
#--------------------------------------------------------------------------------------------------------------------------------------
# A placer au début de la liste de scripts, complètement. Ne pas utiliser deux scripts de clavier !
#-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

module Win32API::APIS
  GAKS=Win32API.new("user32","GetAsyncKeyState",'i','i')
  GKS=Win32API.new("user32","GetKeyState",'i','i')
  KBDE=Win32API.new('user32','keybd_event','iii','')
end
include Win32API::APIS
module Input
  class<<self
    Inconnu="Cette touche est inconnue"
    TAB_KEY={'clic gauche'=>1,'clic droit'=>2,'clic milieu'=>4,
            'sm'=>4,'del'=>8,'tab'=>9,'enter'=>13,'shift'=>16,'ctrl'=>17,'alt'=>18,
            'pause'=>19,'caps lock'=>20,'esc'=>27,'space'=>32,'pg up'=>33,'pg down'=>34,
            'end'=>35,'home'=>36,'left'=>37,'up'=>38,'right'=>39,'down'=>40,'impr'=>44,
            'insert'=>45,'suppr'=>46,'à'=>48,'&'=>49,'é'=>50,'"'=>51,"'"=>52,'('=>53,
            '-'=>54,'è'=>55,'_'=>56,'ç'=>57,'a'=>65,'b'=>66,'c'=>67,'d'=>68,'e'=>69,
            'f'=>70,'g'=>71,'h'=>72,'i'=>73,'j'=>74,'k'=>75,'l'=>76,'m'=>77,'n'=>78,
            'o'=>79,'p'=>80,'q'=>81,'r'=>82,'s'=>83,'t'=>84,'u'=>85,'v'=>86,'w'=>87,
            'x'=>88,'y'=>89,'z'=>90,'lwin'=>91,'rwin'=>92,'fn'=>93,'altgr'=>95,'0'=>96,
            '1'=>97,'2'=>98,'3'=>99,'4'=>100,'5'=>101,'6'=>102,'7'=>103,'8'=>104,
            '9'=>105,'n*'=>106,'+'=>107,'num'=>108,'n-'=>109,'.'=>110,'/'=>111,
            'F1'=>112,'F2'=>113,'F3'=>114,'F4'=>115,'F5'=>116,'F6'=>117,'F7'=>118,
            'F8'=>119,'F9'=>120,'F10'=>121,'F11'=>122,'F12'=>123,'vernum'=>144,
            'verdefil'=>145,'lmaj'=>160,'rmaj'=>161,'lctrl'=>162,'rctrl'=>163,
            'lalt'=>164,'ralt'=>165,'$'=>186,'='=>187,','=>188,';'=>190,':'=>191,
            'ù'=>192,')'=>219,'*'=>220,'^'=>221,'²'=>222,'!'=>223,'<'=>226}
    RS=TAB_KEY.clone
    RS.keys.each{|k|RS[k]=[false,false,10]}
    Dirs=['left','up','right','down']
    alias :in_upd :update
    alias :in_trig? :trigger? # Berka: Compatibilité avec touches initiales
    alias :in_pres? :press?
    alias :in_rep? :repeat?
    def press?(n);n.is_a?(Integer)? in_pres?(n): RS[n][0];end
    def trigger?(n);n.is_a?(Integer)? in_trig?(n): RS[n][1]==1;end
    def dbtrigger?(n);RS[n][1]==2;end
    def repeat?(n);n.is_a?(Integer) ? in_rep?(n) : (RS[k][2]%=4;RS[n][2]==0&&RS[n][0]);end
    def hold?(n);((RS[n][2]%20)==0)&&RS[n][0];end
    def release?(n);RS[k][1]==-1;end
    def active?(n);GKS.call(TAB_KEY[k])&1==1;end
    def update(*tab)
      in_upd()
      if !tab.empty?
        tab.each{|n|m=RS[n][0];pr=GAKS.call(TAB_KEY[n])!=0
          tr=m==pr ? 0 : (pr ?(RS[n][2].between?(1,9)? 2 : 1) : -1)
          count=tr>0 ? 0 : [R[n][2]+1,20].min
          RS[n]=[pr,tr,count]}
      else
        TAB_KEY.keys.each{|n|
          m=RS[n][0];pr=GAKS.call(TAB_KEY[n])!=0
          tr=m==pr ? 0 : (pr ?(RS[n][2].between?(1,9)? 2 : 1) : -1)
          count=tr>0 ? 0 : [RS[n][2]+1,20].min
          RS[n]=[pr,tr,count]}
      end
    end
  end
end

Ce que j'aimerai , c'est savoir comment utiliser ce script ? Quel code mettre pour imiter une condition de touche , mais avec la touche U par exemple ?

Je vous remercie d'avance et bon making .
Berka
Berka
Staffeux retraité

Nombre de messages : 1832
Age : 33
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] Problème avec un script de gestion de clavier Empty Re: [Résolu] Problème avec un script de gestion de clavier

Dim 24 Jan 2010 - 19:30
simplement:

Code:
if Input.trigger?("u")
 # actions
end
Nayt
Nayt
Membre

Nombre de messages : 4
Age : 28
Distinction : aucune
Date d'inscription : 16/01/2009

[Résolu] Problème avec un script de gestion de clavier Empty Re: [Résolu] Problème avec un script de gestion de clavier

Sam 30 Jan 2010 - 7:32
Désolé pour le retard et merci Berka . Mais je voudrais faire cela dans un évenements . Par exemple :
Si la touche U est pressée : augmenter la variable 01 de 5 Smile
Berka
Berka
Staffeux retraité

Nombre de messages : 1832
Age : 33
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] Problème avec un script de gestion de clavier Empty Re: [Résolu] Problème avec un script de gestion de clavier

Sam 30 Jan 2010 - 11:49
Code:
Input.update
if Input.trigger?("u")
 $game_variables[1] += 5
end

dans un évent en processus //
Nayt
Nayt
Membre

Nombre de messages : 4
Age : 28
Distinction : aucune
Date d'inscription : 16/01/2009

[Résolu] Problème avec un script de gestion de clavier Empty réponse

Jeu 4 Fév 2010 - 3:42
Merci à toi Berka , super !
Coco'
Coco'
Staffeux retraité

Nombre de messages : 6578
Age : 30
Localisation : Nord/Douai
Distinction : EL DICTATOR COCO'
Coco-Dieu en puissance

[Résolu] Problème avec un script de gestion de clavier Magikarpe Grand gourou suppléant de la secte des MAGIKARP
Leader charismatique des 2beStaffieux

N°1 du forum
Président, vice-présidents et membres honoraires de la cour suprême du forum
Président de l'association des grosses distinctions CMB
Date d'inscription : 02/07/2008
https://www.rpgmakervx-fr.com

[Résolu] Problème avec un script de gestion de clavier Empty Re: [Résolu] Problème avec un script de gestion de clavier

Ven 5 Fév 2010 - 17:36
Pas de [résolu] => Avertissement
Contenu sponsorisé

[Résolu] Problème avec un script de gestion de clavier Empty Re: [Résolu] Problème avec un script de gestion de clavier

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