private void HandleGatherCommand(IControllable current)
{
var currentAsGatherer = current as IGatherer;
if (currentAsGatherer != null)
{
//List<WorldObject> objectsAtGathererPosition = new List<WorldObject>();
IResource resource = null;
foreach (var obj in this.resources)
{
if (obj.Position == current.Position)
{
resource = obj;
break;
}
}
if (resource != null)
{
HandleGathering(currentAsGatherer, resource);
}
else
{
Console.WriteLine("No resource to gather at {0}'s position", current);
}
}
else
{
Console.WriteLine("{0} can't do that", current);
}
}