implemented register shot at function