RequestFiredEvent(weapon, request);
If request is not 0, than the weapon sends out a Fire event every time it fires, where E.location is the weapon itself.