- [X] Removes some string allocations (e.g. split) - [X] Optimizes some collections - [X] Converts insensitive to extension methods of built-ins. - [X] Adds ordinal (case sensitive) string helpers - [X] Fixes conditionals for in-game commands so they use Ordinal comparisons. - [X] Replaces ToLower.Contains with InsensitiveContains - [X] Adds ValueStringBuilder - [X] Implements ValueStringBuilder in a few places where it makes sense - [X] Removes the redundant Wrap function and replaces it with an optimized version - [X] Fixes list conversions in Utility Closes #351 Bumps release version
60 lines
1.6 KiB
C#
60 lines
1.6 KiB
C#
using System.Linq;
|
|
using Server.Guilds;
|
|
using Server.Prompts;
|
|
|
|
namespace Server.Gumps
|
|
{
|
|
public class GuildDeclareWarPrompt : Prompt
|
|
{
|
|
private readonly Guild m_Guild;
|
|
private readonly Mobile m_Mobile;
|
|
|
|
public GuildDeclareWarPrompt(Mobile m, Guild g)
|
|
{
|
|
m_Mobile = m;
|
|
m_Guild = g;
|
|
}
|
|
|
|
public override void OnCancel(Mobile from)
|
|
{
|
|
if (GuildGump.BadLeader(m_Mobile, m_Guild))
|
|
{
|
|
return;
|
|
}
|
|
|
|
GuildGump.EnsureClosed(m_Mobile);
|
|
m_Mobile.SendGump(new GuildWarAdminGump(m_Mobile, m_Guild));
|
|
}
|
|
|
|
public override void OnResponse(Mobile from, string text)
|
|
{
|
|
if (GuildGump.BadLeader(m_Mobile, m_Guild))
|
|
{
|
|
return;
|
|
}
|
|
|
|
text = text.Trim();
|
|
|
|
if (text.Length >= 3)
|
|
{
|
|
var guilds = BaseGuild.Search(text).SafeConvertList<BaseGuild, Guild>();
|
|
|
|
GuildGump.EnsureClosed(m_Mobile);
|
|
|
|
if (guilds.Count > 0)
|
|
{
|
|
m_Mobile.SendGump(new GuildDeclareWarGump(m_Mobile, m_Guild, guilds));
|
|
}
|
|
else
|
|
{
|
|
m_Mobile.SendGump(new GuildWarAdminGump(m_Mobile, m_Guild));
|
|
m_Mobile.SendLocalizedMessage(1018003); // No guilds found matching - try another name in the search
|
|
}
|
|
}
|
|
else
|
|
{
|
|
m_Mobile.SendMessage("Search string must be at least three letters in length.");
|
|
}
|
|
}
|
|
}
|
|
}
|