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

Partagez | 
 

 [résolu]Dialogues differents

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
adauca
Adepte de la Grande Tasse Bleue
Adepte de la Grande Tasse Bleue


Nombre de messages : 133

Age : 34

Localisation : Strasbourg

Date d'inscription : 10/02/2014


MessageSujet: [résolu]Dialogues differents   Sam 5 Mar 2016 - 19:21

Hello tout le monde,

nouveau petit problème concernant des dialogues.

Je dois aller parler à un personnage dans une pièce et il doit avoir trois réactions:
1) Si j'y vais sans rien faire dans le jeu (sans activer ce qu'il faut) il parlera est lancera mon dialogue 1.
2) Si je lui rend visite après avoir récupérer un devis et que je lui donne, il dira autre chose et je lui répondrais.
3) Une fois le personnage en possession du devis, si je lui parle à nouveau, j'aimerai lancer un autre dialogue (le 2) et non pas utiliser un énième booléen pour débloquer des lignes de dialogues.

Voilà mon code:
Code:
function cSteph_Talk()
{
cNico.Walk(518, 780, eBlock, eWalkableAreas);
cNico.LockViewAligned(1, 2, eAlignCentre);
cSteph.Animate(1, 5, eOnce);
if (devisDonne == true && cNico.HasInventory(iDevis) == false){
  cNico.Say("T'as vu, le devis est posé là, hun!");
  dDialSteph02.Start();
 StopDialog();
}
  if (cNico.HasInventory(iDevis)){
  dDialSteph01.Start(); //pas obligatoire mais pour vous montrer que c'est bien le dialogue 1
dDialSteph01.SetOptionState(1, eOptionOffForever);
dDialSteph01.SetOptionState(2, eOptionOn);
}
else dDialSteph01.Start();
}

Tout fonctionne mais le problème c'est que quoi qu'il arrive, mon dialogue 1 se répète toujours... Y t-il une fonction pour le désactiver complètement?

_________________
Une agence de publicité, c'est 85 % de confusion et 15 % de commission.


Dernière édition par adauca le Sam 5 Mar 2016 - 23:16, édité 1 fois
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://www.mad-day.fr
adauca
Adepte de la Grande Tasse Bleue
Adepte de la Grande Tasse Bleue


Nombre de messages : 133

Age : 34

Localisation : Strasbourg

Date d'inscription : 10/02/2014


MessageSujet: Re: [résolu]Dialogues differents   Sam 5 Mar 2016 - 23:15

Bon et bien j'ai trouvé mon erreur était dans l'ordre de script.

Voilà avec cet ordre tout fonctionne normalement!
Code:
function cSteph_Talk()
{
cNico.Walk(518, 780, eBlock, eWalkableAreas);
cNico.LockViewAligned(1, 2, eAlignCentre);
cSteph.Animate(1, 5, eOnce);
if (devisDonne == true && cNico.HasInventory(iDevis) == false){
  cNico.Say("Humm!");
  dDialSteph02.Start();
}
else dDialSteph01.Start();

if (cNico.HasInventory(iDevis)){
dDialSteph01.SetOptionState(1, eOptionOffForever);
dDialSteph01.SetOptionState(2, eOptionOn);
StopDialog();
}
}

_________________
Une agence de publicité, c'est 85 % de confusion et 15 % de commission.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://www.mad-day.fr
Kitai
Délégué de la tasse bleue
Délégué de la tasse bleue


Nombre de messages : 2430

Date d'inscription : 01/08/2006


MessageSujet: Re: [résolu]Dialogues differents   Dim 6 Mar 2016 - 1:13

À vrai dire je pense que le code suivant correspond davantage à ce que tu recherches :
Code:
cNico.LockViewAligned(1, 2, eAlignCentre);
cSteph.Animate(1, 5, eOnce);
// Si on a donné le devis
if (devisDonne == true && cNico.HasInventory(iDevis) == false) {
  cNico.Say("T'as vu, le devis est posé là, hun!");
  dDialSteph02.Start();
}
// Sinon (c-à-d on n'a pas donné le devis), si on possède le devis
else if (cNico.HasInventory(iDevis)) {
  dDialSteph01.SetOptionState(1, eOptionOffForever);
  dDialSteph01.SetOptionState(2, eOptionOn);
}
// Sinon (c-à-d on n'a pas donné le devis et on ne le possède pas)
else
  dDialSteph01.Start();

Avec le deuxième code que tu as posté, le dialogue 1 se déclenchera même si le joueur possède le devis, mais ce n'est pas ce que tu veux d'après ce que tu décris comme réaction 2 dans ton premier message :
adauca a écrit:
2) Si je lui rend visite après avoir récupérer un devis et que je lui donne, il dira autre chose et je lui répondrais.

PS : La fonction StopDialog n'a aucun utilité hors de la fonction dialog_request (cf. la page d'aide).

_________________
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
Voir le profil de l'utilisateur http://admin.no.uchi.free.fr/dokuwiki-2008-05-05/doku.php
adauca
Adepte de la Grande Tasse Bleue
Adepte de la Grande Tasse Bleue


Nombre de messages : 133

Age : 34

Localisation : Strasbourg

Date d'inscription : 10/02/2014


MessageSujet: Re: [résolu]Dialogues differents   Dim 6 Mar 2016 - 1:51

Aaaah, Superman; je t'attendais lol
Merci pour ce code "propre". Je suppose qu'il risque moins de me créer une erreur écrit comme ça (voir pas du tout).

Bien que ça fonctionne comme j'ai écris je savais que c'était du bidouillage...
J'ai encore du mal à bien comprendre l'ordre des choses mais ça viendra, entre autre, grâce à ton aide.

Par contre j'ai tout de même du rajouter cette ligne entre else if et dDialSteph01.SetOptionState(...)
Code:
dDialSteph01.Start();
Car sinon, mon personnage reste sans bouger entrain de regarder mon héro comme un tebé...

Merci en tout cas, c'est un très bon exercice pour moi d'autant plus que je dois utiliser ce même schéma pour un autre personnage donc je vais tester si j'ai tout bien compris.

_________________
Une agence de publicité, c'est 85 % de confusion et 15 % de commission.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://www.mad-day.fr
Kitai
Délégué de la tasse bleue
Délégué de la tasse bleue


Nombre de messages : 2430

Date d'inscription : 01/08/2006


MessageSujet: Re: [résolu]Dialogues differents   Dim 6 Mar 2016 - 4:43

Mais je comprends pas, tu lances le dialogue 1 aussi bien lorsqu'on vient voir Steph au début sans le devis que lorsqu'on vient le voir avec le devis (pour lui donner) ?

_________________
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
Voir le profil de l'utilisateur http://admin.no.uchi.free.fr/dokuwiki-2008-05-05/doku.php
adauca
Adepte de la Grande Tasse Bleue
Adepte de la Grande Tasse Bleue


Nombre de messages : 133

Age : 34

Localisation : Strasbourg

Date d'inscription : 10/02/2014


MessageSujet: Re: [résolu]Dialogues differents   Dim 6 Mar 2016 - 14:47

Oui tout à fait, mais sans cette ligne, c'est juste lorsque je donne le devis qu'il commence la conversation que je veux et pas quand je viens lui parler simplement.
Bizarre mais bon, à la limite? Est-ce vraiment grave?

_________________
Une agence de publicité, c'est 85 % de confusion et 15 % de commission.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://www.mad-day.fr
Contenu sponsorisé




MessageSujet: Re: [résolu]Dialogues differents   Aujourd'hui à 19:52

Revenir en haut Aller en bas
 
[résolu]Dialogues differents
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» [Résolu] Probleme patch fr 1.5 pas traduit les dialogues
» [Résolu] messages et dialogues dans un GUi
» [Débat] Les clans des differents protagonistes de Hero factory
» [RÉSOLU]Lapin capricieux n'aime pas orange
» LES TEXTES ET LES DIALOGUES

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: