People complained about the Zeta Space interface because they wanted
the option of doing numerous things either by keyboard or by mouse.
One of these was selecting conversational items via mouse click. So
I turned the numbers into hyperlinks. So far, so good. Then came the
matter of allowing the conversation to be advanced either by keypress
or mouse click. That too was implemented easily enough. Except...
sometimes the text buffer window would refuse to accept input after
the mouse was used to advance the conversation. You could click in
the text buffer window, and a blinking cursor would appear, but attempt
to *type* anything, and the cursor would disappear. What's more, the
text would occasionally scroll *down* a line on these occasions. The
only way to proceed from this point would be to click something -- a
hyperlink, say, or another window that was expecting a mouse click.
But that had side effects. A text buffer window that doesn't accept
input isn't acceptable, even if there's a way to "jiggle the handle"
and get it to do so again.
I tried poking around, trying different things, to see what might be
causing the problem. I had a mouse click cancel char input, or request
char input, or just return 2. No difference (except that the request
requested the input right away.) I thought that maybe the problem
might be a line input request on top of an existing char input or line
input request that hasn't been dealt with, but I don't know what to do
about that. Anyway, the short of it is, my head hurts now.
So. All I want to do is make a pause that can be cleared by either a
mouse click in a certain graphics window or a keypress in the text buffer
window, with the exact same effect. Any ideas how I might achieve that?
-----
Adam Cadre, Brooklyn, NY
http://adamcadre.ac
< scratches beard >
< looks in GWindows >
< scratches beard again >
How's this pause being generated? KeyCharPrimitive()?
Seems like the thing to to then is to have your mouse click dummy-up a
character event. (if it's being generated by KeyboardPrimitive(), it's
even easier. Just have HandleGlkEvent dummy-up the input as is
described in the Game Author's Guide.)
I'll need to think more if you want concrete code.
Or at least that I'm erratic, late, and harried.
Sorry about that, everyone.
--Z
"And Aholibamah bare Jeush, and Jaalam, and Korah: these were the borogoves..."
*
* Make your vote count. Get your vote counted.
Which he has since provided and which seems to work. Thanks, Ross!