public void RemoveMember(Creature creature)
{
this.RemoveMemberSilent(creature);
// Handle quest
if (this.Quest != null)
{
// Unset if leader left or not enough members remain,
// or remove quest from member's manager.
if (creature == this.Leader || this.MemberCount < ChannelServer.Instance.Conf.World.PartyQuestMinSize)
this.UnsetPartyQuest();
else
creature.Quests.Remove(this.Quest);
}
if (this.MemberCount == 0)
{
this.Close();
return;
}
Send.PartyLeaveUpdate(creature, this);
if (IsOpen)
Send.PartyMemberWantedRefresh(this);
// What is this?
//Send.PartyWindowUpdate(creature, party);
if (this.Leader == creature)
{
this.AutoChooseNextLeader();
this.Close();
Send.PartyChangeLeader(this);
}
}