public bool SetLeader(Creature creature)
{
lock (_sync)
{
if (!_members.Contains(creature))
return false;
}
// Close ad if it was open and reopen it after changing
// leader, to make it appear above his head instead.
var wasOpen = this.IsOpen;
if (wasOpen)
this.Close();
this.Leader = creature;
Send.PartyChangeLeader(this);
if (wasOpen)
this.Open();
return true;
}