Entity Processing-related woes
Displaying 1-9 of 9 total.
1
Interference22
|
Ok, lets say I have a text box routine. Whenever this routine is called, I want everything entity-related and all map animation to stop DEAD: time freezes. The textbox then does its stuff, the player presses enter and we continue. Easy, huh? Well, not quite.
Presumably, you'd be able to do this by writing to the screen, ShowPage-ing and NOT calling Render(). However, it seems entites are still processed even though map animation isn't during a ShowPage. As a result, nearby entities seem to "jump" position. Argh! Is this fixeable (ie. stop ShowPage processing entities) without breaking something else or is there a simple way around it?
Posted on 2004-04-16 00:23:55
|
Interference22
|
Darn. It has only just occured to me that this post is technically in the wrong forum. I was throw for a moment by something with the word help in it.
Posted on 2004-04-16 00:50:24
|
vecna
|
I kinda like to see entities move during a text box, it gives a sense of real-time to the game, but thats just a matter of opinion (in sully, I set entity.speed[event.entity]=0 at the start of a text event to just pause the one entity that you're talking to.)
However, there will be a function to pause and restore global entity processing in the next exe.
Posted on 2004-04-16 01:46:36
|
Interference22
|
Yay, thanks. I might re-jig my textbox to do some Sully-esque coolness like you suggested. That sounds like a fairly elegant solution.
Posted on 2004-04-17 00:22:15
|
Gayo
|
Yeah, it's nice to have entities move around during speech. It's just that it makes scenes way harder to choreograph.
Posted on 2004-04-18 21:08:07
|
Interference22
|
Yeah, it's nice to have entities move around during speech. It's just that it makes scenes way harder to choreograph.
That's exactly why I like to keep things still. Baldur's Gate did it like that and it was quite effective.
Posted on 2004-04-19 00:54:00
|
Gayo
|
Whoa. I had no idea how serious a problem this was until I started working on a pause routine. It's actually impossible to stop entity processing while continuing the render cycle unless you're willing to destroy every entity's speed value. It would be really, really nice if there were a way to do this that didn't require you to store a value someplace for when the pause ends, which is what you currently do with speed. I'm not sure if an entity.on type thing is doable at this point, but even if there were just a function to turn all entity processing off wholesale that'd be helpful.
[Edit:] An afterthought -- one solution you could employ that wouldn't require adding new data to the entity object would be to have the game treat negative entity speeds as 0, rather than locking up the game as they do now. This way, coders could set an entity speed negative to stop the entity without destroying the initial value.
Posted on 2004-05-01 10:43:01 (last edited on 2004-05-01 10:48:27)
|
vecna
|
Gayo.
Just stop posting!
SetEntitiesPaused(1);
Posted on 2004-05-01 14:50:59
|
Gayo
|
I knew that! I was just...testing you!
...
Well, at least this time I checked the text file and the board first. Oof.
Posted on 2004-05-01 22:52:26
|