implemented fighting