Overwrite
Complete Overwrite of the Folder with the free shard. ServUO 57.3 has been added.
This commit is contained in:
121
Scripts/Services/Party/PartyCommands.cs
Normal file
121
Scripts/Services/Party/PartyCommands.cs
Normal file
@@ -0,0 +1,121 @@
|
||||
using System;
|
||||
|
||||
namespace Server.Engines.PartySystem
|
||||
{
|
||||
public class PartyCommandHandlers : PartyCommands
|
||||
{
|
||||
public static void Initialize()
|
||||
{
|
||||
PartyCommands.Handler = new PartyCommandHandlers();
|
||||
}
|
||||
|
||||
public override void OnAdd(Mobile from)
|
||||
{
|
||||
Party p = Party.Get(from);
|
||||
|
||||
if (p != null && p.Leader != from)
|
||||
from.SendLocalizedMessage(1005453); // You may only add members to the party if you are the leader.
|
||||
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
|
||||
from.Target = new AddPartyTarget(from);
|
||||
}
|
||||
|
||||
public override void OnRemove(Mobile from, Mobile target)
|
||||
{
|
||||
Party p = Party.Get(from);
|
||||
|
||||
if (p == null)
|
||||
{
|
||||
from.SendLocalizedMessage(3000211); // You are not in a party.
|
||||
return;
|
||||
}
|
||||
|
||||
if (p.Leader == from && target == null)
|
||||
{
|
||||
from.SendLocalizedMessage(1005455); // Who would you like to remove from your party?
|
||||
from.Target = new RemovePartyTarget();
|
||||
}
|
||||
else if ((p.Leader == from || from == target) && p.Contains(target))
|
||||
{
|
||||
p.Remove(target);
|
||||
}
|
||||
}
|
||||
|
||||
public override void OnPrivateMessage(Mobile from, Mobile target, string text)
|
||||
{
|
||||
if (text.Length > 128 || (text = text.Trim()).Length == 0)
|
||||
return;
|
||||
|
||||
Party p = Party.Get(from);
|
||||
|
||||
if (p != null && p.Contains(target))
|
||||
p.SendPrivateMessage(from, target, text);
|
||||
else
|
||||
from.SendLocalizedMessage(3000211); // You are not in a party.
|
||||
}
|
||||
|
||||
public override void OnPublicMessage(Mobile from, string text)
|
||||
{
|
||||
if (text.Length > 128 || (text = text.Trim()).Length == 0)
|
||||
return;
|
||||
|
||||
Party p = Party.Get(from);
|
||||
|
||||
if (p != null)
|
||||
p.SendPublicMessage(from, text);
|
||||
else
|
||||
from.SendLocalizedMessage(3000211); // You are not in a party.
|
||||
}
|
||||
|
||||
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 override void OnAccept(Mobile from, Mobile sentLeader)
|
||||
{
|
||||
Mobile leader = from.Party as Mobile;
|
||||
from.Party = null;
|
||||
|
||||
Party p = Party.Get(leader);
|
||||
|
||||
if (leader == null || p == null || !p.Candidates.Contains(from))
|
||||
from.SendLocalizedMessage(3000222); // No one has invited you to be in a party.
|
||||
else if ((p.Members.Count + p.Candidates.Count) <= Party.Capacity)
|
||||
p.OnAccept(from);
|
||||
}
|
||||
|
||||
public override void OnDecline(Mobile from, Mobile sentLeader)
|
||||
{
|
||||
Mobile leader = from.Party as Mobile;
|
||||
from.Party = null;
|
||||
|
||||
Party p = Party.Get(leader);
|
||||
|
||||
if (leader == null || p == null || !p.Candidates.Contains(from))
|
||||
from.SendLocalizedMessage(3000222); // No one has invited you to be in a party.
|
||||
else
|
||||
p.OnDecline(from, leader);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user