Forum d'entraide à la création de jeux d'aventure
 
PortailPortail  AccueilAccueil  RechercherRechercher  S'enregistrerS'enregistrer  Connexion  
-20%
Le deal à ne pas rater :
Drone Dji DJI Mini 4K (EU)
239 € 299 €
Voir le deal

 

 Boite de dialogue

Aller en bas 
+3
Billbis
paperbackwriter
Thebroch
7 participants
AuteurMessage
Thebroch
Cliqueur Emérite
Cliqueur Emérite
Thebroch


Nombre de messages : 603

Age : 24

Localisation : Lorient

Date d'inscription : 23/07/2015


Boite de dialogue Empty
MessageSujet: Boite de dialogue   Boite de dialogue EmptyMar 25 Aoû 2015 - 12:55

Bonjour j'ai quelques questions sur les boites de dialogue :
je tient a presiser que je parle bien de cette boite la : Boite de dialogue Post10
1-comment bloquer la souris durant le dialogue 
2-comment personnalisé cette boite (graphisme police )
voila merci

_________________
Le café au bois ça consiste à moudre une cafetière et à la mettre dans des copeaux de bois.
Revenir en haut Aller en bas
paperbackwriter
Adepte de la Grande Tasse Bleue
Adepte de la Grande Tasse Bleue
paperbackwriter


Nombre de messages : 51

Date d'inscription : 19/08/2015


Boite de dialogue Empty
MessageSujet: Re: Boite de dialogue   Boite de dialogue EmptyMar 25 Aoû 2015 - 13:07

Hello,
désolé ce n'est pas une réponse à ta question, c'est juste pour améliorer ton jeu!
met plutot

"Mon Spitfire S'est écrasé, je ne repartirAI pas avec.. "

Sinon sympa le scénario et les graphismes !
Revenir en haut Aller en bas
Billbis
Disciple de la Grande Tasse Bleue
Disciple de la Grande Tasse Bleue
Billbis


Nombre de messages : 1346

Date d'inscription : 10/05/2012


Boite de dialogue Empty
MessageSujet: Re: Boite de dialogue   Boite de dialogue EmptyMar 25 Aoû 2015 - 13:13

