Subversion Repositories eduke32

Rev

Show changed files | Details | Compare with Previous | Blame | RSS feed

Filtering Options

Rev Age Author Path Log message Diff
4440 2555d 14h terminx /polymer/eduke32/source/jmact/control.c Android updates from Emile. DONT_BUILD.  
4386 2580d 0h terminx /polymer/eduke32/source/jmact/control.c Some basic changes for Android support. DONT_BUILD.  
4200 2672d 2h hendricks266 /polymer/eduke32/source/jmact/control.c Rewrite and unify the handling of the scrollwheel between layers, fixing it in the editor's 2D mode and tile selector under SDL.

The scrollwheel is unique among PC input because it has no innate "hold length". Previously, the layers gave the mousewheel a fake hold length to allow the not-necessarily-synchronous game/editor code to pick up the input before the layers marked it as "no longer pressed". This passed under Windows, but it didn't slide under SDL.

Besides the two problems listed above, it also potentially limited the rate of weapon selection, where scrolling too fast would not register every clicks. [Unrelatedly, this is still the case when you scroll faster than the game's own tickrate, but addressing that would require rewriting input handling to go through a list of "events" for each tic instead of looking at overall pressed/unpressed states.]
 
4093 2741d 20h helixhorned /polymer/eduke32/source/jmact/control.c Revert "Move CONTROL_ProcessBinds() to CONTROL_GetInput()." [r3981]

That change confounded character-based input with e.g. HUD control
under certain circumstances, see
http://forums.duke4.net/topic/6845-eduke32-savegame-annoyances/

Also, BUILD_LUNATIC ... just for the hit.sect -> hit.sector change.
 
3981 2807d 10h terminx /polymer/eduke32/source/jmact/control.c Move CONTROL_ProcessBinds() to CONTROL_GetInput(). I don't think this breaks anything; if it does, revert it!  
3214 3067d 8h terminx /polymer/eduke32/source/jmact/control.c Factor out duplicate code in CONTROL_BindKey/CONTROL_BindMouse/CONTROL_FreeKeyBind/CONTROL_FreeMouseBind  
3209 3068d 18h helixhorned /polymer/eduke32/source/jmact/control.c Fix bound keys' commands being truncated in settings.cfg, control* cleanup.

- provide functions instead of messing with CONTROL_*Binds directly
- comment out a few more unused functions
- make clear what memory (alloc'd or const char *) 'keybind' members use
- for keys with no name, use "<?>"
 
3200 3069d 17h terminx /polymer/eduke32/source/jmact/control.c Further minor MACT cleanups  
3198 3069d 17h terminx /polymer/eduke32/source/jmact/control.c Remove useless CONTROL_UserInputCleared. It was useless in the literal sense, e.g not actually used anywhere. :p  
3197 3069d 17h terminx /polymer/eduke32/source/jmact/control.c Change key bindings to use dynamic allocation and remove the previous limit of 128 characters per key bind  
3196 3069d 17h terminx /polymer/eduke32/source/jmact/control.c Minor cleanups in MACT control.c  
3195 3069d 17h terminx /polymer/eduke32/source/jmact/control.c Rename a few variables we've added to MACT over the years to be more consistent with the rest of its naming conventions  
3127 3080d 10h helixhorned /polymer/eduke32/source/jmact/control.c Prettify some code where I felt was necessary.  
3124 3080d 10h helixhorned /polymer/eduke32/source/jmact/control.c Clean up control.c.

- Remove everything using CONTROL_KeyMapping, which was only written to.
- Remove unused functions, make local ones static.
- Remove private function declarations in _control.h.
 
2940 3158d 12h helixhorned /polymer/eduke32/source/jmact/control.c control layer: comment out some unused functions and stuff.  
2728 3236d 17h hendricks266 /polymer/eduke32/source/jmact/control.c Massive menu input control revamp/cleanup/factor. (added: input.[ch])

New Wii control defaults for the Wii Remote + Nunchuk and the Classic Controller. This includes new code added just so that the Home key brings up the menu in-game, reducing the need for a USB keyboard.

On the technical side, raw joystick access (comparable to what is available for keyboard and mouse) is now present in jmact, on the game side. (added: joystick.[ch])

Using this new raw joystick access, I replaced tueidj's hack to map A and B to LMB/RMB and D-Pad Up/Down to the scrollwheel.

I made the menus more friendly to mouse and joystick browsing by adding and unifying checks and clears for various buttons and gamefuncs. In fact, the majority of the time spent on this commit was tracking down problems that appeared with the factoring and trying to understand the menu system and the way input checks are precariously executed.

In addition, "Press any key or button to continue" now truly means what it says.

As a result of incorporating proper raw access into control.c instead of it directly accessing the implementaiton, the program *may* no longer be affected by joystick input when it is out of focus. This follows the pattern set by the mouse, and I think this is a positive change.

A small bonus: In the classic/old keyboard preset, the key for Show_Console has been changed from '`' to 'C' because '`' is taken by Quick_Kick.
 
2624 3269d 21h helixhorned /polymer/eduke32/source/jmact/control.c Patch adding Wii support by tueidj, part 4: joystick support

- sdlayer.c: custom "get joystick button names" routine
- jmact/mouse.c: packs some joystick events into the value returned by
MOUSE_GetButtons(): bits used are 256, 512, 4096, 8192
- MOUSE_Init() --> Mouse_Init(), presumably because of a name clash?
- comments out right-shift of joystick analog values by 5, maybe this fixes
the scale problems with the joystick on the PC too?
 
2334 3349d 22h helixhorned /polymer/eduke32/source/jmact/control.c jmact/control.c: rewrite strange looking loop.  
1740 3768d 11h helixhorned /polymer/eduke32/source/jmact/control.c Atrributify various function declarations. Right now the attributes used are noreturn, nonnull and format, the latter allowing us to catch silly printf errors. Again, these range from relatively benign to disastrous.  
1672 3921d 18h terminx /polymer/eduke32/source/jmact/control.c mostly multiplayer fixes among other things  

Show All