Forum d'entraide à la création de jeux d'aventure
 
PortailAccueilFAQRechercherS'enregistrerMembresConnexion

Partagez | 
 

 Aide verbes roues d'action

Aller en bas 
AuteurMessage
jeanini
C'est quoi la Tasse Bleue ?
C'est quoi la Tasse Bleue ?
avatar

Nombre de messages : 32

Age : 29

Localisation : Paris

Date d'inscription : 12/05/2017


MessageSujet: Aide verbes roues d'action   Mer 21 Nov 2018 - 19:31

Bonsoir à tous,

Voila je travail actuellement sur un PnC qui utilisera une roue d'action lors que l'on click sur un Hotspot (image en illustration): http://image.noelshack.com/fichiers/2018/47/3/1542828675-gui-exemple.png

L'idée est que lorsque l'on fait click droit sur le hotspot, la roue d'actions s'ouvre (jusque la pas de soucis) et ensuite le joueur click sur l'action qu'il souhaite utiliser et c'est a ce moment la que je bloque. En effet je suis repartis d'un template "classique" de maniac mansion ou l'on vient clicker sur le verbe puis le hotspot en utilisant l'event OnClick par défaut. Et je bloque à cette endroit là. Je peu envoyer mon projet si quelqu'un veut bien le regarder ou alors me donner des petits tuyaux.

merci par avance,
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
valoulef
Délégué de la tasse bleue
Délégué de la tasse bleue
avatar

Nombre de messages : 1546

Age : 29

Localisation : Condate

Date d'inscription : 01/08/2011


MessageSujet: Re: Aide verbes roues d'action   Mer 21 Nov 2018 - 23:59

Bonsoir @jeanini.

Pour le coup je pense que le template risque de plus te compliquer la vie qu'autre chose. Tu as déjà bien avancé dans ton projet ? Si tu n'en es qu'au début je pense que ça pourrait être utile de partir d'un Empty Game, mais bon il y a toujours moyen de bricoler.

Si tu m'envoies ton projet avec une room, des hotspots et la roue en question je veux bien me pencher sur le problème, par contre je ne te promets pas d'avoir le temps de regarder demain.

Est-ce que les types actions possibles seront les mêmes pour chaque hotspot ou il y aura des variantes ? Par exemple un hotspot avec lequel on pourrait parler, mais que ce ne soit pas le cas pour un autre... Ou peut-être que ça dépendra du type d'éléments, par exemple que les actions possibles changent selon si on clique sur un hotspot, un objet ou un personnage ?

_________________
"Je ne suis point cet assemblage de membres que l’on appelle le corps humain ; je ne suis point un air délié et pénétrant répandu dans tous ces membres ; je ne suis point un vent, un souffle, une vapeur, ni rien de tout ce que je puis feindre et m’imaginer, puisque j’ai supposé que tout cela n’était rien, et que, sans changer cette supposition, je trouve que je ne laisse pas d’être certain que je suis quelque chose."

René Descartes
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
jeanini
C'est quoi la Tasse Bleue ?
C'est quoi la Tasse Bleue ?
avatar

Nombre de messages : 32

Age : 29

Localisation : Paris

Date d'inscription : 12/05/2017


MessageSujet: Re: Aide verbes roues d'action   Jeu 22 Nov 2018 - 8:32

