Have-a-go-hero punched drunk gunman in the face and wrestled