Hi,
Clarence "Sparr" Risher wrote:
As started with my 320x240 support code, I am working on multiple
independent patches that will make enigma work on various platforms,
particularly the gp2x handheld. To that end, my next step is going to
be in the realm of input devices. Last time I did this I wrote some
very hacky code to direcly poll the device's buttons (including
joystick directions) and trigger the appropriate mouse/keyboard event
handlers. This time I hope to produce a more general solution. I
want to make the game friendly to using any input device (keyboard,
mouse, joystick) for any type of input (marble movement, hotkeys, menu
navigation, etc). Playing the game with a d-pad (as on the gp2x) or a
joystick is a very different experience from playing with the mouse,
so I want to ask here if there is any sort of philosophical objection
to a change like this?
PS: If you haven't played my old gp2x port, what I did for marble
movement was to make the d-pad act like constant-speed mouse movement
in the given direction, and then i made two modifier buttons to change
the mouse sensitivity on the fly. About 80% of existing levels are
solvable with this control scheme, and I hope to refine it this time.
Admittedly I never owned any gaming computer device. But your approach
of constant-speed mouse movement plus speed control via 2 buttons sounds
reasonable.
Please note that we have major reengineering plans for the whole
"backend" event handling part due to the upcoming support for 2 player
networking games, journaling, replay and game save support. All basic
code of server.cc, client.cc is subject to this reengineering process.
For reasons of stability we did not start with the coding in the 1.10
trunk. To avoid any delay of 1.10 we will not merge any patches onto the
trunk. All event handling changes are post 1.10 topics.
Any concept and code that limits itself to feed modified events into the
central game.cc eventloop simulating mouse and keyboard events of a pc
will be fine. This should be sufficient for your constant-speed mouse
movement approach. But even for this part you may profit from the
upcoming reengineering.
Concerning the "frontend" menu control I do like the current separation
from the "backend" event handling part. Even though there will still be
menu changes and additions for Enigma 1.10, I am not fond of major
reengineeing in these parts at the moment, too. But I am very eager to
see your concepts for this part.
As you proofed capable of digging through all the frontend code for the
introduction of the new screen resolution I would prefer if you join us
in our effort to finish up 1.10 first. After the release I would be glad
to work together with you on the event handling part.
Greets,
Ronald
_______________________________________________
Enigma-devel mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/enigma-devel