| Double Click | |
|
|
Auteur | Message |
---|
Asraroth Disciple de la Grande Tasse Bleue
Nombre de messages : 1468
Age : 49
Date d'inscription : 20/10/2006
| Sujet: Double Click Jeu 5 Fév 2009 - 18:21 | |
| Voici un tout petit module qui permet de gérer le double click gauche. Avec ce module, le double-clic simule le clic en mode "UserMode2" de la souris. Il ne reste plus qu'à programmer les actions sur les évènements "UserMode2 hotspot", "UserMode2 object", etc. DblClick V1.00
Dernière édition par Asraroth le Lun 23 Mar 2009 - 12:04, édité 2 fois |
|
| |
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: Double Click Jeu 5 Fév 2009 - 18:53 | |
| Pas mal ! Ca pourra servir je pense Même si perso je préfère le clic droit au double clic |
|
| |
Asraroth Disciple de la Grande Tasse Bleue
Nombre de messages : 1468
Age : 49
Date d'inscription : 20/10/2006
| Sujet: Re: Double Click Jeu 5 Fév 2009 - 19:36 | |
| L'un n'empeche pas l'autre Et çà peut servir pour simuler l'interface LucasArt de The Dig (par exemple)... Double-clic pour changer de room + vite. |
|
| |
Kromagnon Disciple de la Grande Tasse Bleue
Nombre de messages : 1015
Age : 40
Localisation : Finistère
Date d'inscription : 19/09/2006
| Sujet: Re: Double Click Ven 6 Fév 2009 - 8:11 | |
| Bravo, il va bientôt falloir créer une section spéciale "module" au rythme où tu en conçoit! |
|
| |
Asraroth Disciple de la Grande Tasse Bleue
Nombre de messages : 1468
Age : 49
Date d'inscription : 20/10/2006
| |
| |
Kromagnon Disciple de la Grande Tasse Bleue
Nombre de messages : 1015
Age : 40
Localisation : Finistère
Date d'inscription : 19/09/2006
| Sujet: Re: Double Click Ven 6 Fév 2009 - 9:39 | |
| Je m'y attendais a celle là :rollingeyes: |
|
| |
Godzillu Grand Cliqueur Royal
Nombre de messages : 1658
Date d'inscription : 11/03/2007
| Sujet: Re: Double Click Ven 6 Fév 2009 - 11:19 | |
| - Asraroth a écrit:
- L'un n'empeche pas l'autre
Et çà peut servir pour simuler l'interface LucasArt de The Dig (par exemple)... Double-clic pour changer de room + vite. Très bon en fait je crois que je vais me servir de tout tes modules si ça continue. J'aurais plus rien à programmer (il est où le smiley doigt de pied en éventail?). |
|
| |
Asraroth Disciple de la Grande Tasse Bleue
Nombre de messages : 1468
Age : 49
Date d'inscription : 20/10/2006
| Sujet: Re: Double Click Ven 6 Fév 2009 - 11:53 | |
| Ben tant mieux si çà sert ! |
|
| |
Billbis Disciple de la Grande Tasse Bleue
Nombre de messages : 1346
Date d'inscription : 10/05/2012
| Sujet: Re: Double Click Ven 11 Mai 2012 - 18:06 | |
| Coucou. Je déterre ce topic, mais c'est pas grave car ce module est GENIAL ! Bravo Asraoth ! J'ai modifié légèrement le module pour qu'un double clic augmente la vitesse de marche (et simule la course), et un simple clic laisse la vitesse de marche normale (5 ici). Pour ceux que ça intéresse : - Code:
-
function on_mouse_click(MouseButton button) { if (IsGamePaused() != 1) { if (button == eMouseLeft) { ClaimEvent(); if (dblclick_cpt == 0) { cChar.StopMoving(); cChar.SetWalkSpeed(5, 5); dblclick_cpt = 1; dblclick_x = mouse.x; dblclick_y = mouse.y; dblclick_mm = mouse.Mode; } else { cChar.StopMoving(); dblclick_cpt = 0; cChar.SetWalkSpeed(12, 12); ProcessClick(dblclick_x, dblclick_y, dblclick_mm); } } } }
Edit: Arrrrg ! J'ai posté trop vite. Maintenant le jeu bug lorsque l'on clic pendant un déplacement (interdit de changer le WalkSpeed pendant un déplacement !). Arrrrg ! De toute façon, je voulais trouver un moyen pour interrompre les déplacements. Je vous tiens au courant (même si ça n’intéresse personne). Re-Edit: en ajoutant des cChar.StopMoving(), ça marche. J'ai corrigé le code. |
|
| |
Billbis Disciple de la Grande Tasse Bleue
Nombre de messages : 1346
Date d'inscription : 10/05/2012
| Sujet: Re: Double Click Sam 12 Mai 2012 - 14:24 | |
| J'ai rajouté une option pour que le double clic téléporte. Elle dépend d'une variable globale booléenne que je vous laisse déclarer comme des grands (elle s'appelle teleport). Je vous laisse aussi faire un bouton du GUI pour la changer. Voilà le script, donc. doubleclic100.asc - Code:
-
function on_mouse_click(MouseButton button) { if (IsGamePaused() != 1) { if (button == eMouseLeft) { ClaimEvent(); if (dblclick_cpt == 0) { cChar.StopMoving(); cChar.SetWalkSpeed(5, 5); dblclick_cpt = 1; dblclick_x = mouse.x; dblclick_y = mouse.y; dblclick_mm = mouse.Mode; } else { cChar.StopMoving(); dblclick_cpt = 0; if (teleport==true) { cChar.x = GetViewportX() + mouse.x; cChar.y = GetViewportY() + mouse.y; cChar.PlaceOnWalkableArea(); ProcessClick(dblclick_x, dblclick_y, dblclick_mm); } else { cChar.SetWalkSpeed(12, 12); ProcessClick(dblclick_x, dblclick_y, dblclick_mm); } } } } } Petit défaut, si vous doubleclikez sur un objet interactif, après le téléport, le perso (cChar ici) devra faire quelques pas si vous avez définie un WalkToPoint, mais c'est largement supportable, et ça doit être corrigeable en rajoutant un petit if. EDIT : notez que la fonction SkipUntilCharacterStops remplace avantageusement mon code de téléportation. Comme quoi, j'ai une fois de plus recodé la roue. |
|
| |
Contenu sponsorisé
| Sujet: Re: Double Click | |
| |
|
| |
| Double Click | |
|