fight logic