diff options
| author | Magnus Auvinen <magnus.auvinen@gmail.com> | 2008-03-23 10:14:35 +0000 |
|---|---|---|
| committer | Magnus Auvinen <magnus.auvinen@gmail.com> | 2008-03-23 10:14:35 +0000 |
| commit | e891a7a75bafb95caeebb8c74d871e5f5d9ab4f7 (patch) | |
| tree | bb9049c9dcfcfe2673aa8e7084407571e32f7194 /src | |
| parent | fb64675ad62ecede239ab333dc56d26274f422d4 (diff) | |
| download | zcatch-e891a7a75bafb95caeebb8c74d871e5f5d9ab4f7.tar.gz zcatch-e891a7a75bafb95caeebb8c74d871e5f5d9ab4f7.zip | |
fixed all the weapon switching bugs
Diffstat (limited to 'src')
| -rw-r--r-- | src/game/client/gc_console.cpp | 10 | ||||
| -rw-r--r-- | src/game/client/gc_hooks.cpp | 3 |
2 files changed, 10 insertions, 3 deletions
diff --git a/src/game/client/gc_console.cpp b/src/game/client/gc_console.cpp index a2700478..892c11f7 100644 --- a/src/game/client/gc_console.cpp +++ b/src/game/client/gc_console.cpp @@ -349,6 +349,12 @@ static void con_key_input_weapon(void *result, void *user_data) input_data.wanted_weapon = w; } +static void con_key_input_nextprev_weapon(void *result, void *user_data) +{ + con_key_input_counter(result, user_data); + input_data.wanted_weapon = 0; +} + static void con_toggle_local_console(void *result, void *user_data) { console_toggle(0); @@ -399,8 +405,8 @@ void client_console_init() MACRO_REGISTER_COMMAND("+weapon4", "", con_key_input_weapon, (void *)4); MACRO_REGISTER_COMMAND("+weapon5", "", con_key_input_weapon, (void *)5); - MACRO_REGISTER_COMMAND("+nextweapon", "", con_key_input_counter, &input_data.next_weapon); - MACRO_REGISTER_COMMAND("+prevweapon", "", con_key_input_counter, &input_data.prev_weapon); + MACRO_REGISTER_COMMAND("+nextweapon", "", con_key_input_nextprev_weapon, &input_data.next_weapon); + MACRO_REGISTER_COMMAND("+prevweapon", "", con_key_input_nextprev_weapon, &input_data.prev_weapon); MACRO_REGISTER_COMMAND("+emote", "", con_key_input_state, &emoticon_selector_active); MACRO_REGISTER_COMMAND("+scoreboard", "", con_key_input_state, &scoreboard_active); diff --git a/src/game/client/gc_hooks.cpp b/src/game/client/gc_hooks.cpp index d3feb871..601575f3 100644 --- a/src/game/client/gc_hooks.cpp +++ b/src/game/client/gc_hooks.cpp @@ -608,7 +608,8 @@ extern "C" void modc_message(int msgtype) else if(msgtype == NETMSGTYPE_SV_WEAPON_PICKUP) { NETMSG_SV_WEAPON_PICKUP *msg = (NETMSG_SV_WEAPON_PICKUP *)rawmsg; - picked_up_weapon = msg->weapon+1; + if(config.cl_autoswitch_weapons) + input_data.wanted_weapon = msg->weapon+1; } else if(msgtype == NETMSGTYPE_SV_READY_TO_ENTER) { |