How to turn message boxes into Ego dialog?

Started by Bavolis, Sun 18/06/2006 02:57:36

Previous topic - Next topic

Bavolis

I've looked through the FAQs and Manuals but didn't find the answer I was looking for (was probably right in front of my face at one point). I'm trying to figure out how to make it so when I click the "look" icon on anything, the main character says something like "That's a ____. I remember one time..." with his talking animation. In other words, I don't want to text box, I would like the words above his head as he talks as if he's addressing the "audience."

One other quick question - is there a way to make it so the main character plays a constant looping animation when he is standing in place? I tried with the idle animations, but after some reading it seems as though I'm using them incorrectly. From my understanding his stance animation is just the first frame of the walk animation - any way to increase the number?

Loving this engine - I should have an announcement ready soon.

Maverick

I'm not sure what exactly it is you are looking for. Do you have a problem with the dialog and how it is displayed in view or changing the character view to the "TalkView loop"?

For the second question you can take a look at this thread
http://www.adventuregamestudio.co.uk/yabb/index.php?topic=20277.msg247150#msg247150
Also take a look at SetIdleView in the manual if you are looking for a straight forward solution.

pslim

#2
I don't think there's a pull-down option for what you're wanting to do (if there is, someone will point it out and I'll look dumb, but that's okayÃ,  :=), so you'll need to do a miniscule amount of scripting.

Go to the interaction menu for whatever it is you want the player to be able to look at, find the "Look at" flag and pick "New Run Script action". Then pick Edit Script and type in:

character[EGO].Say("That's a whatever. I remember one time...")

where EGO is your character's script name.

What works for me personally when attempting to script anything (because I'm not very savvy) is to do it with the help file open. I think about what I want to happen and then I search keywords in the help file until I find a scripting function that does what I want. Then it's just a matter of following the example and testing it out.
 

Ashen

QuoteI don't think there's a pull-down option for what you're wanting to do (if there is, someone will point it out and I'll look dumb, but that's okay   :=)

If I understand the question correctly, there're two options, so prepare to look double-dumb ;). The first is to check the 'Always display text as speech' option on the 'General settings' window, which will make ALL text appear as if it's being spoken. The other (I'm assuming you're using the Interaction Editor 'Game - Display a message' command) is to set the 'Display message as' drop down to the character you want to say it, instead of 'Normal text'.
That said, I'd personally recommend you start using scripting (as pslim suggested) as soon as you can, as the Interaction Editor commands are a bit limiting.

Your second question is answered in the BFAQ. Basically it's as Maverick said - use Character.SetIdleView (or 'Character - Set idle animation' in the interaction editor), and set a delay of 0. By default there's a delay of (I think) 30 seconds before the Idle animation starts.
I know what you're thinking ... Don't think that.

Bavolis

Thanks for all the responses, I'll be able to scavenge info from all of them! It sounds like I missed some really obvious stuff, which is normal for me (absent minded game designer). I really appreciate the fast answers - now I can jump back in tonight without any frustration  :)

SMF spam blocked by CleanTalk