| Phylactère | |
|
+17Pierrec Billbis Threepwood jetsetwilly RoccoGD samielatriyahoofr Cendar le Rouge googi Indy Kitai Crazy Legs jeanmarc Le fous de LUCASART Shai-la Godzillu Alph Eratz Asraroth 21 participants |
|
Auteur | Message |
---|
Kitai Délégué de la tasse bleue
Nombre de messages : 2907
Date d'inscription : 01/08/2006
| Sujet: Re: Phylactère Ven 11 Mai 2012 - 17:33 | |
| Hi RoccoGD. Phylactere is a module, not a Plugin Which language(s) can you speak? I speak Spanish a bit, if that might help... For the moment, looking at the code of the module, using it for non-blocking speech doesn't seem to be possible. Yet I guess it requires only few modifications to implement this feature (roughly speaking, it's just about erasing the overlay in repeatedly_execute instead of using a Wait(MouseKey) command). Maybe, if I've some time, I would try to work it out. |
|
| |
Kitai Délégué de la tasse bleue
Nombre de messages : 2907
Date d'inscription : 01/08/2006
| Sujet: Re: Phylactère Ven 11 Mai 2012 - 23:11 | |
| Well, I've just been looking at it and I realized it's a bit more complicated than I expected. The problem is that with a background-speech, you allow several characters to talk and so several bubbles to be printed at the same time. This means as many sprites as talking characters, separately and globally handled (whith foreground bubbles you don't have to worry about that since the game pauses untill the overlay erases). It would be very nice if Asraroth could start working on it again |
|
| |
RoccoGD C'est quoi la Tasse Bleue ?
Nombre de messages : 3
Date d'inscription : 11/05/2012
| Sujet: Re: Phylactère Dim 13 Mai 2012 - 10:46 | |
| Hi Kitai, Big thx for your effort. Im austrian, so german is my native language, but i guess we can get along with english. Im aware that its not an easy task to implement the saybackground functionality in this module. Unfortunatly Asraroth isnt recently around here. Hopefully he is dedicated to handle an update again. bb Rocco |
|
| |
Kitai Délégué de la tasse bleue
Nombre de messages : 2907
Date d'inscription : 01/08/2006
| Sujet: Re: Phylactère Mer 16 Mai 2012 - 4:18 | |
| Hey Rocco, good news ! I'd been working on the module and here we are: you can now print background bubbles! I've also corrected the bug with the eSkipMouseOrKeyOnly parameter. The use is parallel to Say: simply type in player.PhylactereBackground("Hi there!"); to make your main character talk without blocking the execution. You can print several background bubbles at a time, but as for the Say and SayBackground commands there is this general limit of 10 simultaneous overlays on the screen. You can download it here. genießen!
La version française pour les anglophobes J'ai modifié le module d' Asraroth (sans sa permission, c'est mal !) et on peut désormais afficher des phylactères en arrière-plan (sans mettre le jeu en pause) ! J'ai aussi corrigé le problème qu'il y avait si on définissait phylactere.skip_mode à eSkipMouseOrKeyOnly. Pour l'utiliser, c'est toujours parallèle aux commandes Say et SayBackground : pour afficher une bulle au-dessus de la tête de votre personnage principal tout en laissant l'exécution du jeu continuer, entrez simplement la commande player.PhylactereBackground("Salut la compagnie !");. Vous pouvez bien sûr afficher plusieurs bulles simultanément à l'écran mais, comme pour Say et SayBackground, gardez à l'esprit la limite générale de 10 overlays simultanées à l'écran. Vous pouvez télécharger le module modifié ici. À vos bulles ! _________________ 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 ! |
|
| |
RoccoGD C'est quoi la Tasse Bleue ?
Nombre de messages : 3
Date d'inscription : 11/05/2012
| Sujet: Re: Phylactère Sam 19 Mai 2012 - 10:23 | |
| Hey Kitai, Thanks for your work, these are great news for me. Sorry that i reply so late, but this week was so busy that i couldnt manage to try it out earlier. Unfortunatly i get an error trying to import the module. - Citation :
- ---------------------------
Adventure Game Studio --------------------------- An error occurred trying to import the script module. The error details are below.
AGS.Types.InvalidDataException: This is not a valid AGS script module.
bei AGS.Editor.ImportExport.ImportScriptModule(String fileName)
bei AGS.Editor.Components.ScriptsComponent.ImportScriptModule(String fileName) --------------------------- OK --------------------------- But i opened it with a texteditor and copied the code in the module, and it works. Big, big thx i already lost all hope, that i can use Speechbubbles, cause the game im working on, must be finished at the end of june, so i have no time for altering modules they are not so important for the gameplay. But now it works great, and i will credit and inform you when the game is finished. Thx. |
|
| |
Kitai Délégué de la tasse bleue
Nombre de messages : 2907
Date d'inscription : 01/08/2006
| Sujet: Re: Phylactère Sam 19 Mai 2012 - 18:13 | |
| - RoccoGD a écrit:
- Sorry that i reply so late, but this week was so busy that i couldnt manage to try it out earlier.
No problem. - RoccoGD a écrit:
- Unfortunatly i get an error trying to import the module.
[...] But i opened it with a texteditor and copied the code in the module, and it works. Yeah it must be a problem due to my Windows7 64b, I get errors each time I type in an accented character ('é', 'è', ...) in the script. Plus I later edited the file manually in Ubuntu. I should compile it again properly. - RoccoGD a écrit:
- Big, big thx i already lost all hope, that i can use Speechbubbles, cause the game im working on, must be finished at the end of june, so i have no time for altering modules they are not so important for the gameplay. But now it works great, and i will credit and inform you when the game is finished. Thx.
Glad to help! Und: Mut! _________________ 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 ! |
|
| |
jetsetwilly Adepte de la Grande Tasse Bleue
Nombre de messages : 60
Age : 48
Localisation : alsace
Date d'inscription : 06/04/2012
| Sujet: Re: Phylactère Mar 15 Jan 2013 - 0:04 | |
| chez moi, le teste est completement en haut de la bulle il est pas centré verticalement |
|
| |
Kitai Délégué de la tasse bleue
Nombre de messages : 2907
Date d'inscription : 01/08/2006
| Sujet: Re: Phylactère Mar 15 Jan 2013 - 9:49 | |
| Hm, je connaissais pas ce comportement du module jetsetwilly. Normalement, il n'y a pas à centrer le texte ou non puisque la taille de la bulle est censé s'adapter automatiquement au nombre de lignes, de façon à ce que le texte remplisse toute la bulle.
Tu utilises quelle version du module et quelle version d'AGS ? _________________ 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 ! |
|
| |
Threepwood Adepte de la Grande Tasse Bleue
Nombre de messages : 144
Age : 52
Localisation : Hyères
Date d'inscription : 29/12/2012
| Sujet: Re: Phylactère Lun 15 Avr 2013 - 7:28 | |
| Super Module ! Pile poil ce que je cherchais !
Je vois que Asraroth n'est plus connecté sur le forum depuis 2012... Quelqu'un sait-il, même s'il a cédé apparament tous les droits apprioris a ags pour l'utilisation de son script...s'il a laissé des conditions particulières (citation nominative obligatoires/a disposition par exemple) dans le cas où le jeu ags qui utilise son script serai devenu commercial ?
Je tiens vraiment a citer ceux qui m'ont aidé sur mon projet dans celui-ci au final, ultérieurement, que ce soit par le pseudo/forum ou le nom selon leurs volonté... c'est la moindre des choses .... merci |
|
| |
Kitai Délégué de la tasse bleue
Nombre de messages : 2907
Date d'inscription : 01/08/2006
| Sujet: Re: Phylactère Lun 15 Avr 2013 - 14:23 | |
| Comme il est indiqué dans les premières lignes du module : - Asraroth (module Phylactère) a écrit:
- // This module is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public License // as published by the Free Software Foundation; either version 2.1 // of the License, or any later version. // // This module is distributed in the hope that it will be useful, but // WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU // Lesser General Public License for more details. // // You should have received a copy of the GNU Lesser General Public // License along with this library; if not,write to the Free Software // Foundation, Inc, 59 Temple Place, Suite 330, Boston, MA 02111-1307 // USA. // // Copyright (C) 2009 Asraroth Le module est donc sous Licence GNU GPL Amoindrie, ce qui veut dire que tu peux l'utiliser pour faire du profit. Je ne pense pas que tu sois tenu de citer l'auteur, mais généralement ça fait toujours plaisir Je peux aussi te renvoyer vers cette discussion qui parle du droit d'auteur en général, et plus particulièrement dans nos créations vidéo-ludiques. _________________ 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 ! |
|
| |
Threepwood Adepte de la Grande Tasse Bleue
Nombre de messages : 144
Age : 52
Localisation : Hyères
Date d'inscription : 29/12/2012
| Sujet: Re: Phylactère Lun 15 Avr 2013 - 14:29 | |
| Merci pour ces complements d'info Kitai
|
|
| |
Billbis Disciple de la Grande Tasse Bleue
Nombre de messages : 1346
Date d'inscription : 10/05/2012
| Sujet: Re: Phylactère Lun 15 Avr 2013 - 17:04 | |
| Pour obtenir une réponse plus personnelle, n'hésite pas à envoyer un Message Privé (MP) a Asraroth. Qui sait, peut-être que cela le ferai revenir ? |
|
| |
Pierrec Adepte de la Grande Tasse Bleue
Nombre de messages : 99
Date d'inscription : 16/06/2011
| Sujet: Re: Phylactère Sam 7 Déc 2013 - 15:17 | |
| Bonjour, je viens de découvrir ce module qui est soit dit en passant merveilleux. J'hésite encore cependant à l'adopter parce que mes dialogues font grand usage de strings, du genre :
cChar.Say("Je m'appelle %s", Nom)
Or ce module ne semble pas supporter ces strings, ce que compte tenu de sa qualité par ailleurs, je lui pardonne volontiers.
J'aimerais donc simplement savoir s'il existe un moyen simple de programmer ce support des %s (et des %d par la même occasion). Je n'ai évidemment aucune idée de comment m'y prendre. Peut-être que s'il était possible de trouver quelque part le code de la fonction Say d'AGS je pourrais réussir à copier coller au bon endroit les bons éléments. En avez-vous déjà entendu parler ?
|
|
| |
Kitai Délégué de la tasse bleue
Nombre de messages : 2907
Date d'inscription : 01/08/2006
| Sujet: Re: Phylactère Sam 7 Déc 2013 - 19:10 | |
| Salut Pierrec, Asraroth a clairement fait du bon boulot avec ce module. Le problème c'est qu'il n'y a aucun moyen de proposer une fonction personnalisée qui utilise le même format que la commande Say ou que la commande Display. Il existe bien une solution, c'est de passer par la fonction String.Format, comme ceci : - Code:
-
cChar.Phylactere(String.Format("Je m'appelle %s", cChar.Name)); Le souci c'est que ça devient vite lassant de recopier cela en permanence. Mais bon, dans l'immédiat je ne vois pas d'autre solution... _________________ 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 ! |
|
| |
Pierrec Adepte de la Grande Tasse Bleue
Nombre de messages : 99
Date d'inscription : 16/06/2011
| Sujet: Re: Phylactère Dim 8 Déc 2013 - 12:37 | |
| Oh! ça peut tout à fait faire l'affaire! Merci! |
|
| |
declerfayt C'est quoi la Tasse Bleue ?
Nombre de messages : 42
Age : 44
Localisation : Mons, Belgique
Date d'inscription : 03/01/2014
| Sujet: Re: Phylactère Mar 13 Mai 2014 - 14:34 | |
| Super boulot Asraroth !!!! |
|
| |
Billbis Disciple de la Grande Tasse Bleue
Nombre de messages : 1346
Date d'inscription : 10/05/2012
| Sujet: Re: Phylactère Dim 7 Fév 2016 - 20:28 | |
| |
|
| |
Kitai Délégué de la tasse bleue
Nombre de messages : 2907
Date d'inscription : 01/08/2006
| Sujet: Re: Phylactère Dim 7 Fév 2016 - 20:39 | |
| Merci de rapporter ça Billbis. slasher m'a contacté en MP à ce propos et je lui ai donné quelques pistes pour ajouter du doublage au module, mais je n'ai rien trouvé de vraiment évident (en partie "à cause" du lip-sync). _________________ 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 ! |
|
| |
declerfayt C'est quoi la Tasse Bleue ?
Nombre de messages : 42
Age : 44
Localisation : Mons, Belgique
Date d'inscription : 03/01/2014
| Sujet: Re: Phylactère Dim 7 Fév 2016 - 21:32 | |
| Bien vu Billbis pour la question du doublage et de la fonction Phylactére! Une piste de solutions: les jeux Wadget Eye utilisent soit une version de la fonction Phylactère, soit une fonction custom - y'a peut-être une réponse quelque part sur le forum AGS anglophone. |
|
| |
Threepwood Adepte de la Grande Tasse Bleue
Nombre de messages : 144
Age : 52
Localisation : Hyères
Date d'inscription : 29/12/2012
| Sujet: Re: Phylactère Dim 14 Fév 2016 - 9:11 | |
| - Billbis a écrit:
- Comment faire marcher Phylactére avec du doublage ?
C'est en fait vraiment important mine de rien ce problème que de ne pas pouvoir ajouter un doublage voix au phylactere et j'attends la solution avec impatience car du coup on se retrouve avec un cruel choix à faire : utiliser le phylactere et ne pas avoir de voix ou avoir des voix mais ne pas utiliser le phylactere ! Le jour où on arrive donc a pouvoir avoir le Phylactere et les voix de doublage en même temps je fait peter le champagne parce que c'est vraiment la seule chose qui me bloque pour faire du doublage pour mon projet étant donné que je ne souhaite pas me passer de ce fabuleux phylactere ! |
|
| |
Kitai Délégué de la tasse bleue
Nombre de messages : 2907
Date d'inscription : 01/08/2006
| Sujet: Re: Phylactère Dim 14 Fév 2016 - 15:48 | |
| Une solution est de jouer l'animation du personnage et le fichier audio correspondant au discours à chaque fois qu'on utilise Phylactere, comme ça : - Code:
-
player.LockView(player.SpeechView); player.Animate(player.Loop, 4, eRepeat, eNoBlock); aSalutLesGens.Play(); player.Phylactere("Salut les gens !"); player.UnlockView(); Et évidemment ça peut se simplifier en une fonction plus générale : - Code:
-
function Phil(this Character*, String texte, AudioClip* doublage) { this.LockView(this.SpeechView); this.Animate(this.Loop, 4, eRepeat, eNoBlock); if (doublage != null) doublage.Play(); this.Phylactere(texte); this.UnlockView(); } Le problème majeur que j'anticipe en revanche c'est la synchronisation labiale, là je vois mal comment faire, sinon avoir une copie du personnage hors de l'écran sur laquelle on lance la commande Say et dont on se sert pour copier les frames à chaque cycle. _________________ 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 ! |
|
| |
hanakin Cliqueur Amateur
Nombre de messages : 492
Age : 59
Localisation : Angers
Date d'inscription : 12/09/2012
| Sujet: Re: Phylactère Dim 14 Fév 2016 - 16:16 | |
| Salut kitai toi le roi du codage: vois ce que tu peux faire avec en rajoutant une variable a la place de &1 que l'on rajouterais a la fin de cEgo. Phylactere("tatatatat",",ePhylactereTalking,VARIABLE); EN METTANT CECI c.Ego.Say("&1"); A LA LIGNE 466 C'EST PAS MAL - Code:
-
Overlay* bulle = Overlay.CreateGraphical(pos_x, pos_y, ds.Graphic, true); cEgo.Say("&1"); // Attente J'ai fait le test j'ai du texte synchro avec une voix C'est peut etre pas tres clair mon explication Variable= une variable a mettre a la fin de la commande cEgo. Phylactere("tatatatat",ePhylactereTalking,VARIABLE); qui definirait le numero du speech et a la ligne 466 lancer le say avec cette variable cEgo.Say("VARIABLE"); LE MESSAGE SUIVANT EST PLUS EXPLICITE _________________ Ce qui est utile à beaucoup l'emporte sur les désirs du petit nombre. ( Spock)
Dernière édition par hanakin le Dim 14 Fév 2016 - 17:32, édité 1 fois |
|
| |
hanakin Cliqueur Amateur
Nombre de messages : 492
Age : 59
Localisation : Angers
Date d'inscription : 12/09/2012
| Sujet: Re: Phylactère Dim 14 Fév 2016 - 17:18 | |
| bon petit essai j'ai rajouter une globale variable voix j'ai rajouter cela dans le header (String voix) import function Phylactere(this Character* , String s, PhylactereQueueMode Mode = ePhylactereTalking,String voix); ligne 466 du script j'ai mis ça cEgo.Say(String.Format("%s",voix)); cela fonctionne si je mets &1 comme variable de base dans la global variable - Code:
-
function cEgo_Talk() { cEgo.Phylactere("Talking to yourself is a sign of madness!",ePhylactereTalking);
} mais comment faire ça avec la commande du dessus en mettant la viariable a la fin? Exemple: cEgo. Phylactere("Talking to yourself is a sign of madness!",ePhylactereTalking,&1); J'ai une erreur ici (ligne 104): - Code:
-
function noloopcheck Phylactere(this Character* , String str, PhylactereQueueMode mode, String voix) { detail de l'erreur: phylactere234.asc(104): Error (line 104): 'voix' is a global var; cannot use as name for local Ca marche quand je fais ça en enlevant String voix: - Code:
-
function cEgo_Look() { voix="&2"; cEgo.Phylactere("Damn, I'm looking good!",ePhylactereTalking); }
function cEgo_Interact() { voix="&3"; cEgo.Phylactere("You rub your hands up and down your clothes.",ePhylactereTalking); }
function cEgo_Talk() { voix="&1"; cEgo.Phylactere("Talking to yourself is a sign of madness!",ePhylactereTalking); } _________________ Ce qui est utile à beaucoup l'emporte sur les désirs du petit nombre. ( Spock) |
|
| |
Threepwood Adepte de la Grande Tasse Bleue
Nombre de messages : 144
Age : 52
Localisation : Hyères
Date d'inscription : 29/12/2012
| Sujet: Re: Phylactère Dim 14 Fév 2016 - 18:52 | |
| on dirait que vous approchez d'une soluce petit à petit ! |
|
| |
hanakin Cliqueur Amateur
Nombre de messages : 492
Age : 59
Localisation : Angers
Date d'inscription : 12/09/2012
| Sujet: Re: Phylactère Dim 14 Fév 2016 - 19:05 | |
| reflexion faites la deuxieme solution avec voix="&1"; est pas plus mal car phylactere pourras fonctionner aussi sans dialogues car avec la variable il manquera des parametres si on a pas de speech
tu peux essayer comme ça Threepwood juste pour voir ce que ça donne
Donc recap: Creation d'une variable global voix en string
dans le script phylactere ligne 466 juste avant //attente mettre: cEgo.Say(String.Format("%s",voix));
et dans les rooms:
function cEgo_Look() { voix="&2"; cEgo.Phylactere("Damn, I'm looking good!",ePhylactereTalking); }
function cEgo_Interact() { voix="&3"; cEgo.Phylactere("You rub your hands up and down your clothes.",ePhylactereTalking); }
function cEgo_Talk() { voix="&1"; cEgo.Phylactere("Talking to yourself is a sign of madness!",ePhylactereTalking); } _________________ Ce qui est utile à beaucoup l'emporte sur les désirs du petit nombre. ( Spock) |
|
| |
Threepwood Adepte de la Grande Tasse Bleue
Nombre de messages : 144
Age : 52
Localisation : Hyères
Date d'inscription : 29/12/2012
| Sujet: Re: Phylactère Dim 14 Fév 2016 - 19:19 | |
| Oulala je me suis un peu paumé dans tout ça ! bon de toute façon le doublage ça sera qu'a la fin et j'ai encore au moins 1 an de programmation a faire sur le jeu alors d'ici là on aura trouvé lol surtout si sur le forum ricain ils s'y mettent aussi EDIT : ha t'as fait un condensé pendant mon post je look |
|
| |
Kitai Délégué de la tasse bleue
Nombre de messages : 2907
Date d'inscription : 01/08/2006
| Sujet: Re: Phylactère Dim 14 Fév 2016 - 19:23 | |
| Il y a une façon un peu plus élégante de faire je pense hanakin, c'est de récupérer le code en début de texte, comme le fait la fonction Say de base. Tu peux rajouter le code suivant au tout début de la définition de la fonction Phylactere : - Code:
-
String voice = ""; if (str.StartsWith("&")) { int i = 1; while (str.Chars[i] >= '0' && str.Chars[i] <= '9') i++; if (i > 1) { voice = str.Substring(0, i); str = str.Substring(i, str.Length-i); } } Ensuite tu utilises directement la variable textuelle voice dans la commande Say que tu utilises à la ligne 466 dont tu parlais plus haut (après avoir vérifier qu'elle n'est pas vide, avec la fonction String.IsNullOrEmpty) _________________ 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 Dim 14 Fév 2016 - 19:49, édité 1 fois |
|
| |
Contenu sponsorisé
| Sujet: Re: Phylactère | |
| |
|
| |
| Phylactère | |
|