Если его не передавать, то вылетает ошибка, из за того что Gun и GameHUD создаются в одном конструкторе GameScene. Причем не важен порядок их инициализации в конструкторе, все равно будет вылетать. Могу сделать метод setGameHUD, возможно поможет