shooting logic