AccueilAccueil  FAQFAQ  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  Connexion  
Le Deal du moment :
Cdiscount : -30€ dès 300€ ...
Voir le deal

 

 mouse_check_area

Aller en bas 
5 participants
AuteurMessage
Asu
Utilisateur confirmé: Rang ****
Asu


Messages : 895

mouse_check_area Empty
MessageSujet: mouse_check_area   mouse_check_area EmptyLun 19 Aoû 2013 - 16: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
GrandeLangue


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

mouse_check_area Empty
MessageSujet: Re: mouse_check_area   mouse_check_area EmptyLun 19 Aoû 2013 - 16: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 : https://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 ***
SPLN


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)

mouse_check_area Empty
MessageSujet: Re: mouse_check_area   mouse_check_area EmptyLun 19 Aoû 2013 - 17: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 mouse_check_area Gmq4 in the GM Quiz!
Revenir en haut Aller en bas
http://sp-lecteur-multimedia.skyrock.com/
Térence
Utilisateur confirmé: Rang *****
Térence


Messages : 2213
Localisation : Oui

mouse_check_area Empty
MessageSujet: Re: mouse_check_area   mouse_check_area EmptyLun 19 Aoû 2013 - 17: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
[TheDarkTiger]


Messages : 7420
Localisation : Essonne

mouse_check_area Empty
MessageSujet: Re: mouse_check_area   mouse_check_area EmptyVen 23 Aoû 2013 - 2: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 ^^
mouse_check_area U3dfr2mouse_check_area Sign l'antique
Bienvenue au 2630eme utilisateur : Mike Kennedy !
Revenir en haut Aller en bas
http://www.tdms.fr
Contenu sponsorisé





mouse_check_area Empty
MessageSujet: Re: mouse_check_area   mouse_check_area Empty

Revenir en haut Aller en bas
 
mouse_check_area
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: