public override void Visit(BasicState basicState) { if (baseAttackStrategy.GetRange() < player.DistanceToUnit(targetUnit)) { basicState.ChaseTarget(targetUnit); } else { basicState.AttackTarget(targetUnit); } }