AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  Connexion  

Partagez | 
 

 mouse_check_area

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Asu
Utilisateur confirmé: Rang ****
avatar

Messages : 895

MessageSujet: mouse_check_area   Lun 19 Aoû 2013 - 14:03

Très simple script pour les débutants qui leur permettra de vérifier si le curseur est dans une certaine zone.

Syntaxe : mouse_check_area(x1,x2,y1,y2);
Retourne : false (0) si la souris n'est pas dans la zone ou true (1) si elle l'est.

Citation :
if (mouse_x>argument0)&&(mouse_x<argument2)&&(mouse_y>argument1)&&(mouse_y<argument3)
return 1;

_________________
‎<‎Cysteine‎>‎ nON mais la touche maj s'active/se désactive toute seule
‎<‎Cysteine‎>‎ et a du mal à réponDRE QUANd j'appuie dessus
‎<‎Cysteine‎>‎ et je l'ai démont2? IL Ny a rien DEDANs
Revenir en haut Aller en bas
GrandeLangue
Bonne participation
avatar

Messages : 77
Localisation : Lille
Projet Actuel : Faire des maths

MessageSujet: Re: mouse_check_area   Lun 19 Aoû 2013 - 14:49

Ce code serait mieux :
Code:
var x_min, x_max, y_min, y_max;

if argument0 <= argument2
{
  x_min = argument0;
  x_max = argument2;
}
else
{
  x_min = argument2;
  x_max = argument0;
}

if argument1 <= argument3
{
  y_min = argument1;
  y_max = argument3;
}
else
{
  y_min = argument3;
  y_max = argument1;
}

return mouse_x >= x_min && mouse_x <= x_max && mouse_y >= y_min && mouse_y <= y_max;
Il fonctionne quelles que soit les valeurs des arguments, corrige les comparaisons strictes en larges et surtout il évite le if true {return 1} qui n'est pas très élégant.
La syntaxe est : mouse_check_area(x1, y1, x2, y2);

Ou bien si vraiment on veut condenser (en une ligne) :
Code:
return mouse_x >= min(argument0, argument2) && mouse_x <= max(argument0, argument2) && mouse_y >= min(argument1, argument3) && mouse_y <= max(argument1, argument3);

_________________
Un superbe jeu de plateforme où vous pouvez contrôler le temps ici : TimeBoy

Pour maîtriser les pistons dans Minecraft : http://www.youtube.com/MindcraftMax
Project Spark est mort, vive Project Spark ! Top 25 des créations qui ont été réalisées avec ce moteur de création de jeu depuis sa sortie, avant que les serveurs n'aient été arrêtés : https://www.youtube.com/watch?v=nPenVqIcFgc
Revenir en haut Aller en bas
SPLN
Utilisateur confirmé: Rang ***
avatar

Messages : 588
Localisation : Sur son ordinateur *vous vois* arrêtez de me regarder comme ça
Projet Actuel : En quête de projet(s)!
Mes projets:
SP Lecteur Multimedia (Stand by)
S-Portable Graphics (demo1.8 is out! demo2.0 is planned)
SSB RPG (Stand by)

MessageSujet: Re: mouse_check_area   Lun 19 Aoû 2013 - 15:14

Il existe pas déjà ce script sous le nom de mouse_rect() ? Il me semble qu'il déjà dans le section script, avec une grand guerre sur l'optimisation, n'est-ce pas onilink :vP Je crois aussi l'avoir vu sous le nom de mouse_in() mais bon, on est plus à ça près.

_________________
SP Lecteur Multimedia
I am an in the GM Quiz!
Revenir en haut Aller en bas
http://sp-lecteur-multimedia.skyrock.com/
Térence
Utilisateur confirmé: Rang *****
avatar

Messages : 2213
Localisation : Oui

MessageSujet: Re: mouse_check_area   Lun 19 Aoû 2013 - 15:18

Bah, pour un script comme ca, ca vaut pas la peine de se casser le *** à essayer de l'optimiser ; surtout que si ca se trouve, il met plus de temps à capter le gros code que le petit..... (m'enfin je dis ca mais j'en sait rien... Yum! )
C'est juste des conditions, sans appel à d'autres fonctions natives alors...

_________________
Je suis partie sur les ailes du vent et la tempête m'a ramenée.
Revenir en haut Aller en bas
[TheDarkTiger]
Modérateur
avatar

Messages : 7377
Localisation : Essonne

MessageSujet: Re: mouse_check_area   Ven 23 Aoû 2013 - 0:23

Honnêtement, j'ai été étonné.
J'utilise ce genre de code depuis belle lurette, et quand tu l'utilise pour des boutons, ça peut ramer assez vite en fait.
Après, je mettais du draw dedans aussi mais bon...

_________________
Bonne chance pour vos projets actuels ! Prêt à aider ceux qui en ont besoin ^^
l'antique http://www.membres.lycos.fr/thedarkminousite/
Bienvenue au 2521eme utilisateur : Jeijmeh_ !
Revenir en haut Aller en bas
http://www.membres.lycos.fr/thedarkminousite/
Contenu sponsorisé




MessageSujet: Re: mouse_check_area   

Revenir en haut Aller en bas
 
mouse_check_area
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Forum Le CBNA :: Développement :: Scripts GML-
Sauter vers: