Partagez
Aller en bas
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 Mouse area

le Lun 16 Nov 2015 - 0:40
Coucou,

J'aimerais savoir si il est possible de récupérer la position de la souris dans un area.

J'ai fais ce code mais il n'a pas l'air de fonctionner :

Code:
var Mouse = new Point();

Mouse.isOverRect = function (x, y, width, height) {
  return (this.x >= x) && (this.y >= y) && (this.x <= x + width) && (this.y <= y + height);


Pour testé j'ai créé cet événement :




Aussi j'aimerais supprimer la possibilité le déplacement après le clic souris et donc seulement utiliser les touches directionnelles.

Pour ça j'ai également utilisé un code comme celui-ci mais du coup il supprime également la possibilité d'activer les événements.

Code:
//-----------------------------------------------------------------------------
//  Galv's Disable Mouse
//-----------------------------------------------------------------------------
//  For: RPGMAKER MV
//  DisableMouse.js
//-----------------------------------------------------------------------------
//  Version 1.0
//  2015-11-03 - Version 1.0 - release
//-----------------------------------------------------------------------------
// Terms can be found at:
// galvs-scripts.com
//-----------------------------------------------------------------------------

var Imported = Imported || {};
Imported.Galv_NoMouse = true;

//-----------------------------------------------------------------------------
/*:
 * @plugindesc Disables mouse clicks.
 *
 * @author Galv - galvs-scripts.com
 *
 * @help
 * This space intentionally left blank.
 *
 */

TouchInput._onMouseDown = function(event) {
 // Overwrite to do nothing
};

Merci pour votre aide.


Dernière édition par Spy le Mar 17 Nov 2015 - 23:24, édité 1 fois
avatar
Ewaldar
Membre

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

Résolu Re: Mouse area

le Lun 16 Nov 2015 - 10:37
J'ai ça pour toi : http://mvplugins.com/plugin/Hudell/Orange%20Mouse%20Data

Cela enregistre dans des variables les données comme la pos x et y, boutons pressés, le tile actif, etc.

Il y a moyen de faire qqch je suppose
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: Mouse area

le Lun 16 Nov 2015 - 11:57
Oui y a certainement moyen de bosser dessus bien qu'il ne fait pas du tout ce que je cherche.

Peut être que Tony pourra trouver une solution je ne pense pas que j'étais loin avec mon pti bout de code Smile
avatar
LightNox
Membre

Nombre de messages : 1755
Age : 27
Localisation : Chez Moi ^^
Date d'inscription : 10/04/2008

Résolu Re: Mouse area

le Lun 16 Nov 2015 - 16:28
en fait en gros tu veut faire en sorte que si ta souris passe sur une area elle affiche une fenêtre ?
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: Mouse area

le Lun 16 Nov 2015 - 16:43
Je veux juste la détection qui fonctionne dans les conditions.

J'utilisais celui ci sous Ace :

http://pastebin.com/raw.php?i=RDtzRMCN
avatar
LightNox
Membre

Nombre de messages : 1755
Age : 27
Localisation : Chez Moi ^^
Date d'inscription : 10/04/2008

Résolu Re: Mouse area

le Lun 16 Nov 2015 - 17:29
mais tu veut qu'il fasse quoi ton plugin ? explique en détail car la je vois toujours pas xD
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: Mouse area

le Lun 16 Nov 2015 - 17:36
Exactement ce qui est sur mon screen au dessus dans l'événement.
avatar
tonyryu
Membre

Nombre de messages : 895
Age : 38
Localisation : Près de Nantes
Distinction : aucune
Date d'inscription : 27/05/2010
http://www.tonyryudev.com

Résolu Re: Mouse area

le Lun 16 Nov 2015 - 22:01
Alors, ce qu'il faut savoir c'est que moi pour les guis, j'ai modifié l'enregistrement des coordonnées de la souris, pour que chaque cycle les mettent à jour :

Code:
TouchInput._onMouseMove = function(event) {
  var x = Graphics.pageToCanvasX(event.pageX);
  var y = Graphics.pageToCanvasY(event.pageY);
  this._onMove(x, y);
};

du coup, tu peux faire cela après :
Code:
Mouse.isOverRect = function (x, y, width, height) {
  return (TouchInput._x >= x) && (TouchInput._y >= y) && (TouchInput._x <= x + width) && (TouchInput._y <= y + height);
};

J'ai pas testé, faudra voir si ça fonctionne, mais l'idée est là.


Pour ce qui est de la désactivation du déplacement via le clic de souris, il faut surcharger cette fonction :
Code:
Scene_Map.prototype.processMapTouch = function() {
    if (TouchInput.isTriggered() || this._touchCount > 0) {
        if (TouchInput.isPressed()) {
            if (this._touchCount === 0 || this._touchCount >= 15) {
                var x = $gameMap.canvasToMapX(TouchInput.x);
                var y = $gameMap.canvasToMapY(TouchInput.y);
                $gameTemp.setDestination(x, y);
            }
            this._touchCount++;
        } else {
            this._touchCount = 0;
        }
    }
};
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: Mouse area

le Lun 16 Nov 2015 - 22:59
Merci Tony pour l'area ça fonctionne impec bien que je ne comprend pas la première partie de ton code ce n'est pas mis à jour de base la position de la souris ?

Pour ce qui est des déplacements j'arrive bien à les supprimer mais étrangement les événements ne réagissent plus lorsque je clic dessus du coup.

Est ce que c'est lié ?
avatar
tonyryu
Membre

Nombre de messages : 895
Age : 38
Localisation : Près de Nantes
Distinction : aucune
Date d'inscription : 27/05/2010
http://www.tonyryudev.com

Résolu Re: Mouse area

le Mar 17 Nov 2015 - 13:17
Pour la première partie de mon code, ça remplace la fonction de base, car celle-ci ne met à jour les coordonnées _x et _y de TouchInput uniquement si la souris est pressé, ce que je trouve un peu con.

Pour le clic sur l'event, je regarderai ce soir. (jsui en déplacement pro, et je profite de la pause pour regarder rapidement le fofo.)
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: Mouse area

le Mar 17 Nov 2015 - 19:46
Ok merci pour l'explication.

Et merci pour ton aide.
avatar
tonyryu
Membre

Nombre de messages : 895
Age : 38
Localisation : Près de Nantes
Distinction : aucune
Date d'inscription : 27/05/2010
http://www.tonyryudev.com

Résolu Re: Mouse area

le Mar 17 Nov 2015 - 22:39
bon, ça semble fonctionner avec ça en plus dans le plugin :

Code:
Game_Character.prototype.findDirectionTo = function(goalX, goalY) {
  return 0;
};
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: Mouse area

le Mer 18 Nov 2015 - 0:10
Ca marche bien merci Tony.

Voila l'idée pour les aréa :

avatar
LightNox
Membre

Nombre de messages : 1755
Age : 27
Localisation : Chez Moi ^^
Date d'inscription : 10/04/2008

Résolu Re: Mouse area

le Mer 18 Nov 2015 - 0:22
super rendu gg Spy ^^
avatar
tonyryu
Membre

Nombre de messages : 895
Age : 38
Localisation : Près de Nantes
Distinction : aucune
Date d'inscription : 27/05/2010
http://www.tonyryudev.com

Résolu Re: Mouse area

le Mer 18 Nov 2015 - 9:54
Avec mes guis, tu aurais fais ça sans mal ^^

Faudrait que tu fasses une vidéo de ton hud Light
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: Mouse area

le Mer 18 Nov 2015 - 10:44
C'est ce que je vais faire ce soir je tente d'importer ton script dans mon projet.
avatar
LightNox
Membre

Nombre de messages : 1755
Age : 27
Localisation : Chez Moi ^^
Date d'inscription : 10/04/2008

Résolu Re: Mouse area

le Mer 18 Nov 2015 - 11:07
@Tonyryu a écrit:
Avec mes guis, tu aurais fais ça sans mal ^^

Faudrait que tu fasses une vidéo de ton hud Light

Je confirme x) et pour la vidéo j'en ferais une dès que je l'aurais terminer et refondu aussi ^^ surprise in coming Wink
avatar
tonyryu
Membre

Nombre de messages : 895
Age : 38
Localisation : Près de Nantes
Distinction : aucune
Date d'inscription : 27/05/2010
http://www.tonyryudev.com

Résolu Re: Mouse area

le Mer 18 Nov 2015 - 11:19
lien des GUIS sur mon projet démo technique en ligne :
http://www.tonyryudev.com/dev/projet/js/plugins/Tonyryu_GUI.js
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: Mouse area

le Mer 18 Nov 2015 - 13:15
Ah ok merci il y a une doc avec ou pas ?
avatar
tonyryu
Membre

Nombre de messages : 895
Age : 38
Localisation : Près de Nantes
Distinction : aucune
Date d'inscription : 27/05/2010
http://www.tonyryudev.com

Résolu Re: Mouse area

le Mer 18 Nov 2015 - 13:23
J'ai pas encore fait tous les Guis, mais dans l'utilisation ça ne devrait pas bouger, je créerai un topic ce soir pour l'utilisation.
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: Mouse area

le Mer 18 Nov 2015 - 13:55
Super merci à voir comme ça, ça va pas mal m'aider, et même plus, dans ce que je veux faire.
Contenu sponsorisé

Résolu Re: Mouse area

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