Combat function

The basic combat function