Clang no longer complains

Fixed what seemed to be at least two bugs, simplified some logic, added a new function bool player::can_uncanny_dodge()