Comment tu appelle ces boites de dialogues déjà ? Avec quelle fonction ?
Pour bloquer la souris, je dirait de ne pas assigner de sprite (ou d'assigner un sprite vide) au Mouse cursors "Wait".
Pour personnaliser la boite de dialogue, il faut créer un Text Window GUI et spécifier 8 sprites de contour et un sprite de fond.

_________________
Mon petit DevBlog
Revenir en haut Aller en bas
http://nothingaboutthedog.blogspot.fr/
chefgeorges
Cliqueur Emérite
Cliqueur Emérite
chefgeorges


Nombre de messages : 502

Date d'inscription : 01/02/2008


Boite de dialogue Empty
MessageSujet: Re: Boite de dialogue   Boite de dialogue EmptyMar 25 Aoû 2015 - 15:00

Tu entends quoi exactement par "comment bloquer la souris durant le dialogue" ? sourire
Revenir en haut Aller en bas
http://instagram.com/ichefgeorges
Thebroch
Cliqueur Emérite
Cliqueur Emérite
Thebroch


Nombre de messages : 603

Age : 24

Localisation : Lorient

Date d'inscription : 23/07/2015


Boite de dialogue Empty
MessageSujet: Re: Boite de dialogue   Boite de dialogue EmptyMar 25 Aoû 2015 - 17:50

Bonjour deja merci paperbackwriter (j'ai corriger la faute au passage ) ensuite Billbis j'utilise interact et la fonction Display pour les dialogues , je n'ai pas compris ce que tu a dis a propos de la souris et pour le gui j'ai crée le Text windows gui mais après je fais quoi ?
et pour finir chefgeorges j'entend par la que quand la boite de dialogue s'ouvre la souris s’arrête qu'on puissent plus la bouger quoi .

_________________
Le café au bois ça consiste à moudre une cafetière et à la mettre dans des copeaux de bois.
Revenir en haut Aller en bas
Billbis
Disciple de la Grande Tasse Bleue
Disciple de la Grande Tasse Bleue
Billbis


Nombre de messages : 1346

Date d'inscription : 10/05/2012


Boite de dialogue Empty
MessageSujet: Re: Boite de dialogue   Boite de dialogue EmptyMar 25 Aoû 2015 - 18:11

General Setting -> Text output -> Custom-text window GUI -> numéro de ton GUI sourire
Pour le sprite du curseur Wait: Explore project -> Mouse cursors-> 7: wait -> Image -> 0

_________________
Mon petit DevBlog
Revenir en haut Aller en bas
http://nothingaboutthedog.blogspot.fr/
Thebroch
Cliqueur Emérite
Cliqueur Emérite
Thebroch


Nombre de messages : 603

Age : 24

Localisation : Lorient

Date d'inscription : 23/07/2015


Boite de dialogue Empty
MessageSujet: Re: Boite de dialogue   Boite de dialogue EmptyMar 25 Aoû 2015 - 19:52

Merci Billbis j'ai quasiment compris en fait c'est bon  j'ai modifier le GUI mais voila j'arrive pas a le perssonalisé en jeu sa me donne sa : 
Boite de dialogue Post10

et pour le curseur je vois pas comment sa bloque mon curseur ?

_________________
Le café au bois ça consiste à moudre une cafetière et à la mettre dans des copeaux de bois.
Revenir en haut Aller en bas
Shai-la
Ouvrière en Chef de la Grande Tasse Bleue
Ouvrière en Chef de la Grande Tasse Bleue
Shai-la


Nombre de messages : 6018

Age : 46

Localisation : Montpellier

Date d'inscription : 17/04/2006


Boite de dialogue Empty
MessageSujet: Re: Boite de dialogue   Boite de dialogue EmptyMar 25 Aoû 2015 - 20:58

En fait ça ne le bloque pas, ça le rend invisible sourire
Revenir en haut Aller en bas
http://marionpoinsot.fr/video
Thebroch
Cliqueur Emérite
Cliqueur Emérite
Thebroch


Nombre de messages : 603

Age : 24

Localisation : Lorient

Date d'inscription : 23/07/2015


Boite de dialogue Empty
MessageSujet: Re: Boite de dialogue   Boite de dialogue EmptyMar 25 Aoû 2015 - 21:20

ha mais tout s'explique x)

_________________
Le café au bois ça consiste à moudre une cafetière et à la mettre dans des copeaux de bois.
Revenir en haut Aller en bas
Kitai
Délégué de la tasse bleue
Délégué de la tasse bleue
Kitai


Nombre de messages : 2907

Date d'inscription : 01/08/2006


Boite de dialogue Empty
MessageSujet: Re: Boite de dialogue   Boite de dialogue EmptyMar 25 Aoû 2015 - 21:36

Si tu veux le laisser visible mais le bloquer, c'est possible aussi.
Il suffit d'avoir une variable booléenne globale, mettons bloqueCurseur que tu règles initialement sur false, puis que tu passes sur true aussi longtemps que tu veux bloquer le curseur et que tu remets sur false lorsque tu as fini de le bloquer. Ensuite tu ajoutes ce code dans un fichier de script général
Code:
int bloqueCurseurX, bloqueCurseurY;
function repeatedly_execute_always() {
  if (bloqueCurseur) {
    if (bloqueCurseurX < 0) {
      bloqueCurseurX = mouse.x;
      bloqueCurseurY = mouse.y;
    }
    mouse.SetPosition(bloqueCurseurX, bloqueCurseurY);
  }
  else if (bloqueCurseurX >= 0) bloqueCurseurX = -1;
}

_________________
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 !
Revenir en haut Aller en bas
http://admin.no.uchi.free.fr/dokuwiki-2008-05-05/doku.php
Thebroch
Cliqueur Emérite
Cliqueur Emérite
Thebroch


Nombre de messages : 603

Age : 24

Localisation : Lorient

Date d'inscription : 23/07/2015


Boite de dialogue Empty
MessageSujet: Re: Boite de dialogue   Boite de dialogue EmptyVen 4 Sep 2015 - 18:10

Excuse moi Kitai mais pour etre franc le débutant que je suis n'a rien compris a ton message si tu pouvais expliqué plus simplement stp ? ^^

_________________
Le café au bois ça consiste à moudre une cafetière et à la mettre dans des copeaux de bois.
Revenir en haut Aller en bas
Kitai
Délégué de la tasse bleue
Délégué de la tasse bleue
Kitai


Nombre de messages : 2907

Date d'inscription : 01/08/2006


Boite de dialogue Empty
MessageSujet: Re: Boite de dialogue   Boite de dialogue EmptyVen 4 Sep 2015 - 19:09

Alors l'idée c'est que tu voudras, à certains moments dans ton jeu, empêcher le curseur de bouger, mais lui permettre de bouger à d'autres moments. Il te faut donc un interrupteur pour régler soit sur "peut bouger" soit sur "fixe". C'est ce que je te propose de faire en créant une variable globale. Lorsque cette variable vaudra true, ça voudra dire que l'interrupteur est sur "fixe", lorsque cette variable vaudra false, ça voudra dire que l'interrupteur est sur "peut bouger". C'est à toi de changer la valeur de la variable lorsque tu veux changer le comportement de la souris.

Pour que tu puisses utiliser cette variable de cette façon cependant, tu dois ajouter du code dans le Script Global. C'est le code que je t'ai donné dans le message précédent, et que je recopie ici avec des explications (même si tu n'as pas fondamentalement besoin de comprendre ce code pour utiliser la variable comme je l'ai décrit). Je suppose que tu auras nommé la variable que tu as créée bloqueCurseur.

Code:
// Ces variables vont garder en mémoire la position du curseur
// On mettra bloqueCurseurX à -1 chaque fois que les anciennes coordonnées seront obsolètes
int bloqueCurseurX = -1, bloqueCurseurY;

// Cette fonction s'exécute à chaque cycle de jeu (même pendant les pauses), environ tous les quarantièmes de seconde
function repeatedly_execute_always() {
  // Si la valeur de 'bloqueCurseur' vaut 'true' (j'ai omis "== true" qui est optionnel)
  if (bloqueCurseur) {
    // Et si la valeur de 'bloqueCurseurX' est inférieure à 0
    if (bloqueCurseurX < 0) {
      // On met à jour bloqueCurseurX/Y avec les coordonnées actuelles de la souris
      bloqueCurseurX = mouse.x;
      bloqueCurseurY = mouse.y;
    }
    // Dans tous les cas, on remet le curseur aux coordonnées (bloqueCurseurX, bloqueCurseurY)
    mouse.SetPosition(bloqueCurseurX, bloqueCurseurY);
  }
  // Sinon, si 'bloqueCurseur' vaut 'false'
  // et si bloqueCurseurX est supérieure à -1,
  // alors les coordonnées mémorisées seront obsolète quand on réactivera,
  // ce qu'on signale en passant 'bloqueCurseur' à -1 (cf. plus haut)
  else if (bloqueCurseurX > -1) bloqueCurseurX = -1;
}

Après il te suffit d'activer l'interrupteur au moment opportun, avec les commandes
Code:
bloqueCurseur = true;
et
Code:
bloqueCurseur = false;
C'est-à-dire dans ton cas respectivement juste avant et juste après les commandes Say/Display.

_________________
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 !
Revenir en haut Aller en bas
http://admin.no.uchi.free.fr/dokuwiki-2008-05-05/doku.php
Thebroch
Cliqueur Emérite
Cliqueur Emérite
Thebroch


Nombre de messages : 603

Age : 24

Localisation : Lorient

Date d'inscription : 23/07/2015


Boite de dialogue Empty
MessageSujet: Re: Boite de dialogue   Boite de dialogue EmptySam 5 Sep 2015 - 14:48

Bonjour , alors j'ai fais suivie ta démarche mais j'ai encore du mal avec la commande bloqueCurseur = false;  donc voila j'ai fais ce script , c'est correct ? (j'en doute pas parce que sa fonctionne pas ^^ )
Code:
function hHotspot1_AnyClick()
{
bloqueCurseur = true; 
Display("Mon SpitFire c'est ecrase , je ne repartirai pas avec ...");
bloqueCurseur = false; 
}

_________________
Le café au bois ça consiste à moudre une cafetière et à la mettre dans des copeaux de bois.
Revenir en haut Aller en bas
Kitai
Délégué de la tasse bleue
Délégué de la tasse bleue
Kitai


Nombre de messages : 2907

Date d'inscription : 01/08/2006


Boite de dialogue Empty
MessageSujet: Re: Boite de dialogue   Boite de dialogue EmptySam 5 Sep 2015 - 17:35

Malheureusement il semble que la fonction SetPosition ne fonctionne pas dans repeatedly_execute_always (fonction non bloquante ?). Du coup je vois pas trop comment faire pour contourner ce problème, désolé.

_________________
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 !
Revenir en haut Aller en bas
http://admin.no.uchi.free.fr/dokuwiki-2008-05-05/doku.php
hanakin
Cliqueur Amateur
Cliqueur Amateur
hanakin


Nombre de messages : 492

Age : 59

Localisation : Angers

Date d'inscription : 12/09/2012


Boite de dialogue Empty
MessageSujet: Re: Boite de dialogue   Boite de dialogue EmptySam 5 Sep 2015 - 18:03

SAlut Kitai

peut etre avec la fonction

Mouse.SetBounds(int left, int top, int right, int bottom)

en definissant le rectangle left,top,right,bottom au position du rectangle du guy a condition qu'il s'affiche toujours au meme endroit c'est peut etre une idée ?

_________________
Ce qui est utile à beaucoup l'emporte sur les désirs du petit nombre. (Spock)
Boite de dialogue Sup210
Revenir en haut Aller en bas
http://dinomania.chez-alice.fr/index.htm
Kitai
Délégué de la tasse bleue
Délégué de la tasse bleue
Kitai


Nombre de messages : 2907

Date d'inscription : 01/08/2006


Boite de dialogue Empty
MessageSujet: Re: Boite de dialogue   Boite de dialogue EmptySam 5 Sep 2015 - 18:13

Mais bien sûr hanakin, très astucieux ! Et beaucoup plus propre et économique que mon usine à gaz :
Code:
mouse.SetBounds(mouse.x, mouse.y, mouse.x, mouse.y);
Display("blablabla");
mouse.SetBounds(0, 0, 320, 200);
Si tu l'utilises souvent tu préférera sûrement passer par des fonctions persos :
Code:
function Message(String texte) {
  mouse.SetBounds(mouse.x, mouse.y, mouse.x, mouse.y);
  Display(texte);
  mouse.SetBounds(0, 0, 320, 200);
}

function Dit(this Character*, String texte) {
  mouse.SetBounds(mouse.x, mouse.y, mouse.x, mouse.y);
  this.Say(texte);
  mouse.SetBounds(0, 0, 320, 200);
}

_________________
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 !
Revenir en haut Aller en bas
http://admin.no.uchi.free.fr/dokuwiki-2008-05-05/doku.php
hanakin
Cliqueur Amateur
Cliqueur Amateur
hanakin


Nombre de messages : 492

Age : 59

Localisation : Angers

Date d'inscription : 12/09/2012


Boite de dialogue Empty
MessageSujet: Re: Boite de dialogue   Boite de dialogue EmptySam 5 Sep 2015 - 18:16

Ah je suis ravi d'avoir eu une bonne idée grand sourire

_________________
Ce qui est utile à beaucoup l'emporte sur les désirs du petit nombre. (Spock)
Boite de dialogue Sup210
Revenir en haut Aller en bas
http://dinomania.chez-alice.fr/index.htm
Thebroch
Cliqueur Emérite
Cliqueur Emérite
Thebroch


Nombre de messages : 603

Age : 24

Localisation : Lorient

Date d'inscription : 23/07/2015


Boite de dialogue Empty
MessageSujet: Re: Boite de dialogue   Boite de dialogue EmptySam 5 Sep 2015 - 20:06

Merci les gars mais comment utiliser le second code ?

_________________
Le café au bois ça consiste à moudre une cafetière et à la mettre dans des copeaux de bois.
Revenir en haut Aller en bas
hanakin
Cliqueur Amateur
Cliqueur Amateur
hanakin


Nombre de messages : 492

Age : 59

Localisation : Angers

Date d'inscription : 12/09/2012


Boite de dialogue Empty
MessageSujet: Re: Boite de dialogue   Boite de dialogue EmptySam 5 Sep 2015 - 20:44

Bonjour

si j'ai bien comprit le script de kitai ces 2 fonctions sont a mettre en haut du globalscript.asc
Code:
       function Message(String texte) {
          mouse.SetBounds(mouse.x, mouse.y, mouse.x, mouse.y);
          Display(texte);
          mouse.SetBounds(0, 0, 320, 200);
        }
        
        function Dit(this Character*, String texte) {
          mouse.SetBounds(mouse.x, mouse.y, mouse.x, mouse.y);
          this.Say(texte);
          mouse.SetBounds(0, 0, 320, 200);
        }

la premiere fonction concerne la commande display et la 2eme la commande say

que tu appeles comme ceci

Message("toto tata titi");   toto tata titi etant ton texte

et la 2eme

cEgo.Dit("toto tata titi") ;

sauf erreur de ma part

Ne pas oublier dans le globalscript.ash de rajouter ces lignes

Code:
import function Dit(this Character*, String texte);
import function Message(String texte);

tu peux meme definir le rectangle ou sera bloqué la souris

Code:
mouse.SetBounds(100, 50, 200, 100);  // les coordonnées de ton rectangle de message
http://mouse.SetBounds 1er ligne

mouse.SetBounds(0, 0, 640, 480); // l'ecran complet 640X480 pour liberer la souris
http://mouse.SetBounds 2eme ligne

_________________
Ce qui est utile à beaucoup l'emporte sur les désirs du petit nombre. (Spock)
Boite de dialogue Sup210
Revenir en haut Aller en bas
http://dinomania.chez-alice.fr/index.htm
Thebroch
Cliqueur Emérite
Cliqueur Emérite
Thebroch


Nombre de messages : 603

Age : 24

Localisation : Lorient

Date d'inscription : 23/07/2015


Boite de dialogue Empty
MessageSujet: Re: Boite de dialogue   Boite de dialogue EmptyDim 6 Sep 2015 - 19:23

Bonjour , Merci hanakin sa fonctionne tres bien mais y aurais pas un moyen de bloqué le curseur a l'endroit ou on clique car j'ai fais mon curseur de tel sorte a ce que quand il passe au dessus d'une hotspot  il passe automatiquement en interact mais si on bouge la souris durant l'affichage du message le curseur reste bloqué en mode interact (si vous avez pas compris dite le je vous ferais un dessin vite fais ^^ )


PS: une autre solution serait une commande qui s’exécuterait tout les x secondes et remettrais bien le curseurs en fonction de sa position (hotspot ou pas ) et a vrai dire sa m'arrangerais sourire

_________________
Le café au bois ça consiste à moudre une cafetière et à la mettre dans des copeaux de bois.
Revenir en haut Aller en bas
Kitai
Délégué de la tasse bleue
Délégué de la tasse bleue
Kitai


Nombre de messages : 2907

Date d'inscription : 01/08/2006


Boite de dialogue Empty
MessageSujet: Re: Boite de dialogue   Boite de dialogue EmptyDim 6 Sep 2015 - 19:37

Thebroch a écrit:
mais y aurais pas un moyen de bloqué le curseur a l'endroit ou on clique
C'est précisément ce que fait le code dans les fonctions Message et Dit, avec cette ligne :
Code:
mouse.SetBounds(mouse.x, mouse.y, mouse.x, mouse.y);
L'idée c'est qu'après avoir ajouté ces fonctions dans ton global script et les avoir importées dans l'en-tête (.ash) comme l'a expliqué hanakin, tu remplaces toutes tes commandes Display par des commandes Message et toutes tes commandes Say par des commandes Dit.

_________________
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 !
Revenir en haut Aller en bas
http://admin.no.uchi.free.fr/dokuwiki-2008-05-05/doku.php
Thebroch
Cliqueur Emérite
Cliqueur Emérite
Thebroch


Nombre de messages : 603

Age : 24

Localisation : Lorient

Date d'inscription : 23/07/2015


Boite de dialogue Empty
MessageSujet: Re: Boite de dialogue   Boite de dialogue EmptyMar 8 Sep 2015 - 19:14

Merci ça fonctionne , mais j'ai pas tout a fait compris a quoi sers les commandes Message et Dit ?

_________________
Le café au bois ça consiste à moudre une cafetière et à la mettre dans des copeaux de bois.
Revenir en haut Aller en bas
hanakin
Cliqueur Amateur
Cliqueur Amateur
hanakin


Nombre de messages : 492

Age : 59

Localisation : Angers

Date d'inscription : 12/09/2012


Boite de dialogue Empty
MessageSujet: Re: Boite de dialogue   Boite de dialogue EmptyMar 8 Sep 2015 - 19:57

Elles remplacent simplement la commande display et say car sans ces nouvelle fonctions (Message et dit) tu ne pourrais bloquer ton curseur grace a Mouse.Setbounds

_________________
Ce qui est utile à beaucoup l'emporte sur les désirs du petit nombre. (Spock)
Boite de dialogue Sup210
Revenir en haut Aller en bas
http://dinomania.chez-alice.fr/index.htm
Thebroch
Cliqueur Emérite
Cliqueur Emérite
Thebroch


Nombre de messages : 603

Age : 24

Localisation : Lorient

Date d'inscription : 23/07/2015


Boite de dialogue Empty
MessageSujet: Re: Boite de dialogue   Boite de dialogue EmptyMer 9 Sep 2015 - 11:13

J'ai pas mis le code mais pourtant sa fonctionne c'est bizarre

_________________
Le café au bois ça consiste à moudre une cafetière et à la mettre dans des copeaux de bois.
Revenir en haut Aller en bas
Contenu sponsorisé





Boite de dialogue Empty
MessageSujet: Re: Boite de dialogue   Boite de dialogue Empty

Revenir en haut Aller en bas
 
Boite de dialogue
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Dialogue ( resolu )
» Question dialogue
» Une variable = ID d'un Dialogue ?
» Apres un dialogue?
» Dialogue avec le son

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: