ModernUO/Projects/UOContent/Engines/Advanced Search/AdvancedSearchCommand.cs
Kamron Batman fbbc407954
feat: Adds AdvancedSearch (XmlFind) (#1649)
### Summary

Adds Advanced Search (XmlFind) using `[AS` command.


Notable differences from XmlFind:
* No save to file.
* No "Display from" option (might add that later).
* No advanced XmlSpawner property test syntax. Only basic property operator comparisons.
* This version will freeze your shard, but fans out to all processors just like world saves. (So it should be stupid fast, especially if you have lots of cores)
* Does not support spawn entry/type/error searching. We have a spawn search command to do that already.
* I haven't set up correct "defaults" for the options when you first open it. I'll do that later.

### Screenshots
<img width="575" alt="image" src="https://github.com/modernuo/ModernUO/assets/3953314/2b08e586-0ea6-41c4-b7cd-f70e2ee62b86">

<img width="575" alt="image" src="https://github.com/modernuo/ModernUO/assets/3953314/da3f16b9-6a9e-4d2c-9d93-6cdfa67b4ddc">

<img width="572" alt="image" src="https://github.com/modernuo/ModernUO/assets/3953314/ae1d0a3f-a30d-497c-99ea-2cc988147f8f">
2023-12-28 18:55:47 -08:00

22 lines
744 B
C#

namespace Server.Engines.AdvancedSearch;
public static class AdvancedSearchCommand
{
public static void Initialize()
{
CommandSystem.Register("XmlFind", AccessLevel.Player, OnCommand); // For those old school peeps!
CommandSystem.Register("AdvancedSearch", AccessLevel.Player, OnCommand);
CommandSystem.Register("AdvSrch", AccessLevel.Player, OnCommand);
CommandSystem.Register("AS", AccessLevel.Player, OnCommand);
}
[Usage("AdvancedSearch")]
[Description("Opens the advanced search gump.")]
private static void OnCommand(CommandEventArgs e)
{
var from = e.Mobile;
from.CloseGump<AdvancedSearchGump>();
from.SendGump(new AdvancedSearchGump(from));
}
}