Forum d'entraide à la création de jeux d'aventure
 
PortailPortail  AccueilAccueil  RechercherRechercher  S'enregistrerS'enregistrer  Connexion  
-55%
Le deal à ne pas rater :
Friteuse sans huile – PHILIPS – Airfryer HD9200/90 Série 3000
49.99 € 109.99 €
Voir le deal

 

 Problème de continuité des musiques

Aller en bas 
2 participants
AuteurMessage
chefgeorges
Cliqueur Emérite
Cliqueur Emérite
chefgeorges


Nombre de messages : 502

Date d'inscription : 01/02/2008


Problème de continuité des musiques Empty
MessageSujet: Problème de continuité des musiques   Problème de continuité des musiques EmptyVen 6 Mar 2015 - 19:20

Bonzour ^^

Un petit problème auditif :

J'ai un personnage player.1 dans la room.A. Celui-ci peut aller dans une room.B adjacente.
J'ai aussi un player.2 dans une room.D.

Quand je joue avec player.1 à partir de la room.A je fait un aMusic1.Play(); et quand je vais dans la room.B la musique continue. Mais je reviens dans la room.A ou si je switch avec le player.2, j'ai le sproblèmes que vous imaginez (soit la music qui reboucle dans la room.A ou la music de la room.D qui se joue dans la room.B si je switch de celle-ci).

Je résous ce problème par un :
(dans room.B)
Code:
if (player.PreviousRoom != room.A)
{
aMusic1.Play();
}
(et un code semblable dans la room.A)

Par contre, ça se complique si à partir de la room.A je peux aller avec mon player.1 dans les room.B et dans une 3ème room.C

J'ai essayé le code suivant dans la room.A :
Code:
if ((player.PreviousRoom != room.A)||(player.PreviousRoom != room.C))
{
aMusic1.Play();
}
Mais ça ne marche pas :'( la musique reboucle systématiquement dès qu'on entre dans la room.A (j'ai essayé aussi afec des else if, même résultat).
Revenir en haut Aller en bas
http://instagram.com/ichefgeorges
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


Problème de continuité des musiques Empty
MessageSujet: Re: Problème de continuité des musiques   Problème de continuité des musiques EmptyVen 6 Mar 2015 - 19:56

C'est un simple problème de portée de tes opérateurs logiques.
Le code que tu as donné conditionne le lancement de aMusic1 aux situations où soit le joueur ne vient pas de la pièce A, soit il ne vient pas de la pièce B.
Ce que tu veux faire plutôt c'est conditionner le lancement de aMusic1 aux situations où ce n'est pas le cas que soit le joueur vient de la pièce A, soit il vient de la pièce B. Autrement dit, les situations où ce n'est ni le cas que le joueur vient de la pièce A, ni qu'il vient de la pièce B :
Code:
if ((player.PreviousRoom != room.A)&&(player.PreviousRoom != room.C))
{
  aMusic1.Play();
}
Sinon de façon plus générale, tu peux faire ça (source) :
Code:
// Cette fonction retourne TRUE si le clip en question est déjà en cours de lecture, FALSE sinon
bool IsPlaying (this AudioClip*) {
  int channel = 0:
  while (channel < System.AudioChannelCount) {
    AudioChannel * ch = System.AudioChannels[channel];
    if (ch.PlayingClip == this) return true;
    channel++:
  }
  return false;
}

// Dans room_load
if (!aMusic1.IsPlaying()) aMusic1.Play();

_________________
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
 
Problème de continuité des musiques
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» [Problème] Les musiques de Monkey Island
» Problème avec LES SONS ET LES MUSIQUES
» Dread MacFarlane, jeu 100% custom - demo page 7 !
» Musiques
» Musiques Numériques

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: