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

Partagez | 
 

 plusieurs sons de pas

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


Nombre de messages : 60

Age : 41

Localisation : alsace

Date d'inscription : 06/04/2012


MessageSujet: plusieurs sons de pas   Lun 14 Jan 2013 - 11:52

alors voila j'ai une map avec du gravier de l'herbe et un marecage.

je voudrai que le son des pas change suivant qu'il est sur le gravier, l'herbe et le marécage.
il faut utiliser les regions non?
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
avatar

Nombre de messages : 2549

Date d'inscription : 01/08/2006


MessageSujet: Re: plusieurs sons de pas   Lun 14 Jan 2013 - 12:44

Ok je sais pas s'il y a une méthode simple pour faire ça.
J'imagine que tu as déjà défini des sons de pas habituels pour ton personnage, c'est-à-dire que tu as associé des sons de pas avec certaines images dans ses animations.

L'idée serait donc la suivante : lorsque le joueur arrive sur la région (le gravier, l'herbe ou le marécage), on change les sons associés à ces images. Lorsqu'il quitte la région, on remet le son habituel (eh oui, si on laisse le son marécage par exemple, ça risque de faire bizarre une fois que le joueur aura quitté la zone !).

Ça peut se faire de la manière suivante : tu crées une région pour chaque zone spéciale (gravier, herbe, marécage, ... bref, chaque zone où le bruit de pas n'est pas habituel). Pour chacune de ces régions, tu vas dans le panneau des interactions et tu cliques sur "Player walks onto the region" ("Le joueur arrive sur la région"). Et dans le script, tu modifies le son associé à chaque image de pas dans l'animation en utilisant la propriété LinkedAudio des ViewFrames, de la façon suivante :
Code:
ViewFrame *frame = Game.GetViewFrame(player.View, NUMERO_SEQUENCE, NUMERO_IMAGE);
frame.LinkedAudio = aPasMarecage;
Bien sûr NUMERO_SEQUENCE correspond à 0, 1, 2 ou 3 (voire 4, 5, 6 ou 7 si ton personnage a des animations de diagonal) et il te faudra donc entrer au moins 4 fois ces commandes (au moins une fois par direction car j'imagine que tu as au moins un bruit de pas, même si c'est chaque fois le même, par direction).
NUMERO_IMAGE correspond au numéro de l'image, ou des images dans la séquence où tu as défini un bruit de pas.
Enfin, aPasMarecage est un exemple de séquence audio qui correspondrait au bruit de pas de la région en question (le marécage par exemple).

Tu refais la même chose lorsque le joueur quitte la région (tu cliques sur "Player walks off the region" -- "Le joueur quitte la région" -- dans la liste d'interactions) en prenant soin de passer le nom de la séquence correspondant au bruit de pas habituel à la place de "aPasMarecage" (par exemple).


J'ai conscience que c'est un peu compliqué et si tu as des questions là-dessus, n'hésite pas.
De plus si quelqu'un connaît une solution plus simple, ce serait super.
Sinon, je pense qu'il y a matière à un petit module ^^

_________________
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
valoulef
Délégué de la tasse bleue
Délégué de la tasse bleue
avatar

Nombre de messages : 1389

Age : 28

Localisation : Condate

Date d'inscription : 01/08/2011


MessageSujet: Re: plusieurs sons de pas   Lun 14 Jan 2013 - 18:30

Kitai, qu'est-ce qu'on ferait sans toi ! Y'a-t-il une boîte à idée quelque part pour améliorer AGS ? Ce seraient le genre d'option relativement simple à mettre en place (enfin je pense) qui faciliterait grandement la vie des développeurs amateurs !

_________________
"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 En ligne
Kitai
Délégué de la tasse bleue
Délégué de la tasse bleue
avatar

Nombre de messages : 2549

Date d'inscription : 01/08/2006


MessageSujet: Re: plusieurs sons de pas   Lun 14 Jan 2013 - 20:14

valoulef a écrit:
Y'a-t-il une boîte à idée quelque part pour améliorer AGS ?
Oui, ici, surtout depuis l'ouverture du code source de l'éditeur. Du coup, tu peux même apporter les changements toi-même si tu veux clin d\\\\'oeil

_________________
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
valoulef
Délégué de la tasse bleue
Délégué de la tasse bleue
avatar

Nombre de messages : 1389

Age : 28

Localisation : Condate

Date d'inscription : 01/08/2011


MessageSujet: Re: plusieurs sons de pas   Lun 14 Jan 2013 - 20:28

Kitai a écrit:
Du coup, tu peux même apporter les changements toi-même si tu veux clin d\\\\'oeil

Ouais ben avant ça je vais essayer de mener à bien mon jeu, pour commencer. Ca serait déjà un bon début sourire

_________________
"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 En ligne
Billbis
Disciple de la Grande Tasse Bleue
Disciple de la Grande Tasse Bleue
avatar

Nombre de messages : 1275

Date d'inscription : 10/05/2012


MessageSujet: Re: plusieurs sons de pas   Lun 14 Jan 2013 - 20:35

A vrai dire, c'est relativement "simple" a mettre en place avec l'AGS script, du coup je ne suis pas certain qu'il faille modifier l'Engine ou l’éditeur pour cela...

_________________
Mon petit DevBlog
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://nothingaboutthedog.blogspot.fr/
jetsetwilly
Adepte de la Grande Tasse Bleue
Adepte de la Grande Tasse Bleue


Nombre de messages : 60

Age : 41

Localisation : alsace

Date d'inscription : 06/04/2012


MessageSujet: Re: plusieurs sons de pas   Lun 14 Jan 2013 - 22:07

ViewFrame *frame l'astérisque c'est pour quoi de nouveau? lol

admettons que mon personnage est 4 directions et 8 image par animation et que sur ces 8 image il y en aurai 4 avec le bruit de pas sa donnerai quoi le code exact?

donc d'apres ce que j'ai compris il faut que je fasse le code pour toutes les directions( haut bas gauche, droite)?

view frame c'est une fonction pour afficher une image et non une animation a la base, j'ai juste?
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
avatar

Nombre de messages : 2549

Date d'inscription : 01/08/2006


MessageSujet: Re: plusieurs sons de pas   Mar 15 Jan 2013 - 10:13

jetsetwilly a écrit:
ViewFrame *frame l'astérisque c'est pour quoi de nouveau? lol
L'astérisque c'est un peu compliqué, je sais pas si tu connais la notion de pointeurs.
Il y a une page d'aide du manuel expliquant cette notion.
Sinon Billbis m'a flatteusement rapporté avoir saisi certaines subtilités sur cette notion à la suite de ce message.

jetsetwilly a écrit:
admettons que mon personnage est 4 directions et 8 image par animation et que sur ces 8 image il y en aurai 4 avec le bruit de pas sa donnerai quoi le code exact?
Le code exact ça dépend en partie de comment tu as nommé tes personnages, tes animations, etc.
Mais le code ressemblerait à ça (en supposant que tu as mis un bruit de pas aux images 4 et 8 de chaque séquence d'animation) :
Code:
ViewFrame *image_haut4 = Game.GetViewFrame(player.View, 0, 3); // Les séquences débutent à l'image 0 (1-1), donc 4 > 3 (4-1)
ViewFrame *image_haut8 = Game.GetViewFrame(player.View, 0, 7);

ViewFrame *image_droite4 = Game.GetViewFrame(player.View, 1, 3);
ViewFrame *image_droite8 = Game.GetViewFrame(player.View, 1, 7);

ViewFrame *image_gauche4 = Game.GetViewFrame(player.View, 2, 3);
ViewFrame *image_gauche8 = Game.GetViewFrame(player.View, 2, 7);

ViewFrame *image_bas4 = Game.GetViewFrame(player.View, 3, 3);
ViewFrame *image_bas8 = Game.GetViewFrame(player.View, 3, 7);

image_haut4.LinkedAudio = aPasMarecage;
image_haut8.LinkedAudio = aPasMarecage;

image_droite4.LinkedAudio = aPasMarecage;
image_droite8.LinkedAudio = aPasMarecage;

image_gauche4.LinkedAudio = aPasMarecage;
image_gauche8.LinkedAudio = aPasMarecage;

image_bas4.LinkedAudio = aPasMarecage;
image_bas8.LinkedAudio = aPasMarecage;
Tu mets ça dans la fonction qui correspond à Player walks onto the region.
Tu mets le même code, en remplaçant aPasMarecage par aPasNormal par exemple dans la fonction qui correspond à Player walks off the region (histoire que les bruits de pas redeviennent normaux lorsque le joueur quitte le marécage).

jetsetwilly a écrit:
donc d'apres ce que j'ai compris il faut que je fasse le code pour toutes les directions( haut bas gauche, droite)?
C'est ça, comme tu le vois plus haut.

jetsetwilly a écrit:
view frame c'est une fonction pour afficher une image et non une animation a la base, j'ai juste?
ViewFrame c'est un genre de variable dans le code qui permet de manipuler les images d'animation. Là ça nous sert à pointer à chaque fois sur les quatrième et huitième images des séquences d'animation haut, droite, gauche, bas du personnage principal.
Une fois qu'on pointe sur une image, on peut modifier ses propriétés comme par exemple le son qui lui est associé (propriété LinkedAudio), c'est pour ça qu'on doit pointer dessus auparavant.

_________________
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
Billbis
Disciple de la Grande Tasse Bleue
Disciple de la Grande Tasse Bleue
avatar

Nombre de messages : 1275

Date d'inscription : 10/05/2012


MessageSujet: Re: plusieurs sons de pas   Mar 15 Jan 2013 - 10:55

Tant qu'à faire, autant mettre tout ça dans une fonction. sourire

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

Nombre de messages : 2549

Date d'inscription : 01/08/2006


MessageSujet: Re: plusieurs sons de pas   Mar 15 Jan 2013 - 11:25

Billbis a écrit:
Tant qu'à faire, autant mettre tout ça dans une fonction. sourire
Certes, mais c'était pour plus de clarté.

Une fonction dans cet esprit pourrait être la suivante :
Code:
function RemplaceDansVue(this AudioClip*, int vue, AudioClip aMettre) {
  int sequence;
  while (sequence < Game.GetLoopCountForView(vue)) {
    int image;
    while (image < Game.GetFrameCountForLoop(vue, sequence)) {
      ViewFrame* frame = Game.GetViewFrame(vue, sequence, image);
      if ((frame.LinkedAudio != null) && (frame.LinkedAudio == this))
        frame.LinkedAudio = aMettre;
      image++;
    }
    sequence++;
  }
}
Et on mettrait alors dans la fonction correspondant à Player walks onto the region :
Code:
aPasNormal.RemplaceDansVue(player.View, aPasMarecage);
Puis dans la fonction correspondant à Player walks off the region :
Code:
aPasMarecage.RemplaceDansVue(player.View, aPasNormal);

_________________
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 !


Dernière édition par Kitai le Mer 16 Jan 2013 - 17:46, édité 1 fois (Raison : "View" pas "Vue" dans le code !)
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://admin.no.uchi.free.fr/dokuwiki-2008-05-05/doku.php
jetsetwilly
Adepte de la Grande Tasse Bleue
Adepte de la Grande Tasse Bleue


Nombre de messages : 60

Age : 41

Localisation : alsace

Date d'inscription : 06/04/2012


MessageSujet: Re: plusieurs sons de pas   Mar 15 Jan 2013 - 22:13

pour la fonction, c'est du chinois, pour le premier code je comprend un peu mieux, pourrai tu traduire ce code? juste me dire ce qui se passe vraiment au fur et a mesure du code sa m'aiderez
ViewFrame *image_haut4 = Game.GetViewFrame(player.View, 0, 3); // Les séquences débutent à l'image 0 (1-1), donc 4 > 3 (4-1)
ViewFrame *image_haut8 = Game.GetViewFrame(player.View, 0, 7);

ViewFrame *image_droite4 = Game.GetViewFrame(player.View, 1, 3);
ViewFrame *image_droite8 = Game.GetViewFrame(player.View, 1, 7);

ViewFrame *image_gauche4 = Game.GetViewFrame(player.View, 2, 3);
ViewFrame *image_gauche8 = Game.GetViewFrame(player.View, 2, 7);

ViewFrame *image_bas4 = Game.GetViewFrame(player.View, 3, 3);
ViewFrame *image_bas8 = Game.GetViewFrame(player.View, 3, 7);

image_haut4.LinkedAudio = aPasMarecage;
image_haut8.LinkedAudio = aPasMarecage;

image_droite4.LinkedAudio = aPasMarecage;
image_droite8.LinkedAudio = aPasMarecage;

image_gauche4.LinkedAudio = aPasMarecage;
image_gauche8.LinkedAudio = aPasMarecage;

image_bas4.LinkedAudio = aPasMarecage;
image_bas8.LinkedAudio = aPasMarecage;

Tu mets ça dans la fonction qui correspond à Player walks onto the region.
Tu mets le même code, en remplaçant aPasMarecage par aPasNorm
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
jetsetwilly
Adepte de la Grande Tasse Bleue
Adepte de la Grande Tasse Bleue


Nombre de messages : 60

Age : 41

Localisation : alsace

Date d'inscription : 06/04/2012


MessageSujet: Re: plusieurs sons de pas   Mar 15 Jan 2013 - 22:15

j'ai deja vu plus simple comme methode, j'avoue
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
jetsetwilly
Adepte de la Grande Tasse Bleue
Adepte de la Grande Tasse Bleue


Nombre de messages : 60

Age : 41

Localisation : alsace

Date d'inscription : 06/04/2012


MessageSujet: Re: plusieurs sons de pas   Mar 15 Jan 2013 - 22:16

(player.View, 0, 7) en gros t'as juste besoin de m'expliquer a quoi corresponde les 2 derniers chiffres 0 et 7
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
jetsetwilly
Adepte de la Grande Tasse Bleue
Adepte de la Grande Tasse Bleue


Nombre de messages : 60

Age : 41

Localisation : alsace

Date d'inscription : 06/04/2012


MessageSujet: Re: plusieurs sons de pas   Mar 15 Jan 2013 - 22:29

sa donnerai cEgo.viewframe?
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
avatar

Nombre de messages : 2549

Date d'inscription : 01/08/2006


MessageSujet: Re: plusieurs sons de pas   Mer 16 Jan 2013 - 10:16

jetsetwilly a écrit:
(player.View, 0, 7) en gros t'as juste besoin de m'expliquer a quoi corresponde les 2 derniers chiffres 0 et 7
Pour voir à quoi correspondent les arguments des commandes (les chiffres en l'occurrence), tu peux aller regarder la définition de celles-ci dans le manuel d'aide.
Pour la commande GetViewFrame, la page d'aide est ici. Tu as une fonction "Rechercher" assez efficace sur le manuel en ligne donc pas d'excuse pour aller chercher la définition d'une commande ^^

Donc pour le coup, le dernier chiffre je te l'avais sommairement expliqué dans la première ligne du code, en commentaires :
Code:
ViewFrame *image_haut4 = Game.GetViewFrame(player.View, 0, 3); // Les séquences débutent à l'image 0 (1-1), donc 4 > 3 (4-1)
Ici, j'expliquais que pour AGS, la première image d'une séquence était représentée par le numéro 1 - 1 = 0. Pour récupérer la quatrième image, il faut donc passer le numéro 4-1 = 3. Tout cela parce que AGS numérote les images en commençant à 0, et non pas à 1 comme le fait un être humain normal.
Le premier chiffre quant à lui correspond au numéro de la séquence d'animation. Comme tu peux le voir dans le code, chaque fois que j'ai changé ce numéro j'ai aussi changé la direction dans le nom "frame_haut", "frame_droite", "frame_gauche" et "frame_bas". Donc en toute logique ce numéro correspond à la séquence en question : 0 = haut, 1 = droite, 2 = gauche, 3 = bas.

jetsetwilly a écrit:
sa donnerai cEgo.viewframe?
Je vois pas trop ce que tu as en tête, tu désignes quoi par "ça" ?
La propriété viewframe n'existe pas pour les personnages (cf. la page Personnages du manuel d'aide où tu ne trouveras pas cette propriété).

jetsetwilly a écrit:
j'ai deja vu plus simple comme methode, j'avoue
Alors utilise-la à la place clin d\\\\'oeil
Sinon c'est justement le principe de la fonction personnalisée : le code que je t'ai donné au début et qui te semble plus clair est très répétitif. En effet on a quasiment le même code répété 4 fois (4 directions) et même 8 fois dans une certaine mesure (car 2 images par séquence/direction). De plus, ce code redondant il faut le coller une fois dans la fonction correspondant à l'entrée du joueur sur la région et une fois (un peu modifié) dans la fonction correspondant à la sortie du joueur de la région.

Le principe de la fonction personnalisée c'est de n'écrire ce code qu'une seule fois et d'utiliser un raccourci pour exécuter ce code n'importe où ailleurs (le raccourci étant le nom de la fonction).
La fonction que j'ai écrite se charge de scruter toutes les images de toutes les séquences d'animation d'une certaine vue (dont tu lui passes le numéro en premier argument) et s'il se trouve qu'une image est associée à la séquence audio depuis laquelle tu as appelé la fonction (la séquence audio aPasNormal dans mon premier exemple, aPasMarecage dans mon second exemple), alors elle remplace cette association de façon à ce que l'image soit désormais associée à la séquence audio que tu as passée comme second paramètre à la fonction (aPasMarecage dans mon premier exemple, aPasNormal dans mon second exemple).

Pour plus de détails sur les fonctions personnalisées, je peux là encore te renvoyer au manuel d'aide.


Voilà, j'espère avoir éclairci un peu tes interrogations.

_________________
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
jetsetwilly
Adepte de la Grande Tasse Bleue
Adepte de la Grande Tasse Bleue


Nombre de messages : 60

Age : 41

Localisation : alsace

Date d'inscription : 06/04/2012


MessageSujet: Re: plusieurs sons de pas   Mer 16 Jan 2013 - 11:58

ok mercii je pense pouvoir reproduire ton code , je reviendrai sur le sujet une fois que j'aurai fait quelques travaux pratiques là dessus, en fait il y beaucoup de choses plus basiques qu'il me restent encore a apprendre,
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
jetsetwilly
Adepte de la Grande Tasse Bleue
Adepte de la Grande Tasse Bleue


Nombre de messages : 60

Age : 41

Localisation : alsace

Date d'inscription : 06/04/2012


MessageSujet: Re: plusieurs sons de pas   Jeu 17 Jan 2013 - 0:24

bon alors j'ai testé j'y arrive pas mais sa m'etonne pas j'ai fait juste une region de pas par anim en 4 direction avec 2 sons different mais sans succes

function region2_WalksOnto()
{
ViewFrame *frame = Game.GetViewFrame(cEgo.View,0, 4);
frame.LinkedAudio = astep2;
ViewFrame *frame = Game.GetViewFrame(cEgo.View,1, 4);
frame.LinkedAudio = astep2;
ViewFrame *frame = Game.GetViewFrame(cEgo.View,2, 4);
frame.LinkedAudio = astep2;
ViewFrame *frame = Game.GetViewFrame(cEgo.View,3, 4);
frame.LinkedAudio = astep2;
}


function region2_WalksOff()
{
ViewFrame *frame = Game.GetViewFrame(cEgo.View,0, 4);
frame.LinkedAudio = astep1;
ViewFrame *frame = Game.GetViewFrame(cEgo.View,1, 4);
frame.LinkedAudio = astep1;
ViewFrame *frame = Game.GetViewFrame(cEgo.View,2, 4);
frame.LinkedAudio = astep1;
ViewFrame *frame = Game.GetViewFrame(cEgo.View,3, 4);
frame.LinkedAudio = astep1;
}




voila mon code erruer ligne 16: unfenied token machin chose
m'en doute que mon code ne vaut rien lol
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
avatar

Nombre de messages : 1275

Date d'inscription : 10/05/2012


MessageSujet: Re: plusieurs sons de pas   Jeu 17 Jan 2013 - 7:42

Si tu ne nous précise pas quel est la ligne 16, ça va pas être super facile de t'aider. clin d\\\\'oeil
Pour info, Kitai nous avait expliqué des raisons possibles de l’erreur - trop fréquente mais souvent par notre faute - unknown token ici. Sans vouloir préjuger, la raison 5 doit pouvoir être invoqué dans le cas présent.
grand sourire
Spoiler:
 

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

Nombre de messages : 2549

Date d'inscription : 01/08/2006


MessageSujet: Re: plusieurs sons de pas   Jeu 17 Jan 2013 - 10:55

jetsetwilly a écrit:
voila mon code erruer ligne 16: unfenied token machin chose
m'en doute que mon code ne vaut rien lol
En fait à voir ton code je n'ai pas l'impression qu'il y ait de problème particulier. Ça devrait faire le boulot normalement.

Du coup l'erreur que tu rapportes, c'est peut-être que tu n'as pas de séquence nommée astep1 ou astep2 (notamment fais bien attention aux majuscules minuscules, peut-être as-tu nommé ces séquences aStep1 et aStep2).

Ensuite je me demande si tu n'auras pas un problème à redéclarer à chaque fois la même variable frame : tant que tu utilises toujours le même nom (frame) pour les quatre directions, peut-être devrais-tu uniquement commencer la ligne par "frame = ..." (note bien l'absence également de l'astérisque). En effet, tu as déjà déclaré le type de cette variable (une ViewFrame en l'occurrence) au début de la fonction. Évidemment laisse la déclaration aussi bien dans la première ligne de la fonction WalksOnto que dans la première ligne de la fonction WalksOff.

Comme le conseille Billbis, le plus simple est de nous dire le message exact de l'erreur (Undefined token quoi ?) et surtout de nous indiquer quelle est la ligne 16, histoire qu'on puisse l'inspecter.
Par ailleurs il serait bon de savoir quelle est la version d'AGS que tu utilises (car les séquences audio et la propriété LinkedAudio n'existent pas avant AGS 3.2).

_________________
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
jetsetwilly
Adepte de la Grande Tasse Bleue
Adepte de la Grande Tasse Bleue


Nombre de messages : 60

Age : 41

Localisation : alsace

Date d'inscription : 06/04/2012


MessageSujet: Re: plusieurs sons de pas   Jeu 17 Jan 2013 - 22:12

c'est bien a cause *frame que sa bug tu dis que je devrai le remplacer par" frame=..."
oui mais quoi derriere les ... wouah sa me saoule franchement t'aura beau m'expliquer mais là je nage ... tu veux pas testé sa chez toi? tu m'envouy le code ok? lol
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
avatar

Nombre de messages : 2549

Date d'inscription : 01/08/2006


MessageSujet: Re: plusieurs sons de pas   Ven 18 Jan 2013 - 17:17

jetsetwilly a écrit:
c'est bien a cause *frame que sa bug tu dis que je devrai le remplacer par" frame=..."
oui mais quoi derriere les ...
Non je disais simplement d'enlever "ViewFrame *" lorsque ça apparaît après la première fois.
Donc ça donnerait ça dans ton code :
Code:
function region2_WalksOnto()
{
ViewFrame *frame = Game.GetViewFrame(cEgo.View,0, 4);
frame.LinkedAudio = astep2;
frame = Game.GetViewFrame(cEgo.View,1, 4);
frame.LinkedAudio = astep2;
frame = Game.GetViewFrame(cEgo.View,2, 4);
frame.LinkedAudio = astep2;
frame = Game.GetViewFrame(cEgo.View,3, 4);
frame.LinkedAudio = astep2;
}


function region2_WalksOff()
{
ViewFrame *frame = Game.GetViewFrame(cEgo.View,0, 4);
frame.LinkedAudio = astep1;
frame = Game.GetViewFrame(cEgo.View,1, 4);
frame.LinkedAudio = astep1;
frame = Game.GetViewFrame(cEgo.View,2, 4);
frame.LinkedAudio = astep1;
frame = Game.GetViewFrame(cEgo.View,3, 4);
frame.LinkedAudio = astep1;
}

jetsetwilly a écrit:
wouah sa me saoule franchement t'aura beau m'expliquer mais là je nage ... tu veux pas testé sa chez toi? tu m'envouy le code ok? lol
Ça marche pas comme ça : j'ai pas de son "astep1" chez moi, les séquences d'animation de mes personnage n'ont pas nécessairement au moins 4 images, elle ne sont pas nécessairement associées à un son, etc.
On ne peut pas bêtement copier/coller un code d'un projet à un autre (à moins d'avoir tout prévu pour, et ça c'est le principe des modules, justement).

Je réexplique ce que fait le code plus haut, pas à pas :
  1. Le bruit des pas, c'est un son associé à une ou plusieurs images dans chaque séquence d'animation (haut, droite, gauche, bas).
  2. Ce qu'on va donc faire pour changer le bruit des pas, c'est associer une son différent à ces images.
  3. Pour faire ça, il faut qu'on puisse manipuler les images en question.
  4. Les images en question sont contenues dans des séquences (haut, droite, gauche, bas) qui sont elles mêmes contenues dans des vues.
  5. Il existe un moyen de manipuler ce genre d'images dans le code de AGS : ce sont les ViewFrame (en anglais Frame = Image/Cadre et View = Vue)
  6. Dans le code, on va donc choisir un nom par lequel on va désigner l'image qui nous intéresse, celle qui est associée au bruit de pas. Par exemple, on va l'appeler frame (tout en minuscules).
  7. On informe donc AGS qu'on va utiliser un nouveau nom, un nouveau terme : "frame" ; et que ce nom on va s'en servir pour parler d'une image d'animation : ViewFrame. Cela s'écrit de la manière suivante dans AGS : ViewFrame *frame
  8. Lorsqu'il lit le code, arrivé ici, AGS comprend qu'il existe un nom, frame, qui réfère à une image d'animation.
  9. Maintenant, on va dire à AGS quelle est l'image d'animation en question à laquelle on fait référence, on va la décrire à AGS avec du code qu'il comprend, de façon à ce qu'on puisse ensuite utiliser le nom frame pour pointer l'image du doigt, en quelque sorte.
  10. Le code que AGS connaît pour parler d'une image d'animation, c'est la fonction Game.GetViewFrame : dans cette fonction, on dit à AGS quelle vue regarder (celle du personnage joueur en l'occurrence : player.View), quelle séquence regarder dans cette vue (tantôt haut : 0, tantôt droite : 1, tantôt gauche : 2, tantôt bas : 3) et enfin quelle image dans cette séquence regarder (en l'occurrence, l'image numérotée 4, c'est-à-dire la cinquième image qui apparaît dans la séquence -- la première étant numérotée 0).
  11. On en arrive donc à cette ligne de code :
    Code:
    ViewFrame *frame = Game.GetViewFrame(player.View, 0, 4);
  12. En lisant cette ligne, AGS comprend tout ça d'un coup : "maintenant on va utiliser le nom frame pour désigner l'image d'animation (ViewFrame) numéro 4 de la séquence haut (0) de la vue du personnage joueur (player.View)".
  13. Maintenant qu'on peut désigner cette image là, qu'on a créé un nom qu'on utilise pour pointer vers elle, on peut parler de ses propriétés. Et celle qui nous intéresse en l'occurrence, c'est le son auquel l'image est associée.
  14. Cette propriété s'appelle LinkedAudio (ça, AGS le sait dès le départ : il sait que tous les noms qu'on utilise pour parler des images d'animation ont la propriété LinkedAudio, entre autres. Cf. la page du manuel d'aide)
  15. On va donc maintenant dire à AGS que le son qui correspond à cette propriété est un nouveau son, le son astep1 par exemple. On dit ça comme ça :
    Code:
    frame.LinkedAudio = astep1;
  16. En lisant cette ligne, AGS comprend la chose suivante : "le son associé (LinkedAudio) à l'image 4 de la séquence haut de la vue du personnage joueur (frame) est désormais (=) le son astep1".
  17. Ensuite, AGS connaît déjà le nom frame. Ce qu'on va faire, c'est qu'on va dire à AGS que désormais, ce nom là désigne une autre image d'animation : l'image 4 de la séquence droite (1) de la vue du personnage joueur.
  18. Code:
    frame = Game.GetViewFrame(player.View, 1, 4);
    En lisant cette ligne, AGS comprend : "Désormais, le nom frame désigne l'image 4 de la séquence droite (1) de la vue du personnage joueur".
  19. Et pour cette image aussi, on va modifier le son auquel elle est associée :
    Code:
    frame.LinkedAudio = astep1;
  20. etc.
C'est un peu long tout ce que j'ai écrit, mais au moins c'est exhaustif : je ne sais pas les points qui t'échappaient, mais je pense que maintenant une bonne partie est éclairée, non ?

Comme tu disais dans un message précédent, il y a certaines bases qu'il faut maîtriser quand on code sur AGS, et pour cela il faut savoir avoir un peu de patience.
Mais une fois qu'on a compris ces bases, tout s'éclaire très très vite, tu verras.

_________________
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
jetsetwilly
Adepte de la Grande Tasse Bleue
Adepte de la Grande Tasse Bleue


Nombre de messages : 60

Age : 41

Localisation : alsace

Date d'inscription : 06/04/2012


MessageSujet: Re: plusieurs sons de pas   Ven 18 Jan 2013 - 18:40

j'ai testé sa marche toujours pas on entend bien kle premier son, mais le deuxieme reste muet... je t'envoye le lien de mon test: https://www.dropbox.com/sh/kx1ploxj19evy0s/Flf5lEZXDW?m
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
jetsetwilly
Adepte de la Grande Tasse Bleue
Adepte de la Grande Tasse Bleue


Nombre de messages : 60

Age : 41

Localisation : alsace

Date d'inscription : 06/04/2012


MessageSujet: Re: plusieurs sons de pas   Ven 18 Jan 2013 - 18:56

si sa marche super, mais y a juste un truc, je crois qu'il ne faut pas utiliser le meme son de pas pour les sprites(dans le character) et lors de walk of region il faut donc 3 sons et là sa a l'air de marcher
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
jetsetwilly
Adepte de la Grande Tasse Bleue
Adepte de la Grande Tasse Bleue


Nombre de messages : 60

Age : 41

Localisation : alsace

Date d'inscription : 06/04/2012


MessageSujet: Re: plusieurs sons de pas   Ven 18 Jan 2013 - 19:33

oui mais sa marche que pour 2 zonzs de pas si je rajote une 3 em zone le sons est inaudible
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
jetsetwilly
Adepte de la Grande Tasse Bleue
Adepte de la Grande Tasse Bleue


Nombre de messages : 60

Age : 41

Localisation : alsace

Date d'inscription : 06/04/2012


MessageSujet: Re: plusieurs sons de pas   Ven 18 Jan 2013 - 19:47

ecoutes, sujet resolu enfin .... j'ai trouvé comment faire plusieurs zones alors voila un grand merci pour ta patience, je comprend vite mais fo m'expliquer longtemps...

juste une dernniere chose apparemment il faut laisser un asound1 avant, et ne pas l'utiliser dans le code(enfin d'apres ce que j'ai vu, a moins que mon c'est mon son qui est pas compatible, pour tant il se lit dans le fichier audio, mais bizzarrement, si je l'assigne a ma view du perso il ne se lit pas bizarre....

donc voila on y est arrivé enfin...
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: plusieurs sons de pas   

Revenir en haut Aller en bas
 
plusieurs sons de pas
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» plusieurs sons de pas
» [Space Marine] Sons of Hammer, 2'000 pts pour tournois
» [DCA 2010] [40k]thousands sons et démon de tzeentch
» [règles]Parenté avec plusieurs doyen à couronne de feuilles
» Comment couper un fichier .rar en plusieurs parties ???

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: