Added bounds checking for firing