You are not picking the currently held weapon in the condition, you need to do this to set those values to the temporary variable. Then when you use weapon.id etc it will relate to the currently held weapon. Also make sure it's a trigger once event on a key press or similar and not running constantly.