public List<Creature> GetMembersInRange(Creature creature, int range = -1)
{
var result = new List<Creature>();
var pos = creature.GetPosition();
if (range < 0)
range = 3000;
lock (_sync)
{
foreach (var member in _members.Where(a => a != creature && a.RegionId == this.Leader.RegionId))
{
if (range == 0 || pos.InRange(member.GetPosition(), range))
result.Add(member);
}
}
return result;
}