| [Résolu] Over object ? ou pas ? | |
|
|
Auteur | Message |
---|
Crazy Legs Grand Cliqueur Royal
Nombre de messages : 1513
Age : 31
Localisation : La Rochelle
Date d'inscription : 09/01/2008
| Sujet: [Résolu] Over object ? ou pas ? Mer 29 Oct 2008 - 0:15 | |
| Arf une autre question et cette fois j'ai regardé dans le manuel... On peut définir une action quand on pointe la souris sur un hotpot. Peut-on définir une action quand on pointe la souris sur un objet ? Ça serait bizarre de ne pas pouvoir... Si la réponse est tout simple c'est que je suis fatigué je pense :lol!: :cyclops: _________________ VOUS POURREZ BIENTÔT RÉAPPRENDRE À UTILISER AGS SUR LE SITE DU ZÉRO ! Le tuto est actuellement en refonte totale activement depuis le 20 juillet, prochaine sortie en août ou septembre si tout se passe bien.
Dernière édition par Crazy Legs le Ven 7 Nov 2008 - 9:36, édité 1 fois |
|
| |
Kitai Délégué de la tasse bleue
Nombre de messages : 2907
Date d'inscription : 01/08/2006
| Sujet: Re: [Résolu] Over object ? ou pas ? Mer 29 Oct 2008 - 1:14 | |
| Alors si j'ai bien compris tu veux exécuter une commande dès que la souris survole un objet, c'est ça ? J'ai donné un bout de code qui permet ça dans ce topic (avant-dernier message). Pour avoir l'objet en particulier, utilise la fonction Object.GetAtScreenXY(mouse.x, mouse.y). _________________ 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 ! |
|
| |
Shai-la Ouvrière en Chef de la Grande Tasse Bleue
Nombre de messages : 6018
Age : 46
Localisation : Montpellier
Date d'inscription : 17/04/2006
| Sujet: Re: [Résolu] Over object ? ou pas ? Mer 29 Oct 2008 - 7:32 | |
| Sinon, tu peux aussi tricher et tracer un hotspot juste derrière l'objet, et rendre l'objet non-clickable, ainsi tu programmes l'action dans les commandes du hotspot et non de l'objet :ihih: |
|
| |
Crazy Legs Grand Cliqueur Royal
Nombre de messages : 1513
Age : 31
Localisation : La Rochelle
Date d'inscription : 09/01/2008
| Sujet: Re: [Résolu] Over object ? ou pas ? Mer 29 Oct 2008 - 13:38 | |
| Ra dommage je pensais qu'AGS en avait mis c'est dommage. Donc je vais faire mon code avec celui de Kitai (que je remercie encore ) Shai : Ça aurait été ma seule solution mais avec 19 objects et donc + de 19 hotpsot, j'en aurai eu du boulot :surprise: . :cyclops: _________________ VOUS POURREZ BIENTÔT RÉAPPRENDRE À UTILISER AGS SUR LE SITE DU ZÉRO ! Le tuto est actuellement en refonte totale activement depuis le 20 juillet, prochaine sortie en août ou septembre si tout se passe bien. |
|
| |
Crazy Legs Grand Cliqueur Royal
Nombre de messages : 1513
Age : 31
Localisation : La Rochelle
Date d'inscription : 09/01/2008
| Sujet: Re: [Résolu] Over object ? ou pas ? Mer 29 Oct 2008 - 13:58 | |
| Bon je comprends ton script mais il ne connais pas la commande IsMouseOver... Et je dois bien avouer que moi non plus Est-ce que c'est dû à la version du logiciel ? :cyclops: _________________ VOUS POURREZ BIENTÔT RÉAPPRENDRE À UTILISER AGS SUR LE SITE DU ZÉRO ! Le tuto est actuellement en refonte totale activement depuis le 20 juillet, prochaine sortie en août ou septembre si tout se passe bien. |
|
| |
Kitai Délégué de la tasse bleue
Nombre de messages : 2907
Date d'inscription : 01/08/2006
| Sujet: Re: [Résolu] Over object ? ou pas ? Mer 29 Oct 2008 - 16:34 | |
| Il n'y est pas censé y avoir de commande IsMouseOver, c'est une variable de type LocationType.
Je ne me souviens plus si j'ai testé ou non ce code (j'en ai fait plusieurs versions), mais la non-reconnaissance empêche-t-elle de compiler ?
Tes commandes sont à placer dans la fonction MouseGetsOn dans la condition if (over == eLocationObject), puis tu mets un if (Object.GetAtScreenXY(mouse.x, mouse.y) == oTonObjet) et le tour est joué... _________________ 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 ! |
|
| |
Crazy Legs Grand Cliqueur Royal
Nombre de messages : 1513
Age : 31
Localisation : La Rochelle
Date d'inscription : 09/01/2008
| Sujet: Re: [Résolu] Over object ? ou pas ? Mer 29 Oct 2008 - 16:57 | |
| J'ai enlevé le script et maintenant toutes les autres commandes IsMouseOver sont désormais Undefined donc ça foire la compilation. Je pense avoir trop supprimé de chose dans le Global script. Je vais voir ce que je peux faire mais c'est peu probable que j'ai supprimer la commande source de IsMouseOver... :cyclops: EDIT = Fausse alerte j'ai oublié que j'avais aussi rajouté du code dans le repetidly exucute mais par contre AGS ne veut pas entendre parler d'un quelconque IsMouseOver. J'ai ptete oublier quelque chose : Dans le Global Script j'entre ceci : - Code:
-
function MouseGetsOn(LocationType over) { // Cette fonction va se déclencher (une seule fois) dès // que le curseur arrive sur un objet, un personnage // ou un hotspot. IsMouseOver = over; if (over == eLocationObject) { }
if (over == eLocationCharacter) { // Comme pour eMouseOverObject, mais cette fois // pour les personnages. }
} Dans le repetidly_execute j'ai mis ça : - Code:
-
LocationType over = GetLocationType(mouse.x, mouse.y); if (over == eLocationNothing) { if (IsMouseOver != eLocationNothing) MouseGetsOff(IsMouseOver); } else if (IsMouseOver == eLocationNothing) MouseGetsOn(over); _________________ VOUS POURREZ BIENTÔT RÉAPPRENDRE À UTILISER AGS SUR LE SITE DU ZÉRO ! Le tuto est actuellement en refonte totale activement depuis le 20 juillet, prochaine sortie en août ou septembre si tout se passe bien. |
|
| |
Kitai Délégué de la tasse bleue
Nombre de messages : 2907
Date d'inscription : 01/08/2006
| Sujet: Re: [Résolu] Over object ? ou pas ? Dim 2 Nov 2008 - 17:52 | |
| Okay. Dans le code que je t'ai proposé, il a la ligne LocationType IsMouseOver = eLocationNothing; juste au-dessus de la définition de la fonction MouseGetsOn. Cette définition de variable est essentielle au bon fonctionnement de la chose, puisque sans elle on ne peut pas faire référence à IsMouseOver, et c'est pour cela que AGS ne veut pas en entendre parler. Place donc cette ligne - Code:
-
LocationType IsMouseOver = eLocationNothing; au-dessus de la ligne - Code:
-
function MouseGetsOn(LocationType over) { (tout cela se mettant de préférence en haut du global script) Si tu décides de ne pas utiliser de fonction MouseGetsOff, remplace dans le repeatedly_execute la commande MouseGetsOff(IsMouseOver); (après le "if") par IsMouseOver = eLocationNothing; (commande qui est normalement contenue dans la fonction MouseGetsOff). Voilà, comme ça ça devrait marcher Bon courage ! _________________ 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 ! |
|
| |
Crazy Legs Grand Cliqueur Royal
Nombre de messages : 1513
Age : 31
Localisation : La Rochelle
Date d'inscription : 09/01/2008
| Sujet: Re: [Résolu] Over object ? ou pas ? Jeu 6 Nov 2008 - 17:39 | |
| Merci bien pour ces explications, en faite je préfère te le dire tout de suite quand ma souris survolera un objet je veux juste qu'il change le curseur en mode interact (avec ma propre fonction si tu t'en rappelles ). Je te le dis comme ça tu peux éventuellement simplifier les codes :cyclops: _________________ VOUS POURREZ BIENTÔT RÉAPPRENDRE À UTILISER AGS SUR LE SITE DU ZÉRO ! Le tuto est actuellement en refonte totale activement depuis le 20 juillet, prochaine sortie en août ou septembre si tout se passe bien. |
|
| |
Kitai Délégué de la tasse bleue
Nombre de messages : 2907
Date d'inscription : 01/08/2006
| Sujet: Re: [Résolu] Over object ? ou pas ? Jeu 6 Nov 2008 - 22:49 | |
| - Crazy Legs a écrit:
- Merci bien pour ces explications, en faite je préfère te le dire tout de suite quand ma souris survolera un objet je veux juste qu'il change le curseur en mode interact (avec ma propre fonction si tu t'en rappelles ).
Bien sûr que je me souviens de cette fonction Tu peux donc faire ça avec le code que je t'ai proposé, et à part quelques if en plus ou en moins, je vois pas vraiment comment faire plus simple (au final ce que je t'ai proposé fait qu'une dizaine de lignes là, si tu entres pas la fonction MouseGetsOff). Dans MouseGetsOn, un petit if (over == eLocationObject) mouse.ChangeCurseur(eModeInteract); et le tour est joué, normalement. - Crazy Legs a écrit:
- Je te le dis comme ça tu peux éventuellement simplifier les codes
Et pourquoi pas essayer de le faire toi-même ? Allez, bonne continuation _________________ 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 ! |
|
| |
Crazy Legs Grand Cliqueur Royal
Nombre de messages : 1513
Age : 31
Localisation : La Rochelle
Date d'inscription : 09/01/2008
| Sujet: Re: [Résolu] Over object ? ou pas ? Ven 7 Nov 2008 - 9:36 | |
| C'est déjà fait Merci pour ton aide. :cyclops: _________________ VOUS POURREZ BIENTÔT RÉAPPRENDRE À UTILISER AGS SUR LE SITE DU ZÉRO ! Le tuto est actuellement en refonte totale activement depuis le 20 juillet, prochaine sortie en août ou septembre si tout se passe bien. |
|
| |
Contenu sponsorisé
| Sujet: Re: [Résolu] Over object ? ou pas ? | |
| |
|
| |
| [Résolu] Over object ? ou pas ? | |
|