alias _gl_flashblend_update_11 "gl_flashblend 0"
alias gl_flashblend_update "_gl_flashblend_update_$r_shadow_realtime_dlight$r_showsurfaces"
-// this script allows swapping the primary and secondary fire buttons for each weapon, using the cl_swapattacks_* cvars
-
+// this script allows swapping the primary and secondary fire buttons for any weapon, using the cl_swapattacks_* cvars.
+// This part of the code is necessary to keep us firing when we switch weapons while holding a fire button pressed.
+// Also updates the keys before firing, so we don't have to switch to another weapon and back to apply the changes
set preattack_last 0
set preattack2_last 0
-alias +preattack "set preattack_last 1; firing_swap2 $firing_lastweapon; +checkattack"
-alias -preattack "set preattack_last 0; firing_swap2 $firing_lastweapon; -checkattack"
-alias +preattack2 "set preattack2_last 1; firing_swap2 $firing_lastweapon; +checkattack2"
-alias -preattack2 "set preattack2_last 0; firing_swap2 $firing_lastweapon; -checkattack2"
-alias firing_switch_atck_0 ""
-alias firing_switch_atck2_0 ""
-alias firing_switch_atck_1 "+preattack"
-alias firing_switch_atck2_1 "+preattack2"
-alias firing_switch "-preattack; -preattack2; firing_switch_atck_$preattack_last; firing_switch_atck2_$preattack2_last;"
-
+alias +preattack "firing_swap2 $firing_lastweapon; set preattack_last 1; +checkattack"
+alias -preattack "firing_swap2 $firing_lastweapon; set preattack_last 0; -checkattack"
+alias +preattack2 "firing_swap2 $firing_lastweapon; set preattack2_last 1; +checkattack2"
+alias -preattack2 "firing_swap2 $firing_lastweapon; set preattack2_last 0; -checkattack2"
+alias firing_switch_attack_0 ""
+alias firing_switch_attack2_0 ""
+alias firing_switch_attack_1 "+preattack"
+alias firing_switch_attack2_1 "+preattack2"
+alias firing_switch "-preattack; -preattack2; firing_switch_attack_$preattack_last; firing_switch_attack2_$preattack2_last;"
+// now apply changes to the key binds and get the weapon we are using
alias firing_decision_0 "alias +checkattack +attack; alias -checkattack -attack; alias +checkattack2 +attack2; alias -checkattack2 -attack2"
alias firing_decision_1 "alias +checkattack +attack2; alias -checkattack -attack2; alias +checkattack2 +attack; alias -checkattack2 -attack"
alias firing_swap2 "firing_decision_${$1}"
alias firing_swap "firing_swap2 cl_swapattacks_$1; set firing_lastweapon cl_swapattacks_$1; firing_switch"
-// this hook activates when we switch weapons, and allows us to script weapon specific properties like the fire button swapping script
+// this hook activates when we switch weapons, and allows us to script weapon specific properties (like the fire button swapping script)
alias cl_hook_activeweapon "firing_swap $1"
set sv_clones 0 "number of clones a player may make (reset by the \"kill\" command)"