ModernUO/Projects/Scripts/Engines/Party/AddPartyTarget.cs
2019-08-02 18:16:11 -07:00

45 lines
No EOL
1.6 KiB
C#

using Server.Targeting;
namespace Server.Engines.PartySystem
{
public class AddPartyTarget : Target
{
public AddPartyTarget(Mobile from) : base(8, false, TargetFlags.None)
{
from.SendLocalizedMessage(1005454); // Who would you like to add to your party?
}
protected override void OnTarget(Mobile from, object o)
{
if (o is Mobile m)
{
Party p = Party.Get(from);
Party mp = Party.Get(m);
if (from == m)
from.SendLocalizedMessage(1005439); // You cannot add yourself to a party.
else if (p != null && p.Leader != from)
from.SendLocalizedMessage(1005453); // You may only add members to the party if you are the leader.
else if (m.Party is Mobile)
{
}
else if (p != null && p.Members.Count + p.Candidates.Count >= Party.Capacity)
from.SendLocalizedMessage(1008095); // You may only have 10 in your party (this includes candidates).
else if (!m.Player && m.Body.IsHuman)
m.SayTo(from, 1005443); // Nay, I would rather stay here and watch a nail rust.
else if (!m.Player)
from.SendLocalizedMessage(1005444); // The creature ignores your offer.
else if (mp != null && mp == p)
from.SendLocalizedMessage(1005440); // This person is already in your party!
else if (mp != null)
from.SendLocalizedMessage(1005441); // This person is already in a party!
else
Party.Invite(from, m);
}
else
{
from.SendLocalizedMessage(1005442); // You may only add living things to your party!
}
}
}
}