ModernUO/Projects/UOContent/Engines/ML Quests/QuestArea.cs
Kamron Batman b4b1b0b122
fix(core): Converts more packets and switches to Moq (#415)
- [X] Switches testing to moq for mocking
- [X] Converts race changer packets
- [X] Renames some more folders and misc cleanup
2021-01-16 22:09:05 -08:00

61 lines
1.5 KiB
C#

using System;
namespace Server.Engines.MLQuests
{
public class QuestArea
{
public QuestArea(TextDefinition name, string region, Map forceMap = null)
{
Name = name;
RegionName = region;
ForceMap = forceMap;
if (MLQuestSystem.Debug)
{
ValidationQueue<QuestArea>.Add(this);
}
}
public TextDefinition Name { get; set; }
public string RegionName { get; set; }
public Map ForceMap { get; set; }
public bool Contains(Mobile mob) => Contains(mob.Region);
public bool Contains(Region reg)
{
if (reg == null || ForceMap != null && reg.Map != ForceMap)
{
return false;
}
return reg.IsPartOf(RegionName);
}
// Debug method
public void Validate()
{
var found = false;
foreach (var r in Region.Regions)
{
if (r.Name == RegionName && (ForceMap == null || r.Map == ForceMap))
{
found = true;
break;
}
}
if (!found)
{
Console.WriteLine(
"Warning: QuestArea region '{0}' does not exist (ForceMap = {1})",
RegionName,
ForceMap?.ToString() ?? "-null-"
);
}
}
}
}