diff options
| author | Magnus Auvinen <magnus.auvinen@gmail.com> | 2008-03-29 15:00:04 +0000 |
|---|---|---|
| committer | Magnus Auvinen <magnus.auvinen@gmail.com> | 2008-03-29 15:00:04 +0000 |
| commit | e1fbab87a1d5cebac4b4c5efb0c26e8ba7e52031 (patch) | |
| tree | e81cbc85a568dc7a93bd12dfdb7358e21f73c169 | |
| parent | f77db4768572ac5a8765f9109504ce5c4cb50c95 (diff) | |
| download | zcatch-e1fbab87a1d5cebac4b4c5efb0c26e8ba7e52031.tar.gz zcatch-e1fbab87a1d5cebac4b4c5efb0c26e8ba7e52031.zip | |
fixed problem that binds get bound again
| -rw-r--r-- | src/game/client/gc_console.cpp | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/src/game/client/gc_console.cpp b/src/game/client/gc_console.cpp index 4eb14118..431c9d6f 100644 --- a/src/game/client/gc_console.cpp +++ b/src/game/client/gc_console.cpp @@ -227,10 +227,15 @@ void binds_set(int keyid, const char *str) dbg_msg("binds", "bound %s (%d) = %s", inp_key_name(keyid), keyid, keybindings[keyid]); } -void binds_default() +void binds_unbindall() { for(int i = 0; i < KEY_LAST; i++) keybindings[i][0] = 0; +} + +void binds_default() +{ + binds_unbindall(); // set default key bindings binds_set(KEY_F1, "toggle_local_console"); @@ -307,6 +312,13 @@ static void con_unbind(void *result, void *user_data) binds_set(id, ""); } + +static void con_unbindall(void *result, void *user_data) +{ + binds_unbindall(); +} + + static void con_dump_binds(void *result, void *user_data) { for(int i = 0; i < KEY_LAST; i++) @@ -320,6 +332,7 @@ static void con_dump_binds(void *result, void *user_data) void binds_save() { char buffer[256]; + client_save_line("unbindall"); for(int i = 0; i < KEY_LAST; i++) { if(keybindings[i][0] == 0) @@ -385,6 +398,8 @@ void client_console_init() // bindings MACRO_REGISTER_COMMAND("bind", "sr", con_bind, 0x0); MACRO_REGISTER_COMMAND("unbind", "s", con_unbind, 0x0); + MACRO_REGISTER_COMMAND("unbindall", "", con_unbindall, 0x0); + MACRO_REGISTER_COMMAND("dump_binds", "", con_dump_binds, 0x0); // chatting |