Refactor shoot with gamble and interact shooting behaviour, part 2 complete.