public override void OnSetCanLoot(Mobile from, bool canLoot) { Party p = Party.Get(from); if (p == null) { from.SendLocalizedMessage(3000211); // You are not in a party. } else { PartyMemberInfo mi = p[from]; if (mi != null) { mi.CanLoot = canLoot; if (canLoot) { from.SendLocalizedMessage(1005447); // You have chosen to allow your party to loot your corpse. } else { from.SendLocalizedMessage(1005448); // You have chosen to prevent your party from looting your corpse. } } } }
public void Add(Mobile m) { PartyMemberInfo mi = this[m]; if (mi == null) { m_Members.Add(new PartyMemberInfo(m)); m.Party = this; Packet memberList = Packet.Acquire(new PartyMemberList(this)); Packet attrs = Packet.Acquire(new MobileAttributesN(m)); for (int i = 0; i < m_Members.Count; ++i) { Mobile f = ((PartyMemberInfo)m_Members[i]).Mobile; f.Send(memberList); if (f != m) { f.Send(new MobileStatusCompact(m.CanBeRenamedBy(f), m)); f.Send(attrs); m.Send(new MobileStatusCompact(f.CanBeRenamedBy(m), f)); m.Send(new MobileAttributesN(f)); } } Packet.Release(memberList); Packet.Release(attrs); } }