Displaying speech/dialog text before GUI

Started by aussie, Thu 22/04/2004 12:26:15

Previous topic - Next topic

aussie

I have my inventory GUI on the right hand side of the screen. All game action takes place on the left.

I'd like to display all text as speech, in the LucasArts manner.

However, when the text string gets a bit long, part of it runs behind the inventory, and thus it cannot be read.

Is there a way I can bring the speech text before the inventory?

or else,

Is there a way I can get text to drop to the next line whenever it is about to get behind the inventory?

Cheers,

I hope I have not missed a very obvious solution...
It's not the size of the dog in the fight. It's the size of the fight in the dog.

http://www.freewebs.com/aussiesoft/

Ashen

Are you just talking about 'narrative' text, or actual character speech as well? If it's just the narrator text you're having the problem with, using the DisplayAt (); command lets you set a maximum width. If it's character speech as well, you'd probably have to use an 'if...' statement to get the character location, and if they're too far over use DisplaySpeechAt (); to place the text. I can probably help with the scripting for that, if you need it.

Pumaman

How wide is your GUI? Is the text width simply too wide to fit in the available screen space, or is there a gap to the left of it, and it goes under the GUI to the right?

aussie

Quote
How wide is your GUI? Is the text width simply too wide to fit in the available screen space, or is there a gap to the left of it, and it goes under the GUI to the right?

The GUI takes up about a third of the screen, the "right hand side third" so to speak.

I would like all game action to take place on the two thirds of the screen I have on the left.

Whenever a character speaks, the text is displayed normally as speech. If the text is too long, part of it runs behind the GUI.

It would be fine if the GUI wasn't there, if that's what you're referring to.

I would like the text to remain confined to the left part, that is, to switch to the next line whenever text is about to run behind the GUI.

Cheers.
It's not the size of the dog in the fight. It's the size of the fight in the dog.

http://www.freewebs.com/aussiesoft/

SSH

I guess that most games with LucasArts style text have GUIs top or bottom and not to the side like this. Maybe there could be some SetSpeechArea(top, bottom, left, right) style thing to set up the area in whioch LucasArts speech wraps around. Calculating the stuff for DisplaySpeechAt would be a pain.

CJ, do you have a handy formula to describe where the speech goes for Lucasarts style text?

ie. DisplaySpeech(charid, text)  is equiavlent to...
DisplaySpeechAt(character[charid].x-SOMETHING, character[charid].y-SOMETHING, GetTextWidth(font, string) > LHS-xpos ? max_width, textwidth, string);

or something like that...
12

Pumaman

Yes, what I'd need to add is some way of limiting the max width of speech. I'll add it to my list.

aussie unplugged


SMF spam blocked by CleanTalk