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

Partagez | 
 

 Avoir plusieurs Speech.CustomPortraitPlacement

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
filoulefilou
Cliqueur Amateur
Cliqueur Amateur


Nombre de messages : 259

Date d'inscription : 24/05/2010


MessageSujet: Avoir plusieurs Speech.CustomPortraitPlacement    Mer 21 Mai 2014 - 18:36

Désolé , encore moi.
J'ouvre un autre topic, pour une nouvelle question et permettre une meilleure lisibilitée par la suite.

Voici mon 2eme problème.
Je voulais une manière de Speecher pour le perso principal et une autre pour tous les autres.
Alors naïvement, j'ai écrit dans function_Game Star() :

Code:

  Speech.CustomPortraitPlacement = true;
  
  if(player.Speaking){
    
  Speech.PortraitXOffset = 18;
  Speech.PortraitY = 155;
  Speech.TextAlignment = eAlignLeft;
  Game.SpeechFont = eFontFont1;}
  
  if(!player.Speaking) {
    
 Speech.PortraitXOffset = 720;
 Speech.PortraitY = 145;
 Speech.TextAlignment = eAlignLeft;
  Game.SpeechFont = eFontFont1;}

Et ça ne fonctionne pas, j'ai alors essayé de remplacer player par le vrai nom de mon personnage principal, c'est à dire cCharacter; ça ne marche pas non plus.
Aussi bien le personne avec qui je parle que Mon perso player, ils parlent tous les deux à droite (soit la 2eme option)

Une idée ?

Cordialy
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Billbis
Disciple de la Grande Tasse Bleue
Disciple de la Grande Tasse Bleue


Nombre de messages : 1275

Date d'inscription : 10/05/2012


MessageSujet: Re: Avoir plusieurs Speech.CustomPortraitPlacement    Mer 21 Mai 2014 - 19:01

Je pense qu'il faut plutôt le mettre dans un repeatidly_execute_always, mais en trouvant une astuce pour ne pas changer les coordonnées 40 fois par seconde, mais seulement lorsqu'un personnage commence à parler...

_________________
Mon petit DevBlog
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://nothingaboutthedog.blogspot.fr/
valoulef
Délégué de la tasse bleue
Délégué de la tasse bleue


Nombre de messages : 1278

Age : 27

Localisation : Condate

Date d'inscription : 01/08/2011


MessageSujet: Re: Avoir plusieurs Speech.CustomPortraitPlacement    Mer 21 Mai 2014 - 21:28

Par ailleurs je crois qu'il y a une petite erreur de syntaxe dans ton code :

Code:
 if(!player.Speaking)
ne signifie pas "Si un autre personnage que le joueur est en train de parler" mais "Si le joueur n'est pas en train de parler".

Instinctivement, je ne vois pas comment désigner tous les personnages sauf le joueur, mais je pense que d'autres te le diront mieux que moi.

_________________
"Je pense que la Terre tourne autour du soleil à une vitesse de 30 kilomètres par seconde et que je suis là, accroché à ce bolide de feu qui fonce d'un infini à un autre, accroché à une table, suspendu dans le vide, pendant que, sérieusement, drogué, abruti, inconscient, j'affirme que nous sommes désolés d'apprendre la perte d'un colis expédié le 4 et que nous ferons l'impossible pour réparer cet incident."

L'Employé, Jacques Sternberg.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
filoulefilou
Cliqueur Amateur
Cliqueur Amateur


Nombre de messages : 259

Date d'inscription : 24/05/2010


MessageSujet: Re: Avoir plusieurs Speech.CustomPortraitPlacement    Mer 21 Mai 2014 - 22:08

J'ai essayé avec un if(player.Speaking) et de mettre un else après
et ça ne fonctionne pas.

Et le truc du repeatidly_execute_always, ça n'a pas l'air de fonctionner.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Kitai
Délégué de la tasse bleue
Délégué de la tasse bleue


Nombre de messages : 2431

Date d'inscription : 01/08/2006


MessageSujet: Re: Avoir plusieurs Speech.CustomPortraitPlacement    Mer 21 Mai 2014 - 22:47

Ok alors plusieurs choses.

Tout d'abord, tu as mis toutes ces commandes dans la fonction game_start, qui est exécutée lots du tout premier cycle de jeu uniquement (avant tout le reste, donc). En gros, à ce moment-là, tu te trouves avant le Big Bang, donc il est impossible que ton personnage principal soit en train de parler. Dès lors la condition qui sera remplie sera if (!player.Speaking) et le code effectivement exécuté sera celui qui se trouve dans cette condition.

Comme le suggère Billbis, il faut donc passer par repeatedly_execute_always : cela nous permettra de consulter le personnage à chaque cycle de jeu de façon à déterminer s'il parle ou non.
Code:
function repeatedly_execute_always() {
  if (player.Speaking) // Le personnage principal est en train de parler durant ce cycle
  else // Le personnage principal n'est pas en train de parler durant ce cycle
}
Mais se pose de suite un problème (insoluble ?) : ce script te permet de déterminer quand le personnage est déjà en train de parler et non pas quand il s'apprête à parler. Cela signifie que quel que soit le code que tu mets dans la condition, celui-ci ne sera exécuté qu'une fois le discours entamé, et donc ses effets ne seront visibles (au mieux) que pendant le discours (à vrai dire ils ne seront visibles qu'après la première ligne prononcée par le joueur principal). Imaginons que tu places malgré tout tes instructions dans la condition et qu'à un moment dans le jeu, ton personnage principal prend la parole dans un dialogue pour prononcer deux lignes : la première ligne sera prononcée avant l'exécution du code (donc sera affichée avec un certain aspect) et la deuxième ligne après l'exécution de ce code (donc sera affichée avec un autre aspect). Le raisonnement est similaire pour la partie else.

Je ne vois donc pas de bonne solution actuellement, mais j'y réfléchis ^^(Peut-être faudrait-il regarder du côté des modules de remplacement du système de dialogue natif)

_________________
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 En ligne
filoulefilou
Cliqueur Amateur
Cliqueur Amateur


Nombre de messages : 259

Date d'inscription : 24/05/2010


MessageSujet: Re: Avoir plusieurs Speech.CustomPortraitPlacement    Jeu 22 Mai 2014 - 1:19

Houla !
Merde ...je me sens tout petit là ...face à cet inexplicable problème.
On va dire que je vais faire autrement. sourire
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: Avoir plusieurs Speech.CustomPortraitPlacement    Aujourd'hui à 17:19

Revenir en haut Aller en bas
 
Avoir plusieurs Speech.CustomPortraitPlacement
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Comment faire plusieurs sims dans la même ville ? >
» Questions sur les mains limites / scores...
» MiniTroopers
» Avoir plusieurs Nabaztag v2
» Lord of Ultima

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: