Forum d'entraide à la création de jeux d'aventure
 
PortailPortail  AccueilAccueil  RechercherRechercher  S'enregistrerS'enregistrer  Connexion  
Le Deal du moment :
SSD interne Crucial BX500 2,5″ SATA – 500 ...
Voir le deal
29.99 €

 

 Double clic

Aller en bas 
2 participants
AuteurMessage
Creamy
Disciple de la Grande Tasse Bleue
Disciple de la Grande Tasse Bleue
Creamy


Nombre de messages : 1266

Date d'inscription : 15/10/2007


Double clic  Empty
MessageSujet: Double clic    Double clic  EmptyLun 1 Juin 2015 - 13:05

Bonjour,
Je prévois une grosse mise à jour pour une nuit en Berry, avec notamment un double clic de déplacement rapide entre les pièces.
J'ai recopié un code trouvé ici
Ca fonctionne mais ce n'est pas parfait. Le perso a une fâcheuse tendance à répéter les interactions qui viennent d'être cliquées ou à se déplacer tout seul.

Quelqu'un aurait-il une idée pour améliorer ça?

Global script :
Code:
//DOUBLE CLIC
#define DCDELAY 10
function left_click(bool single) {
  if (single) {
    // single-click code
    ProcessClick(mouse.x, mouse.y, mouse.Mode );
  }
  else {    
    // double-click code
    ProcessClick(mouse.x, mouse.y,eModeUsermode2);
}
}
int lastclick, mx, my;


Dans le repeatedly_execute :
Code:
//DOUBLE CLIC
   if (lastclick>0 && lastclick<=DCDELAY) lastclick++;
  else if (lastclick>DCDELAY) {
    lastclick=0;
    left_click(true);
  }

Et un peu plus loin :
Code:

#sectionstart on_mouse_click  // DO NOT EDIT OR REMOVE THIS LINE
function on_mouse_click(MouseButton button) {

     if (lastclick && mouse.x==mx && mouse.y==my) {
      lastclick=0;
      left_click(false);  
    }
    else {
      lastclick=1;
      mx=mouse.x;
      my=mouse.y;
    }

PS : le module d'Asraroth ne fonctionne pas sur la version 2.72 d'AGS qui fait tourner le jeu.
Revenir en haut Aller en bas
http://creamy.unblog.fr/
Kitai
Délégué de la tasse bleue
Délégué de la tasse bleue
Kitai


Nombre de messages : 2907

Date d'inscription : 01/08/2006


Double clic  Empty
MessageSujet: Re: Double clic    Double clic  EmptyLun 1 Juin 2015 - 21:00

Note préliminaire : Le système de coloration du code du forum a un problème d'affichage des opérateurs de comparaison (signes < et >).

Une erreur m'échappe peut-être, mais ton code m'a l'air bon. Je ne vois pas trop d'où vient ton problème, es-tu sûr de n'avoir qu'une seule fonction on_mouse_click à travers tes scripts ? Tu peux aussi faire une recherche de "ProcessClick" pour voir si le problème se situe ailleurs.

_________________
Ga is Ga
Vous pouvez consulter l'aide d'AGS 3.2 en français et contribuer à la traduction et à l'amélioration si le cœur vous en dit !
Revenir en haut Aller en bas
http://admin.no.uchi.free.fr/dokuwiki-2008-05-05/doku.php
 
Double clic
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» double condition
» Clic droit = lâcher l'objet
» [résolu] Déplacement perso + clic souris sur axe x (Maniac Mansion)
» [résolu] Comment empécher clic de souris pendant une séquence de jeu ?
» Double Click

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Adventure Games Studio fr :: CREATION DE JEUX :: Questions / Réponses-
Sauter vers: