Interactive Character... offscreen? (SORTED)

Started by flamingdog, Thu 24/03/2005 04:39:05

Previous topic - Next topic

flamingdog

Hi,

I'm really really new to this AGS thing, and I'm starting to get to grips with some of the basics of the engine, to the point where I think I'm more or less ready to work on my first 'proper' puzzle.

My little vignette involves a guy trapped in a room, and I want to have him be able to talk to the guard on the other side of the locked door, but I can't seem to figure out the best way to have the guard character 'there', but not visible... can anyone give me some pointers as to how I can do this? Could I do it by making an invisible sprite for him, and positioning him in the right place, or is there a more elegant way to achieve it? When I get the puzzle done, I'll post the results!

Thanks!

Flamingdog

MrColossal

If a character is not in the room and you make them speak, the text will appear in the last place they were, give it a try

there is also, in the manual SayAt which lets you place the text on screen in a certain spot.

Any of that help?
"This must be a good time to live in, since Eric bothers to stay here at all"-CJ also: ACHTUNG FRANZ!

Radiant

If needed for other commands (e.g. you want Sierra-style speech rather than Lucas, or need the character to move or turn or whatever), I'd suggest
1. sticking him in a non-walkable behind some walkbehind,
2. sticking him off-screen, or
3. using SetCharacterTransparency (char, 100)

Huw Dawson

For me, all I do is stick 'em behind a walk behind area you can't get to. Then start up a dialouge, and BINGO.
Post created from the twisted mind of Huw Dawson.
Not suitible for under-3's due to small parts.
Contents may vary.

Candle

SetCharacterTransparency
SetCharacterTransparency (CHARID, int amount)

Sets CHARID to be AMOUNT % transparent.
Setting AMOUNT to 100 means it is totally invisible, and lower values represent varying levels of transparency. Pass AMOUNT as 0 to stop the character being transparent.

NOTE: Transparency currently only works in hi-color games, and the character sprites must have been imported in hi-colour for the transparency to work.

NOTE: Having a large transparent character can significantly slow down the engine.

Example:

SetCharacterTransparency(EGO,50);

will make the character EGO look semi transparent.

don_tomaso

You can also just make a view which only has one, invisible, sprite, and then when you need to have an invisible character you tell it to use that view instead

flamingdog

#6
Thanks everyone! I'll give it a try. SayAt sounds like it might work the best... not sure. I'll play around and see.

Thanks again!

FD

EDIT: I solved it, all I did was take my guard character and put him in 'room 2' (which technically doesn't exist yet), and then made it so the dialog runs when you interact with the door. A few alterations to the dialog tree to make it plausible, and hey presto! Thanks for your help, all.

SMF spam blocked by CleanTalk