On 2013-11-07 01:11, Kevin Zheng wrote:
> On 11/03/2013 11:15, Arvid Brodin wrote:
>> Anyway, this needs to be expressed with two keybindings in my code: one with 
>> no
>> modifiers (called "None" in the keybindings dialog), and one with the "Run" 
>> modifier. My code ignores the 'N' here since it means "no flags" and only 
>> looks 
>> at the 'R' - which of course breaks things. I will figure out a solution.
> 
> I'll try to break them down into two bindings for each command. But this
> seems cumbersome and bloated, and deserves to be fixed.

I've been thinking about this a bit. 

Hitherto, we've presented all keys equally to the user (direction keys look no 
different than other keys in the interface). But we've treated them differently
internally, using the run and fire "hacks" - so even though they appear no 
different
than other keys to the user, they actually work differently in combination with 
the
modifier keys. This has also caused the "Run" and "Fire" modifiers to be mixed 
in
with the Ctrl and Shift modifiers for other keys. Confusing is the word, I 
think. 

My patches aim to treat all keys in the same way internally - no "hacks". This 
also
means the user does not get the benefits of the "special internal tratment" 
that was
given before. Cumbersome seems like a fitting description.

Perhaps what we should do is the exact opposite of what's been done before: 
give the 
direction keys special treatment in the _interface_, but not in the code.

That could mean adding a new part to the Keybindings dialog, where you bind the 
keys 
for "North", "South", etc, and also select the modifier keys to use for Run and 
Fire.

Internally, the three needed bindings per key could then be created 
automatically.

Of course, we would have to agree about the default set of direction keys... ;)


-- 
Arvid
_______________________________________________
crossfire mailing list
[email protected]
http://mailman.metalforge.org/mailman/listinfo/crossfire

Reply via email to