some fight logic