Решил с помощью PTaH. Скорее всего, можно обойтись без него, но он у меня всё равно стоит, и в нём есть встроенный пре-хук функции Weapon_CanUse.
#pragma semicolon 1
#include <PTaH>
public void OnPluginStart()
{
PTaH(PTaH_WeaponCanUsePre, Hook, WeaponCanUse);
}
public Action...