Salut, pour le moment ce n'est qu'un prototype. Il y a juste une room avec 2/3 hotspot.
Dans l'idée c'est d'avoir les mêmes verbes pour tout les hotspot. Pas d'éléments spécifiques par objet.
Je te mets le liens vers le projet et les quelques ressources (la roue d'action et les verbes).

https://drive.google.com/file/d/1nRK6NztE4KhVXnQN6UeyWvD-KyMd0cdf/view?usp=drivesdk

Merci pour ton aide sourire
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
valoulef
Délégué de la tasse bleue
Délégué de la tasse bleue
avatar

Nombre de messages : 1546

Age : 29

Localisation : Condate

Date d'inscription : 01/08/2011


MessageSujet: Re: Aide verbes roues d'action   Sam 24 Nov 2018 - 17:54

Désolé pour l'attente.

Voici une solution pour afficher la roue d'actions à l'endroit où le joueur cliquera et pour faire fonctionner les différentes options. Pour plus de facilité, je suis reparti d'un template Empty game, mais libre à toi d'adapter la solution au template que tu utilise actuellement si jamais ça t'es utile (a priori je te le déconseille mais on ne sait jamais si tu en as besoin pour autre chose). Tu peux exporter/importer ta room et tes GUIs pour éviter d'avoir à tout refaire si tu repars de zéro.

J'ai commencé par créer deux variables globales afin de mémoriser les coordonnées de la souris au moment du clic (tu peux aussi les déclarer en haut du Global_script) :


Ensuite, programmons l'affichage du GUI :
Code:
function on_mouse_click(MouseButton button) // called when a mouse button is clicked. button is either LEFT or RIGHT
{
  if (IsGamePaused() == 1) // Game is paused, so do nothing (ie. don't allow mouse click)
  {
  }
  else if (button == eMouseLeft)
  {
    if ((GetLocationType(mouse.x, mouse.y) == eLocationHotspot) || (GetLocationType(mouse.x, mouse.y) == eLocationCharacter) || (GetLocationType(mouse.x, mouse.y) == eLocationObject)){
      //Coordonnées maximales auxquelles afficher la roue (Taille de l'écran - Taille de l'interface):
      int RoueXmax = System.ScreenWidth - gActionWheel.Width;
      int RoueYmax = System.ScreenHeight - gActionWheel.Height;
      //On note les cordonnées du curseurs pour les récupérer plus tard :
      curseurX = mouse.x;
      curseurY = mouse.y;
      //On centre la roue aux coordonnées actuelles du curseur :
      gActionWheel.X = curseurX - gActionWheel.Width/2;
      gActionWheel.Y = curseurY - gActionWheel.Height/2;
      //On fait en sorte que les bords de la roue ne sortent pas de l'écran, en les repositionnant si besoin :
      if (gActionWheel.X < 0) gActionWheel.X = 0;
      if (gActionWheel.Y < 0) gActionWheel.Y = 0;
      if (gActionWheel.X > RoueXmax) gActionWheel.X = RoueXmax;
      if (gActionWheel.Y > RoueYmax) gActionWheel.Y = RoueYmax;
      gActionWheel.Visible = true; //On affiche enfin avec les paramêtres définis précédemment.
    }
    else Room.ProcessClick(mouse.x,mouse.y, mouse.Mode);
  }

Note : Ici j'utilise le bouton gauche à la fois pour afficher la roue et pour le déplacement. Tu avais initialement parlé d'afficher la roue avec le clic droit, dans ce cas tu peux plutôt associer le code concerné au clic droit (quitte à te faire mal voir par @Kitai langue ), et c'est alors possible de l'afficher n'importe où, sans vérifier préalablement qu'on survole un élément significatif. Je te laisse adapter ceci à ta guise.

Il reste à déterminer ce qu'il se passe lorsqu'on clique sur les boutons de la roue (j'ai laissé les noms des boutons tel que tu les as définis jusqu'à maintenant) :
Code:
function bQuit_OnClick(GUIControl *control, MouseButton button)
{
  gActionWheel.Visible = false;
}

function Button5_OnClick(GUIControl *control, MouseButton button)
{
  gActionWheel.Visible = false;
  Room.ProcessClick(curseurX, curseurY, eModeLookat);
}

function bUse_OnClick(GUIControl *control, MouseButton button)
{
  gActionWheel.Visible = false;
  Room.ProcessClick(curseurX, curseurY, eModeInteract);
}

Maintenant, dans ta room, plutôt que de programmer des events généraux avec AnyClick, tu peux plutôt ajouter des events LookAt et Interact, ou encore d'autres types d'events, en fonction des boutons que tu ajouteras à ta roue. Tout ce passera alors comme si le joueur avait cliqué sur le hotspot directement avec le verbe concerné.

Merci de nous tenir au courant de si cette solution et les explications te conviennent. clin d'oeil

_________________
"Je ne suis point cet assemblage de membres que l’on appelle le corps humain ; je ne suis point un air délié et pénétrant répandu dans tous ces membres ; je ne suis point un vent, un souffle, une vapeur, ni rien de tout ce que je puis feindre et m’imaginer, puisque j’ai supposé que tout cela n’était rien, et que, sans changer cette supposition, je trouve que je ne laisse pas d’être certain que je suis quelque chose."

René Descartes
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
jeanini
C'est quoi la Tasse Bleue ?
C'est quoi la Tasse Bleue ?
avatar

Nombre de messages : 32

Age : 29

Localisation : Paris

Date d'inscription : 12/05/2017


MessageSujet: Re: Aide verbes roues d'action   Ven 30 Nov 2018 - 13:36

Salut,

merci pour ton retour et ta solution fonctionne parfaitement (même avec un template déjà existant).

grand sourire
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: Aide verbes roues d'action   

Revenir en haut Aller en bas
 
Aide verbes roues d'action
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Aide pour Bolt Action
» Aide [Grammaire, orthographe & conjugaison]
» Tout pour Bolt Action !
» [Blog] j'ai besoin d'aide pour Brickshelf
» [Software] Besoin d'Aide pour Bionicle Heroes

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Adventure Games Studio fr :: CREATION DE JEUX :: Questions / Réponses-
Sauter vers: