This commit is contained in:
Kamron Batman 2024-02-12 19:14:16 -08:00
parent 8f20ea34c4
commit 3882fbe599
No known key found for this signature in database
GPG key ID: 7D81DF26D9A5D94A
18 changed files with 335 additions and 337 deletions

View file

@ -1382,25 +1382,23 @@ public class BaseXmlSpawner
// count nearby players // count nearby players
if (refobject is Item item) if (refobject is Item item)
{ {
foreach (Mobile p in item.GetMobilesInRange(range)) foreach (var p in item.GetMobilesInRange(range))
{ {
if (p.Player && p.AccessLevel == AccessLevel.Player) if (p.Player && p.AccessLevel == AccessLevel.Player)
{ {
nplayers++; nplayers++;
} }
} }
ie.Free();
} }
else if (refobject is Mobile mobile) else if (refobject is Mobile mobile)
{ {
foreach (Mobile p in mobile.GetMobilesInRange(range)) foreach (var p in mobile.GetMobilesInRange(range))
{ {
if (p.Player && p.AccessLevel == AccessLevel.Player) if (p.Player && p.AccessLevel == AccessLevel.Player)
{ {
nplayers++; nplayers++;
} }
} }
ie.Free();
} }
var result = SetPropertyValue(spawner, o, arglist[0], nplayers.ToString()); var result = SetPropertyValue(spawner, o, arglist[0], nplayers.ToString());
@ -1664,7 +1662,7 @@ public class BaseXmlSpawner
} }
else if (o is Item item) else if (o is Item item)
{ {
foreach (Mobile p in item.GetMobilesInRange(range)) foreach (var p in item.GetMobilesInRange(range))
{ {
if (p.Player && p.AccessLevel == AccessLevel.Player) if (p.Player && p.AccessLevel == AccessLevel.Player)
{ {
@ -1674,7 +1672,7 @@ public class BaseXmlSpawner
} }
else if (o is Mobile mobile) else if (o is Mobile mobile)
{ {
foreach (Mobile p in mobile.GetMobilesInRange(range)) foreach (var p in mobile.GetMobilesInRange(range))
{ {
if (p.Player && p.AccessLevel == AccessLevel.Player) if (p.Player && p.AccessLevel == AccessLevel.Player)
{ {

View file

@ -24,8 +24,8 @@ public partial class ItemFlags
[Description("Gets the state of the specified SavedFlag on any item")] [Description("Gets the state of the specified SavedFlag on any item")]
public static void GetFlag_OnCommand(CommandEventArgs e) public static void GetFlag_OnCommand(CommandEventArgs e)
{ {
int flag=0; var flag=0;
bool error = false; var error = false;
if (e.Arguments.Length > 0) if (e.Arguments.Length > 0)
{ {
if (e.Arguments[0].StartsWith("0x")) if (e.Arguments[0].StartsWith("0x"))
@ -62,7 +62,7 @@ public partial class ItemFlags
{ {
if (targeted is Item item) if (targeted is Item item)
{ {
bool state = item.GetSavedFlag(m_flag); var state = item.GetSavedFlag(m_flag);
from.SendMessage($"Flag (0x{m_flag:X}) = {state}"); from.SendMessage($"Flag (0x{m_flag:X}) = {state}");
} else } else
@ -77,8 +77,8 @@ public partial class ItemFlags
[Description("Sets/gets the stealable flag on any item")] [Description("Sets/gets the stealable flag on any item")]
public static void SetStealable_OnCommand(CommandEventArgs e) public static void SetStealable_OnCommand(CommandEventArgs e)
{ {
bool state = false; var state = false;
bool error = false; var error = false;
if (e.Arguments.Length > 0) if (e.Arguments.Length > 0)
{ {
try try
@ -121,7 +121,7 @@ public partial class ItemFlags
SetStealable(item, m_state); SetStealable(item, m_state);
} }
bool state = GetStealable(item); var state = GetStealable(item);
from.SendMessage($"Stealable = {state}"); from.SendMessage($"Stealable = {state}");

View file

@ -43,15 +43,15 @@ public class SpawnerExporter
public override void ExecuteList(CommandEventArgs e, List<object> list) public override void ExecuteList(CommandEventArgs e, List<object> list)
{ {
string filename = e.GetString(0); var filename = e.GetString(0);
ArrayList spawners = new ArrayList(); var spawners = new ArrayList();
for (int i = 0; i < list.Count; ++i) for (var i = 0; i < list.Count; ++i)
{ {
if (list[i] is Spawner) if (list[i] is Spawner)
{ {
Spawner spawner = (Spawner)list[i]; var spawner = (Spawner)list[i];
if (!spawner.Deleted && spawner.Map != Map.Internal && spawner.Parent == null) if (!spawner.Deleted && spawner.Map != Map.Internal && spawner.Parent == null)
{ {
spawners.Add(spawner); spawners.Add(spawner);
@ -87,11 +87,11 @@ public class SpawnerExporter
Directory.CreateDirectory("Saves/Spawners"); Directory.CreateDirectory("Saves/Spawners");
} }
string filePath = Path.Combine("Saves/Spawners", filename); var filePath = Path.Combine("Saves/Spawners", filename);
using (StreamWriter op = new StreamWriter(filePath)) using (var op = new StreamWriter(filePath))
{ {
XmlTextWriter xml = new XmlTextWriter(op) var xml = new XmlTextWriter(op)
{ {
Formatting = Formatting.Indented, Formatting = Formatting.Indented,
IndentChar = '\t', IndentChar = '\t',
@ -180,15 +180,15 @@ public class SpawnerExporter
{ {
if (e.Arguments.Length >= 1) if (e.Arguments.Length >= 1)
{ {
string filename = e.GetString(0); var filename = e.GetString(0);
string filePath = Path.Combine("Saves/Spawners", filename); var filePath = Path.Combine("Saves/Spawners", filename);
if (File.Exists(filePath)) if (File.Exists(filePath))
{ {
XmlDocument doc = new XmlDocument(); var doc = new XmlDocument();
doc.Load(filePath); doc.Load(filePath);
XmlElement root = doc["spawners"]; var root = doc["spawners"];
int successes = 0, failures = 0; int successes = 0, failures = 0;
@ -231,23 +231,23 @@ public class SpawnerExporter
private static void ImportSpawner(XmlNode node) private static void ImportSpawner(XmlNode node)
{ {
int count = int.Parse(GetText(node["count"], "1")); var count = int.Parse(GetText(node["count"], "1"));
int homeRange = int.Parse(GetText(node["homerange"], "4")); var homeRange = int.Parse(GetText(node["homerange"], "4"));
int walkingRange = int.Parse(GetText(node["walkingrange"], "-1")); var walkingRange = int.Parse(GetText(node["walkingrange"], "-1"));
int team = int.Parse(GetText(node["team"], "0")); var team = int.Parse(GetText(node["team"], "0"));
bool group = bool.Parse(GetText(node["group"], "False")); var group = bool.Parse(GetText(node["group"], "False"));
TimeSpan maxDelay = TimeSpan.Parse(GetText(node["maxdelay"], "10:00")); var maxDelay = TimeSpan.Parse(GetText(node["maxdelay"], "10:00"));
TimeSpan minDelay = TimeSpan.Parse(GetText(node["mindelay"], "05:00")); var minDelay = TimeSpan.Parse(GetText(node["mindelay"], "05:00"));
IEnumerable<string> creaturesName = LoadCreaturesName(node["creaturesname"]); var creaturesName = LoadCreaturesName(node["creaturesname"]);
string name = GetText(node["name"], "Spawner"); var name = GetText(node["name"], "Spawner");
Point3D location = Point3D.Parse(GetText(node["location"], "Error")); var location = Point3D.Parse(GetText(node["location"], "Error"));
Map map = Map.Parse(GetText(node["map"], "Error")); var map = Map.Parse(GetText(node["map"], "Error"));
Spawner spawner = new Spawner(count, minDelay, maxDelay, team, homeRange, creaturesName.ToArray()); var spawner = new Spawner(count, minDelay, maxDelay, team, homeRange, creaturesName.ToArray());
if (walkingRange >= 0) if (walkingRange >= 0)
{ {
spawner.WalkingRange = walkingRange; spawner.WalkingRange = walkingRange;
@ -265,7 +265,7 @@ public class SpawnerExporter
private static IEnumerable<string> LoadCreaturesName(XmlElement node) private static IEnumerable<string> LoadCreaturesName(XmlElement node)
{ {
List<string> names = new List<string>(); var names = new List<string>();
if (node != null) if (node != null)
{ {

View file

@ -95,7 +95,7 @@ public class XmlPropertiesGump : Gump
{ {
m_Page = page; m_Page = page;
int count = m_List.Count - page * EntryCount; var count = m_List.Count - page * EntryCount;
if (count < 0) if (count < 0)
{ {
@ -106,33 +106,33 @@ public class XmlPropertiesGump : Gump
count = EntryCount; count = EntryCount;
} }
int lastIndex = page * EntryCount + count - 1; var lastIndex = page * EntryCount + count - 1;
if (lastIndex >= 0 && lastIndex < m_List.Count && m_List[lastIndex] == null) if (lastIndex >= 0 && lastIndex < m_List.Count && m_List[lastIndex] == null)
{ {
--count; --count;
} }
int totalHeight = OffsetSize + (EntryHeight + OffsetSize) * (ColumnEntryCount + 1); var totalHeight = OffsetSize + (EntryHeight + OffsetSize) * (ColumnEntryCount + 1);
AddPage(0); AddPage(0);
AddBackground(0, 0, TotalWidth * 3 + BorderSize * 2, BorderSize + totalHeight + BorderSize, BackGumpID); AddBackground(0, 0, TotalWidth * 3 + BorderSize * 2, BorderSize + totalHeight + BorderSize, BackGumpID);
AddImageTiled(BorderSize, BorderSize + EntryHeight, (TotalWidth - (OldStyle ? SetWidth + OffsetSize : 0)) * 3, totalHeight - EntryHeight, OffsetGumpID); AddImageTiled(BorderSize, BorderSize + EntryHeight, (TotalWidth - (OldStyle ? SetWidth + OffsetSize : 0)) * 3, totalHeight - EntryHeight, OffsetGumpID);
int x = BorderSize + OffsetSize; var x = BorderSize + OffsetSize;
int y = BorderSize; var y = BorderSize;
if (m_Object is Item item) if (m_Object is Item item)
{ {
AddLabelCropped(x + TextOffsetX, y, TypeWidth - TextOffsetX, EntryHeight, TextHue, item.Name); AddLabelCropped(x + TextOffsetX, y, TypeWidth - TextOffsetX, EntryHeight, TextHue, item.Name);
} }
int propcount = 0; var propcount = 0;
for (int i = 0, index = page * EntryCount; i <= count && index < m_List.Count; ++i, ++index) for (int i = 0, index = page * EntryCount; i <= count && index < m_List.Count; ++i, ++index)
{ {
// do the multi column display // do the multi column display
int column = propcount / ColumnEntryCount; var column = propcount / ColumnEntryCount;
if (propcount % ColumnEntryCount == 0) if (propcount % ColumnEntryCount == 0)
{ {
y = BorderSize; y = BorderSize;
@ -141,7 +141,7 @@ public class XmlPropertiesGump : Gump
x = BorderSize + OffsetSize + column * (ValueWidth + NameWidth + OffsetSize * 2 + SetOffsetX + SetWidth); x = BorderSize + OffsetSize + column * (ValueWidth + NameWidth + OffsetSize * 2 + SetOffsetX + SetWidth);
y += EntryHeight + OffsetSize; y += EntryHeight + OffsetSize;
object o = m_List[index]; var o = m_List[index];
if (o == null) if (o == null)
{ {
@ -154,9 +154,9 @@ public class XmlPropertiesGump : Gump
// look for the default value of the equivalent property in the XmlSpawnerDefaults.DefaultEntry class // look for the default value of the equivalent property in the XmlSpawnerDefaults.DefaultEntry class
int huemodifier = TextHue; var huemodifier = TextHue;
Mobiles.XmlSpawnerDefaults.DefaultEntry de = new Mobiles.XmlSpawnerDefaults.DefaultEntry(); var de = new Mobiles.XmlSpawnerDefaults.DefaultEntry();
Type ftype = de.GetType(); var ftype = de.GetType();
var finfo = ftype.GetField(prop.Name); var finfo = ftype.GetField(prop.Name);
@ -182,7 +182,7 @@ public class XmlPropertiesGump : Gump
AddImageTiled(x, y, SetWidth, EntryHeight, SetGumpID); AddImageTiled(x, y, SetWidth, EntryHeight, SetGumpID);
} }
CPA cpa = GetCPA(prop); var cpa = GetCPA(prop);
if (prop.CanWrite && cpa != null && m_Mobile.AccessLevel >= cpa.WriteLevel) if (prop.CanWrite && cpa != null && m_Mobile.AccessLevel >= cpa.WriteLevel)
{ {
@ -200,7 +200,7 @@ public class XmlPropertiesGump : Gump
public override void OnResponse(NetState state, RelayInfo info) public override void OnResponse(NetState state, RelayInfo info)
{ {
Mobile from = state.Mobile; var from = state.Mobile;
if (!BaseCommand.IsAccessible(from, m_Object)) if (!BaseCommand.IsAccessible(from, m_Object))
{ {
@ -214,7 +214,7 @@ public class XmlPropertiesGump : Gump
{ {
if (m_Stack != null && m_Stack.Count > 0) if (m_Stack != null && m_Stack.Count > 0)
{ {
StackEntry entry = m_Stack.Pop(); var entry = m_Stack.Pop();
from.SendGump(new XmlPropertiesGump(from, entry.m_Object, m_Stack, null)); from.SendGump(new XmlPropertiesGump(from, entry.m_Object, m_Stack, null));
} }
@ -240,25 +240,25 @@ public class XmlPropertiesGump : Gump
} }
default: default:
{ {
int index = m_Page * EntryCount + (info.ButtonID - 3); var index = m_Page * EntryCount + (info.ButtonID - 3);
if (index >= 0 && index < m_List.Count) if (index >= 0 && index < m_List.Count)
{ {
PropertyInfo prop = m_List[index] as PropertyInfo; var prop = m_List[index] as PropertyInfo;
if (prop == null) if (prop == null)
{ {
return; return;
} }
CPA attr = GetCPA(prop); var attr = GetCPA(prop);
if (!prop.CanWrite || attr == null || from.AccessLevel < attr.WriteLevel) if (!prop.CanWrite || attr == null || from.AccessLevel < attr.WriteLevel)
{ {
return; return;
} }
Type type = prop.PropertyType; var type = prop.PropertyType;
if (IsType(type, typeofMobile) || IsType(type, typeofItem)) if (IsType(type, typeofMobile) || IsType(type, typeofItem))
{ {
@ -311,7 +311,7 @@ public class XmlPropertiesGump : Gump
} }
else if (HasAttribute(type, typeofPropertyObject, true)) else if (HasAttribute(type, typeofPropertyObject, true))
{ {
object obj = prop.GetValue(m_Object, null); var obj = prop.GetValue(m_Object, null);
from.SendGump(obj != null from.SendGump(obj != null
? new XmlPropertiesGump(from, obj, m_Stack, ? new XmlPropertiesGump(from, obj, m_Stack,
@ -327,9 +327,9 @@ public class XmlPropertiesGump : Gump
private static object[] GetObjects(Array a) private static object[] GetObjects(Array a)
{ {
object[] list = new object[a.Length]; var list = new object[a.Length];
for (int i = 0; i < list.Length; ++i) for (var i = 0; i < list.Length; ++i)
{ {
list[i] = a.GetValue(i); list[i] = a.GetValue(i);
} }
@ -341,14 +341,14 @@ public class XmlPropertiesGump : Gump
private static string[] GetCustomEnumNames(Type type) private static string[] GetCustomEnumNames(Type type)
{ {
object[] attrs = type.GetCustomAttributes(typeofCustomEnum, false); var attrs = type.GetCustomAttributes(typeofCustomEnum, false);
if (attrs.Length == 0) if (attrs.Length == 0)
{ {
return new string[0]; return new string[0];
} }
CustomEnumAttribute ce = attrs[0] as CustomEnumAttribute; var ce = attrs[0] as CustomEnumAttribute;
if (ce == null) if (ce == null)
{ {
@ -360,7 +360,7 @@ public class XmlPropertiesGump : Gump
private static bool HasAttribute(Type type, Type check, bool inherit) private static bool HasAttribute(Type type, Type check, bool inherit)
{ {
object[] objs = type.GetCustomAttributes(check, inherit); var objs = type.GetCustomAttributes(check, inherit);
return objs.Length > 0; return objs.Length > 0;
} }
@ -369,7 +369,7 @@ public class XmlPropertiesGump : Gump
private static bool IsType(Type type, Type[] check) private static bool IsType(Type type, Type[] check)
{ {
for (int i = 0; i < check.Length; ++i) for (var i = 0; i < check.Length; ++i)
{ {
if (IsType(type, check[i])) if (IsType(type, check[i]))
{ {
@ -497,17 +497,17 @@ public class XmlPropertiesGump : Gump
private ArrayList BuildList() private ArrayList BuildList()
{ {
Type type = m_Object.GetType(); var type = m_Object.GetType();
PropertyInfo[] props = type.GetProperties(BindingFlags.Static | BindingFlags.Instance | BindingFlags.Public); var props = type.GetProperties(BindingFlags.Static | BindingFlags.Instance | BindingFlags.Public);
ArrayList groups = GetGroups(type, props); var groups = GetGroups(type, props);
ArrayList list = new ArrayList(); var list = new ArrayList();
for (int i = 0; i < groups.Count; ++i) for (var i = 0; i < groups.Count; ++i)
{ {
DictionaryEntry de = (DictionaryEntry)groups[i]; var de = (DictionaryEntry)groups[i];
ArrayList groupList = (ArrayList)de.Value; var groupList = (ArrayList)de.Value;
if (!HasAttribute((Type)de.Key, typeofNoSort, false)) if (!HasAttribute((Type)de.Key, typeofNoSort, false))
{ {
@ -531,7 +531,7 @@ public class XmlPropertiesGump : Gump
private static CPA GetCPA(PropertyInfo prop) private static CPA GetCPA(PropertyInfo prop)
{ {
object[] attrs = prop.GetCustomAttributes(typeofCPA, false); var attrs = prop.GetCustomAttributes(typeofCPA, false);
if (attrs.Length > 0) if (attrs.Length > 0)
{ {
@ -543,23 +543,23 @@ public class XmlPropertiesGump : Gump
private ArrayList GetGroups(Type objectType, PropertyInfo[] props) private ArrayList GetGroups(Type objectType, PropertyInfo[] props)
{ {
Hashtable groups = new Hashtable(); var groups = new Hashtable();
for (int i = 0; i < props.Length; ++i) for (var i = 0; i < props.Length; ++i)
{ {
PropertyInfo prop = props[i]; var prop = props[i];
if (prop.CanRead) if (prop.CanRead)
{ {
CPA attr = GetCPA(prop); var attr = GetCPA(prop);
if (attr != null && m_Mobile.AccessLevel >= attr.ReadLevel) if (attr != null && m_Mobile.AccessLevel >= attr.ReadLevel)
{ {
Type type = prop.DeclaringType; var type = prop.DeclaringType;
while (true) while (true)
{ {
Type baseType = type.BaseType; var baseType = type.BaseType;
if (baseType == null || baseType == typeofObject) if (baseType == null || baseType == typeofObject)
{ {
@ -576,7 +576,7 @@ public class XmlPropertiesGump : Gump
} }
} }
ArrayList list = (ArrayList)groups[type]; var list = (ArrayList)groups[type];
if (list == null) if (list == null)
{ {
@ -588,7 +588,7 @@ public class XmlPropertiesGump : Gump
} }
} }
ArrayList sorted = new ArrayList(groups); var sorted = new ArrayList(groups);
sorted.Sort(new GroupComparer(objectType)); sorted.Sort(new GroupComparer(objectType));
@ -650,8 +650,8 @@ public class XmlPropertiesGump : Gump
return 1; return 1;
} }
PropertyInfo a = x as PropertyInfo; var a = x as PropertyInfo;
PropertyInfo b = y as PropertyInfo; var b = y as PropertyInfo;
if (a == null || b == null) if (a == null || b == null)
{ {
@ -672,7 +672,7 @@ public class XmlPropertiesGump : Gump
private int GetDistance(Type type) private int GetDistance(Type type)
{ {
Type current = m_Start; var current = m_Start;
int dist; int dist;
@ -706,8 +706,8 @@ public class XmlPropertiesGump : Gump
throw new ArgumentException(); throw new ArgumentException();
} }
Type a = (Type)de1.Key; var a = (Type)de1.Key;
Type b = (Type)de2.Key; var b = (Type)de2.Key;
return GetDistance(a).CompareTo(GetDistance(b)); return GetDistance(a).CompareTo(GetDistance(b));
} }

View file

@ -17,13 +17,13 @@ public class XmlSetCustomEnumGump : XmlSetListOptionGump
public override void OnResponse(NetState sender, RelayInfo relayInfo) public override void OnResponse(NetState sender, RelayInfo relayInfo)
{ {
int index = relayInfo.ButtonID - 1; var index = relayInfo.ButtonID - 1;
if (index >= 0 && index < m_Names.Length) if (index >= 0 && index < m_Names.Length)
{ {
try try
{ {
MethodInfo info = m_Property.PropertyType.GetMethod("Parse", new[] { typeof(string) }); var info = m_Property.PropertyType.GetMethod("Parse", new[] { typeof(string) });
CommandLogging.LogChangeProperty(m_Mobile, m_Object, m_Property.Name, m_Names[index]); CommandLogging.LogChangeProperty(m_Mobile, m_Object, m_Property.Name, m_Names[index]);

View file

@ -56,16 +56,16 @@ public class XmlSetGump : Gump
m_Page = page; m_Page = page;
m_List = list; m_List = list;
bool canNull = !prop.PropertyType.IsValueType; var canNull = !prop.PropertyType.IsValueType;
bool canDye = prop.IsDefined(typeof(HueAttribute), false); var canDye = prop.IsDefined(typeof(HueAttribute), false);
int xextend = 0; var xextend = 0;
if (prop.PropertyType == typeof(string)) if (prop.PropertyType == typeof(string))
{ {
xextend = 300; xextend = 300;
} }
object val = prop.GetValue(m_Object, null); var val = prop.GetValue(m_Object, null);
var initialText = val == null ? "" : val.ToString(); var initialText = val == null ? "" : val.ToString();
@ -74,8 +74,8 @@ public class XmlSetGump : Gump
AddBackground(0, 0, BackWidth + xextend, BackHeight + (canNull ? EntryHeight + OffsetSize : 0) + (canDye ? EntryHeight + OffsetSize : 0), BackGumpID); AddBackground(0, 0, BackWidth + xextend, BackHeight + (canNull ? EntryHeight + OffsetSize : 0) + (canDye ? EntryHeight + OffsetSize : 0), BackGumpID);
AddImageTiled(BorderSize, BorderSize, TotalWidth + xextend - (OldStyle ? SetWidth + OffsetSize : 0), TotalHeight + (canNull ? EntryHeight + OffsetSize : 0) + (canDye ? EntryHeight + OffsetSize : 0), OffsetGumpID); AddImageTiled(BorderSize, BorderSize, TotalWidth + xextend - (OldStyle ? SetWidth + OffsetSize : 0), TotalHeight + (canNull ? EntryHeight + OffsetSize : 0) + (canDye ? EntryHeight + OffsetSize : 0), OffsetGumpID);
int x = BorderSize + OffsetSize; var x = BorderSize + OffsetSize;
int y = BorderSize + OffsetSize; var y = BorderSize + OffsetSize;
AddImageTiled(x, y, EntryWidth + xextend, EntryHeight, EntryGumpID); AddImageTiled(x, y, EntryWidth + xextend, EntryHeight, EntryGumpID);
AddLabelCropped(x + TextOffsetX, y, EntryWidth + xextend - TextOffsetX, EntryHeight, TextHue, prop.Name); AddLabelCropped(x + TextOffsetX, y, EntryWidth + xextend - TextOffsetX, EntryHeight, TextHue, prop.Name);
@ -179,7 +179,7 @@ public class XmlSetGump : Gump
{ {
case 1: case 1:
{ {
TextRelay text = info.GetTextEntry(0); var text = info.GetTextEntry(0);
if (text != null) if (text != null)
{ {

View file

@ -77,33 +77,33 @@ public class XmlSetListOptionGump : Gump
m_Values = values; m_Values = values;
int pages = (names.Length + EntryCount - 1) / EntryCount; var pages = (names.Length + EntryCount - 1) / EntryCount;
int index = 0; var index = 0;
for (int page = 1; page <= pages; ++page) for (var page = 1; page <= pages; ++page)
{ {
AddPage(page); AddPage(page);
int start = (page - 1) * EntryCount; var start = (page - 1) * EntryCount;
int count = names.Length - start; var count = names.Length - start;
if (count > EntryCount) if (count > EntryCount)
{ {
count = EntryCount; count = EntryCount;
} }
int totalHeight = OffsetSize + (count + 2) * (EntryHeight + OffsetSize); var totalHeight = OffsetSize + (count + 2) * (EntryHeight + OffsetSize);
int backHeight = BorderSize + totalHeight + BorderSize; var backHeight = BorderSize + totalHeight + BorderSize;
AddBackground(0, 0, BackWidth, backHeight, BackGumpID); AddBackground(0, 0, BackWidth, backHeight, BackGumpID);
AddImageTiled(BorderSize, BorderSize, TotalWidth - (OldStyle ? SetWidth + OffsetSize : 0), totalHeight, OffsetGumpID); AddImageTiled(BorderSize, BorderSize, TotalWidth - (OldStyle ? SetWidth + OffsetSize : 0), totalHeight, OffsetGumpID);
int x = BorderSize + OffsetSize; var x = BorderSize + OffsetSize;
int y = BorderSize + OffsetSize; var y = BorderSize + OffsetSize;
int emptyWidth = TotalWidth - PrevWidth - NextWidth - OffsetSize * 4 - (OldStyle ? SetWidth + OffsetSize : 0); var emptyWidth = TotalWidth - PrevWidth - NextWidth - OffsetSize * 4 - (OldStyle ? SetWidth + OffsetSize : 0);
AddImageTiled(x, y, PrevWidth, EntryHeight, HeaderGumpID); AddImageTiled(x, y, PrevWidth, EntryHeight, HeaderGumpID);
@ -145,7 +145,7 @@ public class XmlSetListOptionGump : Gump
AddRect(0, prop.Name, 0); AddRect(0, prop.Name, 0);
for (int i = 0; i < count; ++i) for (var i = 0; i < count; ++i)
{ {
AddRect(i + 1, names[index], ++index); AddRect(i + 1, names[index], ++index);
} }
@ -154,8 +154,8 @@ public class XmlSetListOptionGump : Gump
private void AddRect(int index, string str, int button) private void AddRect(int index, string str, int button)
{ {
int x = BorderSize + OffsetSize; var x = BorderSize + OffsetSize;
int y = BorderSize + OffsetSize + (index + 1) * (EntryHeight + OffsetSize); var y = BorderSize + OffsetSize + (index + 1) * (EntryHeight + OffsetSize);
AddImageTiled(x, y, EntryWidth, EntryHeight, EntryGumpID); AddImageTiled(x, y, EntryWidth, EntryHeight, EntryGumpID);
AddLabelCropped(x + TextOffsetX, y, EntryWidth - TextOffsetX, EntryHeight, TextHue, str); AddLabelCropped(x + TextOffsetX, y, EntryWidth - TextOffsetX, EntryHeight, TextHue, str);
@ -175,13 +175,13 @@ public class XmlSetListOptionGump : Gump
public override void OnResponse(NetState sender, RelayInfo info) public override void OnResponse(NetState sender, RelayInfo info)
{ {
int index = info.ButtonID - 1; var index = info.ButtonID - 1;
if (index >= 0 && index < m_Values.Length) if (index >= 0 && index < m_Values.Length)
{ {
try try
{ {
object toSet = m_Values[index]; var toSet = m_Values[index];
CommandLogging.LogChangeProperty(m_Mobile, m_Object, m_Property.Name, toSet == null ? "(-null-)" : toSet.ToString()); CommandLogging.LogChangeProperty(m_Mobile, m_Object, m_Property.Name, toSet == null ? "(-null-)" : toSet.ToString());
m_Property.SetValue(m_Object, toSet, null); m_Property.SetValue(m_Object, toSet, null);
} }

View file

@ -60,15 +60,15 @@ public class XmlSetObjectGump : Gump
m_Page = page; m_Page = page;
m_List = list; m_List = list;
string initialText = XmlPropertiesGump.ValueToString(o, prop); var initialText = XmlPropertiesGump.ValueToString(o, prop);
AddPage(0); AddPage(0);
AddBackground(0, 0, BackWidth, BackHeight, BackGumpID); AddBackground(0, 0, BackWidth, BackHeight, BackGumpID);
AddImageTiled(BorderSize, BorderSize, TotalWidth - (OldStyle ? SetWidth + OffsetSize : 0), TotalHeight, OffsetGumpID); AddImageTiled(BorderSize, BorderSize, TotalWidth - (OldStyle ? SetWidth + OffsetSize : 0), TotalHeight, OffsetGumpID);
int x = BorderSize + OffsetSize; var x = BorderSize + OffsetSize;
int y = BorderSize + OffsetSize; var y = BorderSize + OffsetSize;
AddImageTiled(x, y, EntryWidth, EntryHeight, EntryGumpID); AddImageTiled(x, y, EntryWidth, EntryHeight, EntryGumpID);
AddLabelCropped(x + TextOffsetX, y, EntryWidth - TextOffsetX, EntryHeight, TextHue, prop.Name); AddLabelCropped(x + TextOffsetX, y, EntryWidth - TextOffsetX, EntryHeight, TextHue, prop.Name);
@ -252,7 +252,7 @@ public class XmlSetObjectGump : Gump
{ {
shouldSet = false; shouldSet = false;
object obj = m_Property.GetValue(m_Object, null); var obj = m_Property.GetValue(m_Object, null);
if (obj == null) if (obj == null)
{ {

View file

@ -57,15 +57,15 @@ public class XmlSetPoint2DGump : Gump
m_Page = page; m_Page = page;
m_List = list; m_List = list;
Point2D p = (Point2D)prop.GetValue(o, null); var p = (Point2D)prop.GetValue(o, null);
AddPage(0); AddPage(0);
AddBackground(0, 0, BackWidth, BackHeight, BackGumpID); AddBackground(0, 0, BackWidth, BackHeight, BackGumpID);
AddImageTiled(BorderSize, BorderSize, TotalWidth - (OldStyle ? SetWidth + OffsetSize : 0), TotalHeight, OffsetGumpID); AddImageTiled(BorderSize, BorderSize, TotalWidth - (OldStyle ? SetWidth + OffsetSize : 0), TotalHeight, OffsetGumpID);
int x = BorderSize + OffsetSize; var x = BorderSize + OffsetSize;
int y = BorderSize + OffsetSize; var y = BorderSize + OffsetSize;
AddImageTiled(x, y, EntryWidth, EntryHeight, EntryGumpID); AddImageTiled(x, y, EntryWidth, EntryHeight, EntryGumpID);
AddLabelCropped(x + TextOffsetX, y, EntryWidth - TextOffsetX, EntryHeight, TextHue, prop.Name); AddLabelCropped(x + TextOffsetX, y, EntryWidth - TextOffsetX, EntryHeight, TextHue, prop.Name);
@ -146,7 +146,7 @@ public class XmlSetPoint2DGump : Gump
protected override void OnTarget(Mobile from, object targeted) protected override void OnTarget(Mobile from, object targeted)
{ {
IPoint3D p = targeted as IPoint3D; var p = targeted as IPoint3D;
if (p != null) if (p != null)
{ {
@ -195,8 +195,8 @@ public class XmlSetPoint2DGump : Gump
} }
case 3: // Use values case 3: // Use values
{ {
TextRelay x = info.GetTextEntry(0); var x = info.GetTextEntry(0);
TextRelay y = info.GetTextEntry(1); var y = info.GetTextEntry(1);
toSet = new Point2D(x == null ? 0 : Utility.ToInt32(x.Text), y == null ? 0 : Utility.ToInt32(y.Text)); toSet = new Point2D(x == null ? 0 : Utility.ToInt32(x.Text), y == null ? 0 : Utility.ToInt32(y.Text));
shouldSet = true; shouldSet = true;

View file

@ -57,15 +57,15 @@ public class XmlSetPoint3DGump : Gump
m_Page = page; m_Page = page;
m_List = list; m_List = list;
Point3D p = (Point3D)prop.GetValue(o, null); var p = (Point3D)prop.GetValue(o, null);
AddPage(0); AddPage(0);
AddBackground(0, 0, BackWidth, BackHeight, BackGumpID); AddBackground(0, 0, BackWidth, BackHeight, BackGumpID);
AddImageTiled(BorderSize, BorderSize, TotalWidth - (OldStyle ? SetWidth + OffsetSize : 0), TotalHeight, OffsetGumpID); AddImageTiled(BorderSize, BorderSize, TotalWidth - (OldStyle ? SetWidth + OffsetSize : 0), TotalHeight, OffsetGumpID);
int x = BorderSize + OffsetSize; var x = BorderSize + OffsetSize;
int y = BorderSize + OffsetSize; var y = BorderSize + OffsetSize;
AddImageTiled(x, y, EntryWidth, EntryHeight, EntryGumpID); AddImageTiled(x, y, EntryWidth, EntryHeight, EntryGumpID);
AddLabelCropped(x + TextOffsetX, y, EntryWidth - TextOffsetX, EntryHeight, TextHue, prop.Name); AddLabelCropped(x + TextOffsetX, y, EntryWidth - TextOffsetX, EntryHeight, TextHue, prop.Name);
@ -151,7 +151,7 @@ public class XmlSetPoint3DGump : Gump
protected override void OnTarget(Mobile from, object targeted) protected override void OnTarget(Mobile from, object targeted)
{ {
IPoint3D p = targeted as IPoint3D; var p = targeted as IPoint3D;
if (p != null) if (p != null)
{ {
@ -200,9 +200,9 @@ public class XmlSetPoint3DGump : Gump
} }
case 3: // Use values case 3: // Use values
{ {
TextRelay x = info.GetTextEntry(0); var x = info.GetTextEntry(0);
TextRelay y = info.GetTextEntry(1); var y = info.GetTextEntry(1);
TextRelay z = info.GetTextEntry(2); var z = info.GetTextEntry(2);
toSet = new Point3D(x == null ? 0 : Utility.ToInt32(x.Text), y == null ? 0 : Utility.ToInt32(y.Text), z == null ? 0 : Utility.ToInt32(z.Text)); toSet = new Point3D(x == null ? 0 : Utility.ToInt32(x.Text), y == null ? 0 : Utility.ToInt32(y.Text), z == null ? 0 : Utility.ToInt32(z.Text));
shouldSet = true; shouldSet = true;

View file

@ -56,7 +56,7 @@ public class XmlSetTimeSpanGump : Gump
m_Page = page; m_Page = page;
m_List = list; m_List = list;
TimeSpan ts = (TimeSpan)prop.GetValue(o, null); var ts = (TimeSpan)prop.GetValue(o, null);
AddPage(0); AddPage(0);
@ -74,8 +74,8 @@ public class XmlSetTimeSpanGump : Gump
private void AddRect(int index, string str, int button, int text) private void AddRect(int index, string str, int button, int text)
{ {
int x = BorderSize + OffsetSize; var x = BorderSize + OffsetSize;
int y = BorderSize + OffsetSize + index * (EntryHeight + OffsetSize); var y = BorderSize + OffsetSize + index * (EntryHeight + OffsetSize);
AddImageTiled(x, y, EntryWidth, EntryHeight, EntryGumpID); AddImageTiled(x, y, EntryWidth, EntryHeight, EntryGumpID);
AddLabelCropped(x + TextOffsetX, y, EntryWidth - TextOffsetX, EntryHeight, TextHue, str); AddLabelCropped(x + TextOffsetX, y, EntryWidth - TextOffsetX, EntryHeight, TextHue, str);
@ -103,9 +103,9 @@ public class XmlSetTimeSpanGump : Gump
TimeSpan toSet; TimeSpan toSet;
bool shouldSet, shouldSend; bool shouldSet, shouldSend;
TextRelay h = info.GetTextEntry(0); var h = info.GetTextEntry(0);
TextRelay m = info.GetTextEntry(1); var m = info.GetTextEntry(1);
TextRelay s = info.GetTextEntry(2); var s = info.GetTextEntry(2);
switch (info.ButtonID) switch (info.ButtonID)
{ {

View file

@ -224,7 +224,7 @@ public class XmlSpawner : Item, ISpawner
var count = 0; var count = 0;
if (ProximityRange >= 0) if (ProximityRange >= 0)
{ {
foreach (Mobile m in GetMobilesInRange(ProximityRange)) foreach (var m in GetMobilesInRange(ProximityRange))
{ {
if (m?.Player == true) if (m?.Player == true)
{ {
@ -7995,7 +7995,7 @@ public class XmlSpawner : Item, ISpawner
if (m_ProximityRange >= 0 && CanSpawn) if (m_ProximityRange >= 0 && CanSpawn)
{ {
// check all nearby players // check all nearby players
foreach (Mobile p in GetMobilesInRange(m_ProximityRange)) foreach (var p in GetMobilesInRange(m_ProximityRange))
{ {
if (ValidPlayerTrig(p)) if (ValidPlayerTrig(p))
{ {
@ -9531,7 +9531,7 @@ public class XmlSpawner : Item, ISpawner
if (checkitems) if (checkitems)
{ {
// check the itemsid // check the itemsid
foreach (Item i in map.GetItemsAt(x, y)) foreach (var i in map.GetItemsAt(x, y))
{ {
if (i.ItemData.Impassable) if (i.ItemData.Impassable)
{ {
@ -11900,7 +11900,7 @@ public class XmlSpawner : Item, ISpawner
parmstr = GetParm(s, ":CA="); parmstr = GetParm(s, ":CA=");
// if kills needed is zero, then set CA to false by default. This maintains consistency with the // if kills needed is zero, then set CA to false by default. This maintains consistency with the
// previous default behavior for old spawn specs that haven't specified CA // previous default behavior for old spawn specs that haven't specified CA
bool clearAdvance = killsNeeded != 0; var clearAdvance = killsNeeded != 0;
if (parmstr != null) if (parmstr != null)
{ {
try { clearAdvance = int.Parse(parmstr) == 1; } try { clearAdvance = int.Parse(parmstr) == 1; }

View file

@ -35,7 +35,7 @@ public class TextEntryGump : Gump
AddImageTiled(23, 5, 214, 270, 0x52); AddImageTiled(23, 5, 214, 270, 0x52);
AddImageTiled(24, 6, 213, 261, 0xBBC); AddImageTiled(24, 6, 213, 261, 0xBBC);
string label = $"{spawner.Name} entry {index}"; var label = $"{spawner.Name} entry {index}";
AddLabel(28, 10, 0x384, label); AddLabel(28, 10, 0x384, label);
// OK button // OK button
@ -75,8 +75,8 @@ public class TextEntryGump : Gump
return; return;
} }
bool update_entry = false; var update_entry = false;
bool edit_entry = false; var edit_entry = false;
switch (info.ButtonID) switch (info.ButtonID)
{ {
@ -103,26 +103,26 @@ public class TextEntryGump : Gump
if (edit_entry) if (edit_entry)
{ {
// get the old text // get the old text
TextRelay entry = info.GetTextEntry(1); var entry = info.GetTextEntry(1);
string oldtext = entry.Text; var oldtext = entry.Text;
// get the new text // get the new text
entry = info.GetTextEntry(2); entry = info.GetTextEntry(2);
string newtext = entry.Text; var newtext = entry.Text;
// make the substitution // make the substitution
entry = info.GetTextEntry(0); entry = info.GetTextEntry(0);
string origtext = entry.Text; var origtext = entry.Text;
if (origtext != null && oldtext != null && newtext != null) if (origtext != null && oldtext != null && newtext != null)
{ {
try try
{ {
int firstindex = origtext.IndexOf(oldtext); var firstindex = origtext.IndexOf(oldtext);
if (firstindex >= 0) if (firstindex >= 0)
{ {
int secondindex = firstindex + oldtext.Length; var secondindex = firstindex + oldtext.Length;
int lastindex = origtext.Length - 1; var lastindex = origtext.Length - 1;
string editedtext; string editedtext;
if (firstindex > 0) if (firstindex > 0)
@ -154,7 +154,7 @@ public class TextEntryGump : Gump
} }
if (update_entry) if (update_entry)
{ {
TextRelay entry = info.GetTextEntry(0); var entry = info.GetTextEntry(0);
if (m_index < m_Spawner.SpawnObjects.Length) if (m_index < m_Spawner.SpawnObjects.Length)
{ {
m_Spawner.SpawnObjects[m_index].TypeName = entry.Text; m_Spawner.SpawnObjects[m_index].TypeName = entry.Text;
@ -341,7 +341,7 @@ public class XmlSpawnerGump : Gump
// add the status string // add the status string
AddTextEntry(38, 384, 235, 33, 33, 900, m_Spawner.status_str); AddTextEntry(38, 384, 235, 33, 33, 900, m_Spawner.status_str);
// add the page buttons // add the page buttons
for (int i = 0; i < MaxSpawnEntries / MaxEntriesPerPage; i++) for (var i = 0; i < MaxSpawnEntries / MaxEntriesPerPage; i++)
{ {
//AddButton(38+i*30, 365, 2206, 2206, 0, GumpButtonType.Page, 1+i); //AddButton(38+i*30, 365, 2206, 2206, 0, GumpButtonType.Page, 1+i);
AddButton(38 + i * 25, 365, 0x8B1 + i, 0x8B1 + i, 4000 + i); AddButton(38 + i * 25, 365, 0x8B1 + i, 0x8B1 + i, 4000 + i);
@ -373,16 +373,16 @@ public class XmlSpawnerGump : Gump
} }
for (int i = 0; i < MaxSpawnEntries; i++) for (var i = 0; i < MaxSpawnEntries; i++)
{ {
if (page != i / MaxEntriesPerPage) if (page != i / MaxEntriesPerPage)
{ {
continue; continue;
} }
string str = string.Empty; var str = string.Empty;
int texthue = 0; var texthue = 0;
int background = 0xBBC; var background = 0xBBC;
if (i % MaxEntriesPerPage == 0) if (i % MaxEntriesPerPage == 0)
{ {
@ -408,7 +408,7 @@ public class XmlSpawnerGump : Gump
} }
} }
bool hasreplacement = false; var hasreplacement = false;
// check for replacement entries // check for replacement entries
if (Rentry != null && Rentry.Index == i) if (Rentry != null && Rentry.Index == i)
@ -444,10 +444,10 @@ public class XmlSpawnerGump : Gump
str = m_Spawner.SpawnObjects[i].TypeName; str = m_Spawner.SpawnObjects[i].TypeName;
} }
int count = m_Spawner.SpawnObjects[i].SpawnedObjects.Count; var count = m_Spawner.SpawnObjects[i].SpawnedObjects.Count;
int max = m_Spawner.SpawnObjects[i].ActualMaxCount; var max = m_Spawner.SpawnObjects[i].ActualMaxCount;
int subgrp = m_Spawner.SpawnObjects[i].SubGroup; var subgrp = m_Spawner.SpawnObjects[i].SubGroup;
int spawnsper = m_Spawner.SpawnObjects[i].SpawnsPerTick; var spawnsper = m_Spawner.SpawnObjects[i].SpawnsPerTick;
texthue = subgrp * 11; texthue = subgrp * 11;
if (texthue < 0) if (texthue < 0)
@ -482,7 +482,7 @@ public class XmlSpawnerGump : Gump
string strmind = null; string strmind = null;
string strmaxd = null; string strmaxd = null;
string strpackrange = null; string strpackrange = null;
string strspawnsper = spawnsper.ToString(); var strspawnsper = spawnsper.ToString();
if (m_Spawner.SpawnObjects[i].SequentialResetTime > 0 && m_Spawner.SpawnObjects[i].SubGroup > 0) if (m_Spawner.SpawnObjects[i].SequentialResetTime > 0 && m_Spawner.SpawnObjects[i].SubGroup > 0)
{ {
@ -529,7 +529,7 @@ public class XmlSpawnerGump : Gump
strnext = m_Spawner.NextSpawn.ToString(); strnext = m_Spawner.NextSpawn.ToString();
} }
int yoff = 22 * (i % MaxEntriesPerPage) + 30; var yoff = 22 * (i % MaxEntriesPerPage) + 30;
// spawns per tick // spawns per tick
AddImageTiled(303 + xoffset, yoff, 30, 23, 0x52); AddImageTiled(303 + xoffset, yoff, 30, 23, 0x52);
@ -585,15 +585,15 @@ public class XmlSpawnerGump : Gump
public XmlSpawner.SpawnObject[] CreateArray(RelayInfo info, Mobile from) public XmlSpawner.SpawnObject[] CreateArray(RelayInfo info, Mobile from)
{ {
ArrayList SpawnObjects = new ArrayList(); var SpawnObjects = new ArrayList();
for (int i = 0; i < MaxSpawnEntries; i++) for (var i = 0; i < MaxSpawnEntries; i++)
{ {
TextRelay te = info.GetTextEntry(i); var te = info.GetTextEntry(i);
if (te != null) if (te != null)
{ {
string str = te.Text; var str = te.Text;
if (str.Length > 0) if (str.Length > 0)
{ {
@ -601,16 +601,16 @@ public class XmlSpawnerGump : Gump
#if (BOOKTEXTENTRY) #if (BOOKTEXTENTRY)
if (i < m_Spawner.SpawnObjects.Length) if (i < m_Spawner.SpawnObjects.Length)
{ {
string currenttext = m_Spawner.SpawnObjects[i].TypeName; var currenttext = m_Spawner.SpawnObjects[i].TypeName;
if (currenttext != null && currenttext.Length >= 230) if (currenttext != null && currenttext.Length >= 230)
{ {
str = currenttext; str = currenttext;
} }
} }
#endif #endif
string typestr = BaseXmlSpawner.ParseObjectType(str); var typestr = BaseXmlSpawner.ParseObjectType(str);
Type type = AssemblyHandler.FindTypeByName(typestr); var type = AssemblyHandler.FindTypeByName(typestr);
if (type != null) if (type != null)
{ {
@ -639,13 +639,13 @@ public class XmlSpawnerGump : Gump
public void UpdateTypeNames(Mobile from, RelayInfo info) public void UpdateTypeNames(Mobile from, RelayInfo info)
{ {
for (int i = 0; i < MaxSpawnEntries; i++) for (var i = 0; i < MaxSpawnEntries; i++)
{ {
TextRelay te = info.GetTextEntry(i); var te = info.GetTextEntry(i);
if (te != null) if (te != null)
{ {
string str = te.Text; var str = te.Text;
if (str.Length > 0) if (str.Length > 0)
{ {
@ -657,7 +657,7 @@ public class XmlSpawnerGump : Gump
// that could be longer than the buffer if booktextentry is used // that could be longer than the buffer if booktextentry is used
#if (BOOKTEXTENTRY) #if (BOOKTEXTENTRY)
string currentstr = m_Spawner.SpawnObjects[i].TypeName; var currentstr = m_Spawner.SpawnObjects[i].TypeName;
if (currentstr != null && currentstr.Length < 230) if (currentstr != null && currentstr.Length < 230)
#endif #endif
{ {
@ -685,13 +685,13 @@ public class XmlSpawnerGump : Gump
return; return;
} }
NetState ns = from.NetState; var ns = from.NetState;
if (ns?.Gumps != null) if (ns?.Gumps != null)
{ {
ArrayList refresh = new ArrayList(); var refresh = new ArrayList();
foreach (Gump g in ns.Gumps) foreach (var g in ns.Gumps)
{ {
// clear the gump status on the spawner associated with the gump // clear the gump status on the spawner associated with the gump
if (g is XmlSpawnerGump xg && xg.m_Spawner != null) if (g is XmlSpawnerGump xg && xg.m_Spawner != null)
@ -712,7 +712,7 @@ public class XmlSpawnerGump : Gump
// flag the current gump on the spawner as closed // flag the current gump on the spawner as closed
g.m_Spawner.GumpReset = true; g.m_Spawner.GumpReset = true;
XmlSpawnerGump xg = new XmlSpawnerGump(g.m_Spawner, g.X, g.Y, g.m_ShowGump, g.xoffset, g.page, g.Rentry); var xg = new XmlSpawnerGump(g.m_Spawner, g.X, g.Y, g.m_ShowGump, g.xoffset, g.page, g.Rentry);
from.SendGump(xg); from.SendGump(xg);
} }
@ -763,7 +763,7 @@ public class XmlSpawnerGump : Gump
} }
// Get the current name // Get the current name
TextRelay tr = info.GetTextEntry(999); var tr = info.GetTextEntry(999);
if (tr != null) if (tr != null)
{ {
m_Spawner.Name = tr.Text; m_Spawner.Name = tr.Text;
@ -781,7 +781,7 @@ public class XmlSpawnerGump : Gump
return; return;
} }
for (int i = 0; i < m_Spawner.SpawnObjects.Length; i++) for (var i = 0; i < m_Spawner.SpawnObjects.Length; i++)
{ {
if (page != i / MaxEntriesPerPage) if (page != i / MaxEntriesPerPage)
{ {
@ -789,10 +789,10 @@ public class XmlSpawnerGump : Gump
} }
// check the max count entry // check the max count entry
TextRelay temcnt = info.GetTextEntry(500 + i); var temcnt = info.GetTextEntry(500 + i);
if (temcnt != null) if (temcnt != null)
{ {
int maxval = 0; var maxval = 0;
try { maxval = Convert.ToInt32(temcnt.Text, 10); } try { maxval = Convert.ToInt32(temcnt.Text, 10); }
catch (Exception e) { Diagnostics.ExceptionLogging.LogException(e); } catch (Exception e) { Diagnostics.ExceptionLogging.LogException(e); }
if (maxval < 0) if (maxval < 0)
@ -806,10 +806,10 @@ public class XmlSpawnerGump : Gump
if (m_ShowGump > 0) if (m_ShowGump > 0)
{ {
// check the subgroup entry // check the subgroup entry
TextRelay tegrp = info.GetTextEntry(600 + i); var tegrp = info.GetTextEntry(600 + i);
if (tegrp != null) if (tegrp != null)
{ {
int grpval = 0; var grpval = 0;
try { grpval = Convert.ToInt32(tegrp.Text, 10); } try { grpval = Convert.ToInt32(tegrp.Text, 10); }
catch (Exception e) { Diagnostics.ExceptionLogging.LogException(e); } catch (Exception e) { Diagnostics.ExceptionLogging.LogException(e); }
if (grpval < 0) if (grpval < 0)
@ -824,7 +824,7 @@ public class XmlSpawnerGump : Gump
if (m_ShowGump > 1) if (m_ShowGump > 1)
{ {
// note, while these values can be entered in any spawn entry, they will only be assigned to the subgroup leader // note, while these values can be entered in any spawn entry, they will only be assigned to the subgroup leader
int subgroupindex = m_Spawner.GetCurrentSequentialSpawnIndex(m_Spawner.SpawnObjects[i].SubGroup); var subgroupindex = m_Spawner.GetCurrentSequentialSpawnIndex(m_Spawner.SpawnObjects[i].SubGroup);
TextRelay tegrp; TextRelay tegrp;
if (subgroupindex >= 0 && subgroupindex < m_Spawner.SpawnObjects.Length) if (subgroupindex >= 0 && subgroupindex < m_Spawner.SpawnObjects.Length)
@ -849,7 +849,7 @@ public class XmlSpawnerGump : Gump
tegrp = info.GetTextEntry(1100 + i); tegrp = info.GetTextEntry(1100 + i);
if (tegrp?.Text != null && tegrp.Text.Length > 0) if (tegrp?.Text != null && tegrp.Text.Length > 0)
{ {
int grpval = 0; var grpval = 0;
try { grpval = Convert.ToInt32(tegrp.Text, 10); } try { grpval = Convert.ToInt32(tegrp.Text, 10); }
catch (Exception e) { Diagnostics.ExceptionLogging.LogException(e); } catch (Exception e) { Diagnostics.ExceptionLogging.LogException(e); }
if (grpval < 0) if (grpval < 0)
@ -863,7 +863,7 @@ public class XmlSpawnerGump : Gump
tegrp = info.GetTextEntry(1200 + i); tegrp = info.GetTextEntry(1200 + i);
if (tegrp?.Text != null && tegrp.Text.Length > 0) if (tegrp?.Text != null && tegrp.Text.Length > 0)
{ {
int grpval = 0; var grpval = 0;
try { grpval = Convert.ToInt32(tegrp.Text, 10); } try { grpval = Convert.ToInt32(tegrp.Text, 10); }
catch (Exception e) { Diagnostics.ExceptionLogging.LogException(e); } catch (Exception e) { Diagnostics.ExceptionLogging.LogException(e); }
if (grpval < 0) if (grpval < 0)
@ -939,7 +939,7 @@ public class XmlSpawnerGump : Gump
{ {
if (!string.IsNullOrEmpty(tegrp.Text)) if (!string.IsNullOrEmpty(tegrp.Text))
{ {
int grpval = 1; var grpval = 1;
try { grpval = int.Parse(tegrp.Text); } try { grpval = int.Parse(tegrp.Text); }
catch (Exception e) { Diagnostics.ExceptionLogging.LogException(e); } catch (Exception e) { Diagnostics.ExceptionLogging.LogException(e); }
if (grpval < 0) if (grpval < 0)
@ -965,7 +965,7 @@ public class XmlSpawnerGump : Gump
{ {
if (!string.IsNullOrEmpty(tegrp.Text)) if (!string.IsNullOrEmpty(tegrp.Text))
{ {
int grpval = 1; var grpval = 1;
try { grpval = int.Parse(tegrp.Text); } try { grpval = int.Parse(tegrp.Text); }
catch (Exception e) { Diagnostics.ExceptionLogging.LogException(e); } catch (Exception e) { Diagnostics.ExceptionLogging.LogException(e); }
if (grpval < 0) if (grpval < 0)
@ -988,10 +988,10 @@ public class XmlSpawnerGump : Gump
} }
// Update the maxcount // Update the maxcount
TextRelay temax = info.GetTextEntry(300); var temax = info.GetTextEntry(300);
if (temax != null) if (temax != null)
{ {
int maxval = 0; var maxval = 0;
try { maxval = Convert.ToInt32(temax.Text, 10); } try { maxval = Convert.ToInt32(temax.Text, 10); }
catch (Exception e) { Diagnostics.ExceptionLogging.LogException(e); } catch (Exception e) { Diagnostics.ExceptionLogging.LogException(e); }
if (maxval < 0) if (maxval < 0)
@ -1097,7 +1097,7 @@ public class XmlSpawnerGump : Gump
// check the restrict kills flag // check the restrict kills flag
if (info.ButtonID >= 300 && info.ButtonID < 300 + MaxSpawnEntries) if (info.ButtonID >= 300 && info.ButtonID < 300 + MaxSpawnEntries)
{ {
int index = info.ButtonID - 300; var index = info.ButtonID - 300;
if (index < m_Spawner.SpawnObjects.Length) if (index < m_Spawner.SpawnObjects.Length)
{ {
m_Spawner.SpawnObjects[index].RestrictKillsToSubgroup = !m_Spawner.SpawnObjects[index].RestrictKillsToSubgroup; m_Spawner.SpawnObjects[index].RestrictKillsToSubgroup = !m_Spawner.SpawnObjects[index].RestrictKillsToSubgroup;
@ -1105,7 +1105,7 @@ public class XmlSpawnerGump : Gump
} }
else if (info.ButtonID >= 400 && info.ButtonID < 400 + MaxSpawnEntries) else if (info.ButtonID >= 400 && info.ButtonID < 400 + MaxSpawnEntries)
{ {
int index = info.ButtonID - 400; var index = info.ButtonID - 400;
if (index < m_Spawner.SpawnObjects.Length) if (index < m_Spawner.SpawnObjects.Length)
{ {
m_Spawner.SpawnObjects[index].ClearOnAdvance = !m_Spawner.SpawnObjects[index].ClearOnAdvance; m_Spawner.SpawnObjects[index].ClearOnAdvance = !m_Spawner.SpawnObjects[index].ClearOnAdvance;
@ -1114,11 +1114,11 @@ public class XmlSpawnerGump : Gump
else if (info.ButtonID >= 800 && info.ButtonID < 800 + MaxSpawnEntries) else if (info.ButtonID >= 800 && info.ButtonID < 800 + MaxSpawnEntries)
{ {
// open the text entry gump // open the text entry gump
int index = info.ButtonID - 800; var index = info.ButtonID - 800;
// open a text entry gump // open a text entry gump
#if (BOOKTEXTENTRY) #if (BOOKTEXTENTRY)
// display a new gump // display a new gump
XmlSpawnerGump newgump = new XmlSpawnerGump(m_Spawner, X, Y, m_ShowGump, xoffset, page); var newgump = new XmlSpawnerGump(m_Spawner, X, Y, m_ShowGump, xoffset, page);
state.Mobile.SendGump(newgump); state.Mobile.SendGump(newgump);
// is there an existing book associated with the gump? // is there an existing book associated with the gump?
@ -1127,7 +1127,7 @@ public class XmlSpawnerGump : Gump
m_Spawner.m_TextEntryBook = new List<XmlTextEntryBook>(); m_Spawner.m_TextEntryBook = new List<XmlTextEntryBook>();
} }
object[] args = new object[6]; var args = new object[6];
args[0] = m_Spawner; args[0] = m_Spawner;
args[1] = index; args[1] = index;
@ -1136,7 +1136,7 @@ public class XmlSpawnerGump : Gump
args[4] = m_ShowGump; args[4] = m_ShowGump;
args[5] = page; args[5] = page;
XmlTextEntryBook book = new XmlTextEntryBook(0, string.Empty, m_Spawner.Name, 20, true); var book = new XmlTextEntryBook(0, string.Empty, m_Spawner.Name, 20, true);
m_Spawner.m_TextEntryBook.Add(book); m_Spawner.m_TextEntryBook.Add(book);
@ -1144,7 +1144,7 @@ public class XmlSpawnerGump : Gump
book.Author = m_Spawner.Name; book.Author = m_Spawner.Name;
// fill the contents of the book with the current text entry data // fill the contents of the book with the current text entry data
string text = string.Empty; var text = string.Empty;
if (m_Spawner.SpawnObjects != null && index < m_Spawner.SpawnObjects.Length) if (m_Spawner.SpawnObjects != null && index < m_Spawner.SpawnObjects.Length)
{ {
text = m_Spawner.SpawnObjects[index].TypeName; text = m_Spawner.SpawnObjects[index].TypeName;
@ -1168,21 +1168,21 @@ public class XmlSpawnerGump : Gump
{ {
nclicks++; nclicks++;
// find the location of the spawn at the specified index // find the location of the spawn at the specified index
int index = info.ButtonID - 1300; var index = info.ButtonID - 1300;
if (index < m_Spawner.SpawnObjects.Length) if (index < m_Spawner.SpawnObjects.Length)
{ {
int scount = m_Spawner.SpawnObjects[index].SpawnedObjects.Count; var scount = m_Spawner.SpawnObjects[index].SpawnedObjects.Count;
if (scount > 0) if (scount > 0)
{ {
object so = m_Spawner.SpawnObjects[index].SpawnedObjects[nclicks % scount]; var so = m_Spawner.SpawnObjects[index].SpawnedObjects[nclicks % scount];
if (ValidGotoObject(state.Mobile, so)) if (ValidGotoObject(state.Mobile, so))
{ {
IPoint3D o = so as IPoint3D; var o = so as IPoint3D;
if (o != null) if (o != null)
{ {
Map m = m_Spawner.Map; var m = m_Spawner.Map;
if (o is Item item) if (o is Item item)
{ {
@ -1209,7 +1209,7 @@ public class XmlSpawnerGump : Gump
} }
else if (info.ButtonID >= 6000 && info.ButtonID < 6000 + MaxSpawnEntries) else if (info.ButtonID >= 6000 && info.ButtonID < 6000 + MaxSpawnEntries)
{ {
int index = info.ButtonID - 6000; var index = info.ButtonID - 6000;
if (index < m_Spawner.SpawnObjects.Length) if (index < m_Spawner.SpawnObjects.Length)
{ {
@ -1224,18 +1224,18 @@ public class XmlSpawnerGump : Gump
} }
else if (info.ButtonID >= 5000 && info.ButtonID < 5000 + MaxSpawnEntries) else if (info.ButtonID >= 5000 && info.ButtonID < 5000 + MaxSpawnEntries)
{ {
int i = info.ButtonID - 5000; var i = info.ButtonID - 5000;
string categorystring = null; string categorystring = null;
string entrystring = null; string entrystring = null;
TextRelay te = info.GetTextEntry(i); var te = info.GetTextEntry(i);
if (te?.Text != null) if (te?.Text != null)
{ {
// get the string // get the string
string[] cargs = te.Text.Split(','); var cargs = te.Text.Split(',');
// parse out any comma separated args // parse out any comma separated args
categorystring = cargs[0]; categorystring = cargs[0];
@ -1246,7 +1246,7 @@ public class XmlSpawnerGump : Gump
if (string.IsNullOrEmpty(categorystring)) if (string.IsNullOrEmpty(categorystring))
{ {
XmlSpawnerGump newg = new XmlSpawnerGump(m_Spawner, X, Y, m_ShowGump, xoffset, page); var newg = new XmlSpawnerGump(m_Spawner, X, Y, m_ShowGump, xoffset, page);
state.Mobile.SendGump(newg); state.Mobile.SendGump(newg);
// if no string has been entered then just use the full categorized add gump // if no string has been entered then just use the full categorized add gump
@ -1259,17 +1259,17 @@ public class XmlSpawnerGump : Gump
state.Mobile.CloseGump<XmlPartialCategorizedAddGump>(); state.Mobile.CloseGump<XmlPartialCategorizedAddGump>();
//Type [] types = (Type[])XmlPartialCategorizedAddGump.Match(categorystring).ToArray(typeof(Type)); //Type [] types = (Type[])XmlPartialCategorizedAddGump.Match(categorystring).ToArray(typeof(Type));
ArrayList types = XmlPartialCategorizedAddGump.Match(categorystring); var types = XmlPartialCategorizedAddGump.Match(categorystring);
ReplacementEntry re = new ReplacementEntry var re = new ReplacementEntry
{ {
Typename = entrystring, Typename = entrystring,
Index = i, Index = i,
Color = 0x1436 Color = 0x1436
}; };
XmlSpawnerGump newg = new XmlSpawnerGump(m_Spawner, X, Y, m_ShowGump, xoffset, page, re); var newg = new XmlSpawnerGump(m_Spawner, X, Y, m_ShowGump, xoffset, page, re);
state.Mobile.SendGump(new XmlPartialCategorizedAddGump(state.Mobile, categorystring, 0, types, true, i, newg)); state.Mobile.SendGump(new XmlPartialCategorizedAddGump(state.Mobile, categorystring, 0, types, true, i, newg));
@ -1281,20 +1281,20 @@ public class XmlSpawnerGump : Gump
else else
{ {
// up and down arrows // up and down arrows
int buttonID = info.ButtonID - 6; var buttonID = info.ButtonID - 6;
int index = buttonID / 2; var index = buttonID / 2;
int type = buttonID % 2; var type = buttonID % 2;
TextRelay entry = info.GetTextEntry(index); var entry = info.GetTextEntry(index);
if (entry != null && entry.Text.Length > 0) if (entry != null && entry.Text.Length > 0)
{ {
string entrystr = entry.Text; var entrystr = entry.Text;
#if (BOOKTEXTENTRY) #if (BOOKTEXTENTRY)
if (index < m_Spawner.SpawnObjects.Length) if (index < m_Spawner.SpawnObjects.Length)
{ {
string str = m_Spawner.SpawnObjects[index].TypeName; var str = m_Spawner.SpawnObjects[index].TypeName;
if (str != null && str.Length >= 230) if (str != null && str.Length >= 230)
{ {

View file

@ -10,7 +10,7 @@ public class XmlSpawnerSkillCheck
// alternate skillcheck hooks to replace those in SkillCheck.cs // alternate skillcheck hooks to replace those in SkillCheck.cs
public static bool Mobile_SkillCheckLocation(Mobile from, SkillName skillName, double minSkill, double maxSkill) public static bool Mobile_SkillCheckLocation(Mobile from, SkillName skillName, double minSkill, double maxSkill)
{ {
Skill skill = from.Skills[skillName]; var skill = from.Skills[skillName];
if (skill == null) if (skill == null)
{ {
@ -18,7 +18,7 @@ public class XmlSpawnerSkillCheck
} }
// call the default skillcheck handler // call the default skillcheck handler
bool success = SkillCheck.Mobile_SkillCheckLocation( from, skillName, minSkill, maxSkill); var success = SkillCheck.Mobile_SkillCheckLocation( from, skillName, minSkill, maxSkill);
// call the xmlspawner skillcheck handler // call the xmlspawner skillcheck handler
CheckSkillUse(from, skill, success); CheckSkillUse(from, skill, success);
@ -28,7 +28,7 @@ public class XmlSpawnerSkillCheck
public static bool Mobile_SkillCheckDirectLocation(Mobile from, SkillName skillName, double chance) public static bool Mobile_SkillCheckDirectLocation(Mobile from, SkillName skillName, double chance)
{ {
Skill skill = from.Skills[skillName]; var skill = from.Skills[skillName];
if (skill == null) if (skill == null)
{ {
@ -36,7 +36,7 @@ public class XmlSpawnerSkillCheck
} }
// call the default skillcheck handler // call the default skillcheck handler
bool success = SkillCheck.Mobile_SkillCheckDirectLocation( from, skillName, chance); var success = SkillCheck.Mobile_SkillCheckDirectLocation( from, skillName, chance);
// call the xmlspawner skillcheck handler // call the xmlspawner skillcheck handler
CheckSkillUse(from, skill, success); CheckSkillUse(from, skill, success);
@ -46,7 +46,7 @@ public class XmlSpawnerSkillCheck
public static bool Mobile_SkillCheckTarget(Mobile from, SkillName skillName, object target, double minSkill, double maxSkill) public static bool Mobile_SkillCheckTarget(Mobile from, SkillName skillName, object target, double minSkill, double maxSkill)
{ {
Skill skill = from.Skills[skillName]; var skill = from.Skills[skillName];
if (skill == null) if (skill == null)
{ {
@ -54,7 +54,7 @@ public class XmlSpawnerSkillCheck
} }
// call the default skillcheck handler // call the default skillcheck handler
bool success = SkillCheck.Mobile_SkillCheckTarget( from, skillName, target, minSkill, maxSkill); var success = SkillCheck.Mobile_SkillCheckTarget( from, skillName, target, minSkill, maxSkill);
// call the xmlspawner skillcheck handler // call the xmlspawner skillcheck handler
CheckSkillUse(from, skill, success); CheckSkillUse(from, skill, success);
@ -64,7 +64,7 @@ public class XmlSpawnerSkillCheck
public static bool Mobile_SkillCheckDirectTarget(Mobile from, SkillName skillName, object target, double chance) public static bool Mobile_SkillCheckDirectTarget(Mobile from, SkillName skillName, object target, double chance)
{ {
Skill skill = from.Skills[skillName]; var skill = from.Skills[skillName];
if (skill == null) if (skill == null)
{ {
@ -72,7 +72,7 @@ public class XmlSpawnerSkillCheck
} }
// call the default skillcheck handler // call the default skillcheck handler
bool success = SkillCheck.Mobile_SkillCheckDirectTarget( from, skillName, target, chance); var success = SkillCheck.Mobile_SkillCheckDirectTarget( from, skillName, target, chance);
// call the xmlspawner skillcheck handler // call the xmlspawner skillcheck handler
CheckSkillUse(from, skill, success); CheckSkillUse(from, skill, success);
@ -153,9 +153,9 @@ public class XmlSpawnerSkillCheck
} }
// go through the list and if the spawner is not on it yet, then add it // go through the list and if the spawner is not on it yet, then add it
bool found = false; var found = false;
ArrayList skilllist = RegisteredSkill.TriggerList(s, map); var skilllist = RegisteredSkill.TriggerList(s, map);
if (skilllist == null) if (skilllist == null)
{ {
@ -175,7 +175,7 @@ public class XmlSpawnerSkillCheck
// if it hasnt already been added to the list, then add it // if it hasnt already been added to the list, then add it
if (!found) if (!found)
{ {
RegisteredSkill newrs = new RegisteredSkill(); var newrs = new RegisteredSkill();
newrs.target = o; newrs.target = o;
newrs.sid = s; newrs.sid = s;
@ -194,9 +194,9 @@ public class XmlSpawnerSkillCheck
// go through the list and if the spawner is on it regardless of the skill registered, then remove it // go through the list and if the spawner is on it regardless of the skill registered, then remove it
if (all) if (all)
{ {
for(int i = 0;i<RegisteredSkill.MaxSkills+1;i++) for(var i = 0;i<RegisteredSkill.MaxSkills+1;i++)
{ {
ArrayList skilllist = RegisteredSkill.TriggerList((SkillName)i, map); var skilllist = RegisteredSkill.TriggerList((SkillName)i, map);
if (skilllist == null) if (skilllist == null)
{ {
@ -216,7 +216,7 @@ public class XmlSpawnerSkillCheck
} }
else else
{ {
ArrayList skilllist = RegisteredSkill.TriggerList(s, map); var skilllist = RegisteredSkill.TriggerList(s, map);
if (skilllist == null) if (skilllist == null)
{ {
@ -260,7 +260,7 @@ public class XmlSpawnerSkillCheck
*/ */
// then check for registered skills // then check for registered skills
ArrayList skilllist = RegisteredSkill.TriggerList(skill.SkillName, m.Map); var skilllist = RegisteredSkill.TriggerList(skill.SkillName, m.Map);
if (skilllist == null) if (skilllist == null)
{ {

View file

@ -12,22 +12,22 @@ public class XmlTextEntryBook : BaseBook
public void FillTextEntryBook(string text) public void FillTextEntryBook(string text)
{ {
int pagenum = 0; var pagenum = 0;
int current = 0; var current = 0;
// break up the text into single line length pieces // break up the text into single line length pieces
while (text != null && current < text.Length) while (text != null && current < text.Length)
{ {
int lineCount = 10; var lineCount = 10;
string[] lines = new string[lineCount]; var lines = new string[lineCount];
// place the line on the page // place the line on the page
for (int i = 0; i < lineCount; i++) for (var i = 0; i < lineCount; i++)
{ {
if (current < text.Length) if (current < text.Length)
{ {
// make each line 25 chars long // make each line 25 chars long
int length = text.Length - current; var length = text.Length - current;
if (length > 20) if (length > 20)
{ {
length = 20; length = 20;
@ -52,11 +52,11 @@ public class XmlTextEntryBook : BaseBook
pagenum++; pagenum++;
} }
// empty the remaining contents // empty the remaining contents
for (int j = pagenum; j < PagesCount; j++) for (var j = pagenum; j < PagesCount; j++)
{ {
if (Pages[j].Lines.Length > 0) if (Pages[j].Lines.Length > 0)
{ {
for (int i = 0; i < Pages[j].Lines.Length; i++) for (var i = 0; i < Pages[j].Lines.Length; i++)
{ {
Pages[j].Lines[i] = string.Empty; Pages[j].Lines[i] = string.Empty;
} }

View file

@ -83,9 +83,9 @@ public class XmlSpawnerDefaults
// find the default entry corresponding to the account and username // find the default entry corresponding to the account and username
if (DefaultEntryList != null) if (DefaultEntryList != null)
{ {
for (int i = 0; i < DefaultEntryList.Count; i++) for (var i = 0; i < DefaultEntryList.Count; i++)
{ {
DefaultEntry entry = (DefaultEntry)DefaultEntryList[i]; var entry = (DefaultEntry)DefaultEntryList[i];
if (entry != null && string.Compare(entry.PlayerName, name, true) == 0 && string.Compare(entry.AccountName, account, true) == 0) if (entry != null && string.Compare(entry.PlayerName, name, true) == 0 && string.Compare(entry.AccountName, account, true) == 0)
{ {
return entry; return entry;
@ -93,7 +93,7 @@ public class XmlSpawnerDefaults
} }
} }
// if not found then add one // if not found then add one
DefaultEntry newentry = new DefaultEntry var newentry = new DefaultEntry
{ {
PlayerName = name, PlayerName = name,
AccountName = account AccountName = account
@ -187,9 +187,9 @@ public class XmlAddGump : Gump
return "0"; return "0";
} }
System.Text.StringBuilder sb = new System.Text.StringBuilder(); var sb = new System.Text.StringBuilder();
sb.AppendFormat("{0}", defs.NameList.Length); sb.AppendFormat("{0}", defs.NameList.Length);
for (int i = 0; i < defs.NameList.Length; i++) for (var i = 0; i < defs.NameList.Length; i++)
{ {
sb.AppendFormat(":{0}", defs.NameList[i]); sb.AppendFormat(":{0}", defs.NameList[i]);
} }
@ -203,9 +203,9 @@ public class XmlAddGump : Gump
return "0"; return "0";
} }
System.Text.StringBuilder sb = new System.Text.StringBuilder(); var sb = new System.Text.StringBuilder();
sb.AppendFormat("{0}", defs.SelectionList.Length); sb.AppendFormat("{0}", defs.SelectionList.Length);
for (int i = 0; i < defs.SelectionList.Length; i++) for (var i = 0; i < defs.SelectionList.Length; i++)
{ {
sb.AppendFormat(":{0}", defs.SelectionList[i] ? 1 : 0); sb.AppendFormat(":{0}", defs.SelectionList[i] ? 1 : 0);
} }
@ -214,9 +214,9 @@ public class XmlAddGump : Gump
private static string[] StringToNameList(string namelist) private static string[] StringToNameList(string namelist)
{ {
string[] newlist = new string[MaxEntries]; var newlist = new string[MaxEntries];
string[] tmplist = namelist.Split(':'); var tmplist = namelist.Split(':');
for (int i = 1; i < tmplist.Length; i++) for (var i = 1; i < tmplist.Length; i++)
{ {
if (i - 1 >= newlist.Length) if (i - 1 >= newlist.Length)
{ {
@ -230,9 +230,9 @@ public class XmlAddGump : Gump
private static bool[] StringToSelectionList(string selectionlist) private static bool[] StringToSelectionList(string selectionlist)
{ {
bool[] newlist = new bool[MaxEntries]; var newlist = new bool[MaxEntries];
string[] tmplist = selectionlist.Split(':'); var tmplist = selectionlist.Split(':');
for (int i = 1; i < tmplist.Length; i++) for (var i = 1; i < tmplist.Length; i++)
{ {
if (i - 1 >= newlist.Length) if (i - 1 >= newlist.Length)
{ {
@ -259,7 +259,7 @@ public class XmlAddGump : Gump
} }
// Create the data set // Create the data set
DataSet ds = new DataSet(DefsDataSetName); var ds = new DataSet(DefsDataSetName);
// Load the data set up // Load the data set up
ds.Tables.Add(DefsTablePointName); ds.Tables.Add(DefsTablePointName);
@ -312,7 +312,7 @@ public class XmlAddGump : Gump
ds.Tables[DefsTablePointName].Columns.Add("AutoNumberValue"); ds.Tables[DefsTablePointName].Columns.Add("AutoNumberValue");
// Create a new data row // Create a new data row
DataRow dr = ds.Tables[DefsTablePointName].NewRow(); var dr = ds.Tables[DefsTablePointName].NewRow();
// Populate the data // Populate the data
//dr["AccountName"] = (string)defs.AccountName; //dr["AccountName"] = (string)defs.AccountName;
@ -364,7 +364,7 @@ public class XmlAddGump : Gump
ds.Tables[DefsTablePointName].Rows.Add(dr); ds.Tables[DefsTablePointName].Rows.Add(dr);
// Write out the file // Write out the file
bool file_error = false; var file_error = false;
var dirname = Directory.Exists(DefsDir) ? $"{DefsDir}/{filename}.defs" : $"{filename}.defs"; var dirname = Directory.Exists(DefsDir) ? $"{DefsDir}/{filename}.defs" : $"{filename}.defs";
@ -431,11 +431,11 @@ public class XmlAddGump : Gump
} }
// Create the data set // Create the data set
DataSet ds = new DataSet(DefsDataSetName); var ds = new DataSet(DefsDataSetName);
// Read in the file // Read in the file
//ds.ReadXml(e.Arguments[0].ToString()); //ds.ReadXml(e.Arguments[0].ToString());
bool fileerror = false; var fileerror = false;
try try
{ {
ds.ReadXml(fs); ds.ReadXml(fs);
@ -460,17 +460,17 @@ public class XmlAddGump : Gump
if (ds.Tables[DefsTablePointName] != null && ds.Tables[DefsTablePointName].Rows.Count > 0) if (ds.Tables[DefsTablePointName] != null && ds.Tables[DefsTablePointName].Rows.Count > 0)
{ {
//foreach(DataRow dr in ds.Tables[DefsTablePointName].Rows){ //foreach(DataRow dr in ds.Tables[DefsTablePointName].Rows){
DataRow dr = ds.Tables[DefsTablePointName].Rows[0]; var dr = ds.Tables[DefsTablePointName].Rows[0];
try { defs.SpawnerName = (string)dr["SpawnerName"]; } try { defs.SpawnerName = (string)dr["SpawnerName"]; }
catch (Exception e) { Diagnostics.ExceptionLogging.LogException(e); } catch (Exception e) { Diagnostics.ExceptionLogging.LogException(e); }
double mindelay = defs.MinDelay.TotalMinutes; var mindelay = defs.MinDelay.TotalMinutes;
try { mindelay = double.Parse((string)dr["MinDelay"]); } try { mindelay = double.Parse((string)dr["MinDelay"]); }
catch (Exception e) { Diagnostics.ExceptionLogging.LogException(e); } catch (Exception e) { Diagnostics.ExceptionLogging.LogException(e); }
defs.MinDelay = TimeSpan.FromMinutes(mindelay); defs.MinDelay = TimeSpan.FromMinutes(mindelay);
double maxdelay = defs.MaxDelay.TotalMinutes; var maxdelay = defs.MaxDelay.TotalMinutes;
try { maxdelay = double.Parse((string)dr["MaxDelay"]); } try { maxdelay = double.Parse((string)dr["MaxDelay"]); }
catch (Exception e) { Diagnostics.ExceptionLogging.LogException(e); } catch (Exception e) { Diagnostics.ExceptionLogging.LogException(e); }
defs.MaxDelay = TimeSpan.FromMinutes(maxdelay); defs.MaxDelay = TimeSpan.FromMinutes(maxdelay);
@ -486,22 +486,22 @@ public class XmlAddGump : Gump
try { defs.Team = int.Parse((string)dr["Team"]); } try { defs.Team = int.Parse((string)dr["Team"]); }
catch (Exception e) { Diagnostics.ExceptionLogging.LogException(e); } catch (Exception e) { Diagnostics.ExceptionLogging.LogException(e); }
double minrefract = defs.RefractMin.TotalMinutes; var minrefract = defs.RefractMin.TotalMinutes;
try { minrefract = double.Parse((string)dr["MinRefractory"]); } try { minrefract = double.Parse((string)dr["MinRefractory"]); }
catch (Exception e) { Diagnostics.ExceptionLogging.LogException(e); } catch (Exception e) { Diagnostics.ExceptionLogging.LogException(e); }
defs.RefractMin = TimeSpan.FromMinutes(minrefract); defs.RefractMin = TimeSpan.FromMinutes(minrefract);
double maxrefract = defs.RefractMax.TotalMinutes; var maxrefract = defs.RefractMax.TotalMinutes;
try { maxrefract = double.Parse((string)dr["MaxRefractory"]); } try { maxrefract = double.Parse((string)dr["MaxRefractory"]); }
catch (Exception e) { Diagnostics.ExceptionLogging.LogException(e); } catch (Exception e) { Diagnostics.ExceptionLogging.LogException(e); }
defs.RefractMax = TimeSpan.FromMinutes(maxrefract); defs.RefractMax = TimeSpan.FromMinutes(maxrefract);
double todstart = defs.TODStart.TotalMinutes; var todstart = defs.TODStart.TotalMinutes;
try { todstart = double.Parse((string)dr["TODStart"]); } try { todstart = double.Parse((string)dr["TODStart"]); }
catch (Exception e) { Diagnostics.ExceptionLogging.LogException(e); } catch (Exception e) { Diagnostics.ExceptionLogging.LogException(e); }
defs.TODStart = TimeSpan.FromMinutes(todstart); defs.TODStart = TimeSpan.FromMinutes(todstart);
double todend = defs.TODEnd.TotalMinutes; var todend = defs.TODEnd.TotalMinutes;
try { todend = double.Parse((string)dr["TODEnd"]); } try { todend = double.Parse((string)dr["TODEnd"]); }
catch (Exception e) { Diagnostics.ExceptionLogging.LogException(e); } catch (Exception e) { Diagnostics.ExceptionLogging.LogException(e); }
defs.TODEnd = TimeSpan.FromMinutes(todend); defs.TODEnd = TimeSpan.FromMinutes(todend);
@ -522,12 +522,12 @@ public class XmlAddGump : Gump
} }
} }
double duration = defs.Duration.TotalMinutes; var duration = defs.Duration.TotalMinutes;
try { duration = double.Parse((string)dr["Duration"]); } try { duration = double.Parse((string)dr["Duration"]); }
catch (Exception e) { Diagnostics.ExceptionLogging.LogException(e); } catch (Exception e) { Diagnostics.ExceptionLogging.LogException(e); }
defs.Duration = TimeSpan.FromMinutes(duration); defs.Duration = TimeSpan.FromMinutes(duration);
double despawnTime = defs.DespawnTime.TotalHours; var despawnTime = defs.DespawnTime.TotalHours;
try { despawnTime = double.Parse((string)dr["DespawnTime"]); } try { despawnTime = double.Parse((string)dr["DespawnTime"]); }
catch (Exception e) { Diagnostics.ExceptionLogging.LogException(e); } catch (Exception e) { Diagnostics.ExceptionLogging.LogException(e); }
defs.DespawnTime = TimeSpan.FromHours(despawnTime); defs.DespawnTime = TimeSpan.FromHours(despawnTime);
@ -613,9 +613,9 @@ public class XmlAddGump : Gump
[Description("Opens a gump that can add Xmlspawners with specified default settings")] [Description("Opens a gump that can add Xmlspawners with specified default settings")]
public static void XmlAdd_OnCommand(CommandEventArgs e) public static void XmlAdd_OnCommand(CommandEventArgs e)
{ {
Account acct = e.Mobile.Account as Account; var acct = e.Mobile.Account as Account;
int x = 440; var x = 440;
int y = 0; var y = 0;
XmlSpawnerDefaults.DefaultEntry defs = null; XmlSpawnerDefaults.DefaultEntry defs = null;
if (acct != null) if (acct != null)
{ {
@ -631,7 +631,7 @@ public class XmlAddGump : Gump
try try
{ {
// Check if there is an argument provided (load criteria) // Check if there is an argument provided (load criteria)
for (int nxtarg = 0; nxtarg < e.Arguments.Length; nxtarg++) for (var nxtarg = 0; nxtarg < e.Arguments.Length; nxtarg++)
{ {
// is it a defaults option? // is it a defaults option?
if (e.Arguments[nxtarg].ToLower() == "-defaults") if (e.Arguments[nxtarg].ToLower() == "-defaults")
@ -663,7 +663,7 @@ public class XmlAddGump : Gump
m_From = from; m_From = from;
// read the text entries for default values // read the text entries for default values
Account acct = from.Account as Account; var acct = from.Account as Account;
if (acct != null) if (acct != null)
{ {
defs = XmlSpawnerDefaults.GetDefaults(acct.ToString(), from.Name); defs = XmlSpawnerDefaults.GetDefaults(acct.ToString(), from.Name);
@ -943,10 +943,10 @@ public class XmlAddGump : Gump
// display the clear all toggle // display the clear all toggle
AddButton(475, 5, 0xD2, 0xD3, 3999); AddButton(475, 5, 0xD2, 0xD3, 3999);
// display the selection entries // display the selection entries
for (int i = 0; i < MaxEntries; i++) for (var i = 0; i < MaxEntries; i++)
{ {
int xpos = i / MaxEntriesPerColumn * 155; var xpos = i / MaxEntriesPerColumn * 155;
int ypos = i % MaxEntriesPerColumn * 22 + 30; var ypos = i % MaxEntriesPerColumn * 22 + 30;
// background for search results area // background for search results area
AddImageTiled(xpos + 205, ypos, 116, 23, 0x52); AddImageTiled(xpos + 205, ypos, 116, 23, 0x52);
@ -954,13 +954,13 @@ public class XmlAddGump : Gump
// has this been selected for category info specification? // has this been selected for category info specification?
AddImageTiled(xpos + 206, ypos + 1, 114, 21, i == defs.CategorySelectionIndex ? 0x1436 : 0xBBC); AddImageTiled(xpos + 206, ypos + 1, 114, 21, i == defs.CategorySelectionIndex ? 0x1436 : 0xBBC);
bool sel = false; var sel = false;
if (defs.SelectionList != null && i < defs.SelectionList.Length) if (defs.SelectionList != null && i < defs.SelectionList.Length)
{ {
sel = defs.SelectionList[i]; sel = defs.SelectionList[i];
} }
int texthue = 0; var texthue = 0;
if (sel) if (sel)
{ {
texthue = 68; texthue = 68;
@ -1059,7 +1059,7 @@ public class XmlAddGump : Gump
// read the text entries for default values // read the text entries for default values
XmlSpawnerDefaults.DefaultEntry defs = null; XmlSpawnerDefaults.DefaultEntry defs = null;
Account acct = from.Account as Account; var acct = from.Account as Account;
if (acct != null) if (acct != null)
{ {
defs = XmlSpawnerDefaults.GetDefaults(acct.ToString(), from.Name); defs = XmlSpawnerDefaults.GetDefaults(acct.ToString(), from.Name);
@ -1070,8 +1070,8 @@ public class XmlAddGump : Gump
return; return;
} }
int x = defs.AddGumpX; var x = defs.AddGumpX;
int y = defs.AddGumpY; var y = defs.AddGumpY;
if (defs.ShowExtension) if (defs.ShowExtension)
{ {
// shift the starting point // shift the starting point
@ -1101,7 +1101,7 @@ public class XmlAddGump : Gump
// read the text entries for default values // read the text entries for default values
defs = null; defs = null;
Account acct = state.Mobile.Account as Account; var acct = state.Mobile.Account as Account;
if (acct != null) if (acct != null)
{ {
defs = XmlSpawnerDefaults.GetDefaults(acct.ToString(), state.Mobile.Name); defs = XmlSpawnerDefaults.GetDefaults(acct.ToString(), state.Mobile.Name);
@ -1123,10 +1123,10 @@ public class XmlAddGump : Gump
} }
// assign it a unique id // assign it a unique id
Guid SpawnId = Guid.NewGuid(); var SpawnId = Guid.NewGuid();
// count the number of entries to be added for maxcount // count the number of entries to be added for maxcount
int maxcount = 0; var maxcount = 0;
for (int i = 0; i < MaxEntries; i++) for (var i = 0; i < MaxEntries; i++)
{ {
if (defs.SelectionList != null && i < defs.SelectionList.Length && defs.SelectionList[i] && if (defs.SelectionList != null && i < defs.SelectionList.Length && defs.SelectionList[i] &&
defs.NameList != null && i < defs.NameList.Length && defs.NameList[i] != null && defs.NameList[i].Length > 0) defs.NameList != null && i < defs.NameList.Length && defs.NameList[i] != null && defs.NameList[i].Length > 0)
@ -1136,13 +1136,13 @@ public class XmlAddGump : Gump
} }
// if autonumbering is enabled, name the spawner with the name+number // if autonumbering is enabled, name the spawner with the name+number
string sname = defs.SpawnerName; var sname = defs.SpawnerName;
if (defs.AutoNumber) if (defs.AutoNumber)
{ {
sname = $"{defs.SpawnerName}#{defs.AutoNumberValue}"; sname = $"{defs.SpawnerName}#{defs.AutoNumberValue}";
} }
XmlSpawner spawner = new XmlSpawner(SpawnId, from.Location.X, from.Location.Y, 0, 0, sname, maxcount, var spawner = new XmlSpawner(SpawnId, from.Location.X, from.Location.Y, 0, 0, sname, maxcount,
defs.MinDelay, defs.MaxDelay, defs.Duration, defs.ProximityRange, defs.ProximitySound, 1, defs.MinDelay, defs.MaxDelay, defs.Duration, defs.ProximityRange, defs.ProximitySound, 1,
defs.Team, defs.HomeRange, defs.HomeRangeIsRelative, new XmlSpawner.SpawnObject[0], defs.RefractMin, defs.RefractMax, defs.Team, defs.HomeRange, defs.HomeRangeIsRelative, new XmlSpawner.SpawnObject[0], defs.RefractMin, defs.RefractMax,
defs.TODStart, defs.TODEnd, null, defs.TriggerObjectProp, defs.ProximityMsg, defs.TriggerOnCarried, defs.NoTriggerOnCarried, defs.TODStart, defs.TODEnd, null, defs.TriggerObjectProp, defs.ProximityMsg, defs.TriggerOnCarried, defs.NoTriggerOnCarried,
@ -1160,7 +1160,7 @@ public class XmlAddGump : Gump
else else
{ {
// place the spawner at the targeted location // place the spawner at the targeted location
IPoint3D p = targeted as IPoint3D; var p = targeted as IPoint3D;
if (p == null) if (p == null)
{ {
spawner.Delete(); spawner.Delete();
@ -1176,7 +1176,7 @@ public class XmlAddGump : Gump
spawner.SpawnRange = defs.SpawnRange; spawner.SpawnRange = defs.SpawnRange;
// add entries from the name list // add entries from the name list
for (int i = 0; i < MaxEntries; i++) for (var i = 0; i < MaxEntries; i++)
{ {
if (defs.SelectionList != null && i < defs.SelectionList.Length && defs.SelectionList[i] && if (defs.SelectionList != null && i < defs.SelectionList.Length && defs.SelectionList[i] &&
defs.NameList != null && i < defs.NameList.Length && defs.NameList[i] != null && defs.NameList[i].Length > 0) defs.NameList != null && i < defs.NameList.Length && defs.NameList[i] != null && defs.NameList[i].Length > 0)
@ -1209,13 +1209,13 @@ public class XmlAddGump : Gump
} }
// read the text entries for default values // read the text entries for default values
XmlSpawnerDefaults.DefaultEntry defaults = XmlSpawnerDefaults.GetDefaults(state.Account.ToString(), state.Mobile.Name); var defaults = XmlSpawnerDefaults.GetDefaults(state.Account.ToString(), state.Mobile.Name);
if (defaults.IgnoreUpdate) if (defaults.IgnoreUpdate)
{ {
return; return;
} }
TextRelay tr = info.GetTextEntry(100); // mindelay var tr = info.GetTextEntry(100); // mindelay
if (tr?.Text != null && tr.Text.Length > 0) if (tr?.Text != null && tr.Text.Length > 0)
{ {
try { defaults.MinDelay = TimeSpan.FromMinutes(double.Parse(tr.Text)); } try { defaults.MinDelay = TimeSpan.FromMinutes(double.Parse(tr.Text)); }
@ -1259,7 +1259,7 @@ public class XmlAddGump : Gump
tr = info.GetTextEntry(106); // Speech trigger tr = info.GetTextEntry(106); // Speech trigger
if (tr != null) if (tr != null)
{ {
string txt = tr.Text; var txt = tr.Text;
if (txt != null && txt.Length == 0) if (txt != null && txt.Length == 0)
{ {
txt = null; txt = null;
@ -1333,7 +1333,7 @@ public class XmlAddGump : Gump
tr = info.GetTextEntry(117); // trigger on carried tr = info.GetTextEntry(117); // trigger on carried
if (tr != null) if (tr != null)
{ {
string txt = tr.Text; var txt = tr.Text;
if (txt != null && txt.Length == 0) if (txt != null && txt.Length == 0)
{ {
txt = null; txt = null;
@ -1345,7 +1345,7 @@ public class XmlAddGump : Gump
tr = info.GetTextEntry(118); // no trigger on carried tr = info.GetTextEntry(118); // no trigger on carried
if (tr != null) if (tr != null)
{ {
string txt = tr.Text; var txt = tr.Text;
if (txt != null && txt.Length == 0) if (txt != null && txt.Length == 0)
{ {
txt = null; txt = null;
@ -1357,7 +1357,7 @@ public class XmlAddGump : Gump
tr = info.GetTextEntry(119); // proximity message tr = info.GetTextEntry(119); // proximity message
if (tr != null) if (tr != null)
{ {
string txt = tr.Text; var txt = tr.Text;
if (txt != null && txt.Length == 0) if (txt != null && txt.Length == 0)
{ {
txt = null; txt = null;
@ -1369,7 +1369,7 @@ public class XmlAddGump : Gump
tr = info.GetTextEntry(120); // player trig prop tr = info.GetTextEntry(120); // player trig prop
if (tr != null) if (tr != null)
{ {
string txt = tr.Text; var txt = tr.Text;
if (txt != null && txt.Length == 0) if (txt != null && txt.Length == 0)
{ {
txt = null; txt = null;
@ -1388,7 +1388,7 @@ public class XmlAddGump : Gump
tr = info.GetTextEntry(122); // trig object prop tr = info.GetTextEntry(122); // trig object prop
if (tr != null) if (tr != null)
{ {
string txt = tr.Text; var txt = tr.Text;
if (txt != null && txt.Length == 0) if (txt != null && txt.Length == 0)
{ {
txt = null; txt = null;
@ -1407,7 +1407,7 @@ public class XmlAddGump : Gump
tr = info.GetTextEntry(124); // Skill trigger tr = info.GetTextEntry(124); // Skill trigger
if (tr != null) if (tr != null)
{ {
string txt = tr.Text; var txt = tr.Text;
if (txt != null && txt.Length == 0) if (txt != null && txt.Length == 0)
{ {
txt = null; txt = null;
@ -1426,7 +1426,7 @@ public class XmlAddGump : Gump
// fill the NameList from the text entries // fill the NameList from the text entries
if (defaults.ShowExtension) if (defaults.ShowExtension)
{ {
for (int i = 0; i < MaxEntries; i++) for (var i = 0; i < MaxEntries; i++)
{ {
tr = info.GetTextEntry(1000 + i); tr = info.GetTextEntry(1000 + i);
if (defaults.NameList != null && i < defaults.NameList.Length && tr != null) if (defaults.NameList != null && i < defaults.NameList.Length && tr != null)
@ -1579,7 +1579,7 @@ public class XmlAddGump : Gump
{ {
if (info.ButtonID >= 4000 && info.ButtonID < 4000 + MaxEntries) if (info.ButtonID >= 4000 && info.ButtonID < 4000 + MaxEntries)
{ {
int i = info.ButtonID - 4000; var i = info.ButtonID - 4000;
if (defaults.SelectionList != null && i >= 0 && i < defaults.SelectionList.Length) if (defaults.SelectionList != null && i >= 0 && i < defaults.SelectionList.Length)
{ {
defaults.SelectionList[i] = !defaults.SelectionList[i]; defaults.SelectionList[i] = !defaults.SelectionList[i];
@ -1587,10 +1587,10 @@ public class XmlAddGump : Gump
} }
if (info.ButtonID >= 5000 && info.ButtonID < 5000 + MaxEntries) if (info.ButtonID >= 5000 && info.ButtonID < 5000 + MaxEntries)
{ {
int i = info.ButtonID - 5000; var i = info.ButtonID - 5000;
defaults.CategorySelectionIndex = i; defaults.CategorySelectionIndex = i;
XmlAddGump newg = new XmlAddGump(state.Mobile, defaults.StartingLoc, defaults.StartingMap, false, defaults.ShowExtension, 0, 0); var newg = new XmlAddGump(state.Mobile, defaults.StartingLoc, defaults.StartingMap, false, defaults.ShowExtension, 0, 0);
state.Mobile.SendGump(newg); state.Mobile.SendGump(newg);
@ -1606,7 +1606,7 @@ public class XmlAddGump : Gump
state.Mobile.CloseGump<XmlPartialCategorizedAddGump>(); state.Mobile.CloseGump<XmlPartialCategorizedAddGump>();
//Type [] types = (Type[])XmlPartialCategorizedAddGump.Match(defs.NameList[i]).ToArray(typeof(Type)); //Type [] types = (Type[])XmlPartialCategorizedAddGump.Match(defs.NameList[i]).ToArray(typeof(Type));
ArrayList types = XmlPartialCategorizedAddGump.Match(defaults.NameList[i]); var types = XmlPartialCategorizedAddGump.Match(defaults.NameList[i]);
state.Mobile.SendGump(new XmlPartialCategorizedAddGump(state.Mobile, defaults.NameList[i], 0, types, true, i, newg)); state.Mobile.SendGump(new XmlPartialCategorizedAddGump(state.Mobile, defaults.NameList[i], 0, types, true, i, newg));
} }
@ -1625,7 +1625,7 @@ public class XmlAddGump : Gump
public XmlAddOptionsGump(Mobile from) : base(0, 0) public XmlAddOptionsGump(Mobile from) : base(0, 0)
{ {
// read the text entries for default values // read the text entries for default values
Account acct = from.Account as Account; var acct = from.Account as Account;
XmlSpawnerDefaults.DefaultEntry defs = null; XmlSpawnerDefaults.DefaultEntry defs = null;
if (acct != null) if (acct != null)
@ -1680,13 +1680,13 @@ public class XmlAddGump : Gump
} }
// read the text entries for default values // read the text entries for default values
XmlSpawnerDefaults.DefaultEntry defs = XmlSpawnerDefaults.GetDefaults(state.Account.ToString(), state.Mobile.Name); var defs = XmlSpawnerDefaults.GetDefaults(state.Account.ToString(), state.Mobile.Name);
if (defs == null) if (defs == null)
{ {
return; return;
} }
TextRelay tr = info.GetTextEntry(100); // AddGumpX var tr = info.GetTextEntry(100); // AddGumpX
if (tr?.Text != null && tr.Text.Length > 0) if (tr?.Text != null && tr.Text.Length > 0)
{ {
try { defs.AddGumpX = int.Parse(tr.Text); } try { defs.AddGumpX = int.Parse(tr.Text); }
@ -1752,7 +1752,7 @@ public class XmlAddGump : Gump
return; return;
} }
int radiostate = -1; var radiostate = -1;
if (info.Switches.Length > 0) if (info.Switches.Length > 0)
{ {
radiostate = info.Switches[0]; radiostate = info.Switches[0];

View file

@ -42,11 +42,11 @@ public class XmlAddCAGObject : XmlAddCAGNode
} }
else if (gump is XmlSpawnerGump spawnerGump) else if (gump is XmlSpawnerGump spawnerGump)
{ {
XmlSpawner m_Spawner = spawnerGump.m_Spawner; var m_Spawner = spawnerGump.m_Spawner;
if (m_Spawner != null) if (m_Spawner != null)
{ {
XmlSpawnerGump xg = m_Spawner.SpawnerGump; var xg = m_Spawner.SpawnerGump;
if (xg != null) if (xg != null)
{ {
@ -130,7 +130,7 @@ public class XmlAddCAGCategory : XmlAddCAGNode
} }
else else
{ {
ArrayList nodes = new ArrayList(); var nodes = new ArrayList();
try try
{ {
@ -170,7 +170,7 @@ public class XmlAddCAGCategory : XmlAddCAGNode
{ {
if (File.Exists(path)) if (File.Exists(path))
{ {
XmlTextReader xml = new XmlTextReader(path) var xml = new XmlTextReader(path)
{ {
WhitespaceHandling = WhitespaceHandling.None WhitespaceHandling = WhitespaceHandling.None
}; };
@ -179,7 +179,7 @@ public class XmlAddCAGCategory : XmlAddCAGNode
{ {
if (xml.Name == "category" && xml.NodeType == XmlNodeType.Element) if (xml.Name == "category" && xml.NodeType == XmlNodeType.Element)
{ {
XmlAddCAGCategory cat = new XmlAddCAGCategory(null, xml); var cat = new XmlAddCAGCategory(null, xml);
xml.Close(); xml.Close();
@ -285,9 +285,9 @@ public class XmlCategorizedAddGump : Gump
{ {
m_Page = page; m_Page = page;
XmlAddCAGNode[] nodes = m_Category.Nodes; var nodes = m_Category.Nodes;
int count = nodes.Length - page * EntryCount; var count = nodes.Length - page * EntryCount;
if (count < 0) if (count < 0)
{ {
@ -298,15 +298,15 @@ public class XmlCategorizedAddGump : Gump
count = EntryCount; count = EntryCount;
} }
int totalHeight = OffsetSize + (EntryHeight + OffsetSize) * (count + 1); var totalHeight = OffsetSize + (EntryHeight + OffsetSize) * (count + 1);
AddPage(0); AddPage(0);
AddBackground(0, 0, BackWidth, BorderSize + totalHeight + BorderSize, BackGumpID); AddBackground(0, 0, BackWidth, BorderSize + totalHeight + BorderSize, BackGumpID);
AddImageTiled(BorderSize, BorderSize, TotalWidth - (OldStyle ? SetWidth + OffsetSize : 0), totalHeight, OffsetGumpID); AddImageTiled(BorderSize, BorderSize, TotalWidth - (OldStyle ? SetWidth + OffsetSize : 0), totalHeight, OffsetGumpID);
int x = BorderSize + OffsetSize; var x = BorderSize + OffsetSize;
int y = BorderSize + OffsetSize; var y = BorderSize + OffsetSize;
if (OldStyle) if (OldStyle)
{ {
@ -329,7 +329,7 @@ public class XmlCategorizedAddGump : Gump
x += PrevWidth + OffsetSize; x += PrevWidth + OffsetSize;
int emptyWidth = TotalWidth - PrevWidth * 2 - NextWidth - OffsetSize * 5 - (OldStyle ? SetWidth + OffsetSize : 0); var emptyWidth = TotalWidth - PrevWidth * 2 - NextWidth - OffsetSize * 5 - (OldStyle ? SetWidth + OffsetSize : 0);
if (!OldStyle) if (!OldStyle)
{ {
@ -382,7 +382,7 @@ public class XmlCategorizedAddGump : Gump
x = BorderSize + OffsetSize; x = BorderSize + OffsetSize;
y += EntryHeight + OffsetSize; y += EntryHeight + OffsetSize;
XmlAddCAGNode node = nodes[index]; var node = nodes[index];
AddImageTiled(x, y, EntryWidth, EntryHeight, EntryGumpID); AddImageTiled(x, y, EntryWidth, EntryHeight, EntryGumpID);
AddLabelCropped(x + TextOffsetX, y + (EntryHeight - 20) / 2, EntryWidth - TextOffsetX, EntryHeight, TextHue, node.Caption); AddLabelCropped(x + TextOffsetX, y + (EntryHeight - 20) / 2, EntryWidth - TextOffsetX, EntryHeight, TextHue, node.Caption);
@ -398,9 +398,9 @@ public class XmlCategorizedAddGump : Gump
if (node is XmlAddCAGObject obj) if (node is XmlAddCAGObject obj)
{ {
int itemID = obj.ItemID; var itemID = obj.ItemID;
Rectangle2D bounds = ItemBounds.Table[itemID]; var bounds = ItemBounds.Table[itemID];
if (itemID != 1 && bounds.Height < EntryHeight * 2) if (itemID != 1 && bounds.Height < EntryHeight * 2)
{ {
@ -419,7 +419,7 @@ public class XmlCategorizedAddGump : Gump
public override void OnResponse(NetState state, RelayInfo info) public override void OnResponse(NetState state, RelayInfo info)
{ {
Mobile from = m_Owner; var from = m_Owner;
switch (info.ButtonID) switch (info.ButtonID)
{ {
@ -431,7 +431,7 @@ public class XmlCategorizedAddGump : Gump
{ {
if (m_Category.Parent != null) if (m_Category.Parent != null)
{ {
int index = Array.IndexOf(m_Category.Parent.Nodes, m_Category) / EntryCount; var index = Array.IndexOf(m_Category.Parent.Nodes, m_Category) / EntryCount;
if (index < 0) if (index < 0)
{ {
@ -463,7 +463,7 @@ public class XmlCategorizedAddGump : Gump
} }
default: default:
{ {
int index = m_Page * EntryCount + (info.ButtonID - 4); var index = m_Page * EntryCount + (info.ButtonID - 4);
if (index >= 0 && index < m_Category.Nodes.Length) if (index >= 0 && index < m_Category.Nodes.Length)
{ {

View file

@ -55,17 +55,17 @@ public class XmlPartialCategorizedAddGump : Gump
if (searchResults.Count > 0) if (searchResults.Count > 0)
{ {
for (int i = page * 10; i < (page + 1) * 10 && i < searchResults.Count; ++i) for (var i = page * 10; i < (page + 1) * 10 && i < searchResults.Count; ++i)
{ {
int index = i % 10; var index = i % 10;
SearchEntry se = (SearchEntry)searchResults[i]; var se = (SearchEntry)searchResults[i];
string labelstr = se.EntryType.Name; var labelstr = se.EntryType.Name;
if (se.Parameters.Length > 0) if (se.Parameters.Length > 0)
{ {
for (int j = 0; j < se.Parameters.Length; j++) for (var j = 0; j < se.Parameters.Length; j++)
{ {
labelstr += $", {se.Parameters[j].Name}"; labelstr += $", {se.Parameters[j].Name}";
} }
@ -122,19 +122,19 @@ public class XmlPartialCategorizedAddGump : Gump
match = match.ToLower(); match = match.ToLower();
for (int i = 0; i < types.Count; ++i) for (var i = 0; i < types.Count; ++i)
{ {
Type t = types[i]; var t = types[i];
if ((typeofMobile.IsAssignableFrom(t) || typeofItem.IsAssignableFrom(t)) && t.Name.ToLower().IndexOf(match) >= 0 && !results.Contains(t)) if ((typeofMobile.IsAssignableFrom(t) || typeofItem.IsAssignableFrom(t)) && t.Name.ToLower().IndexOf(match) >= 0 && !results.Contains(t))
{ {
ConstructorInfo[] ctors = t.GetConstructors(); var ctors = t.GetConstructors();
for (int j = 0; j < ctors.Length; ++j) for (var j = 0; j < ctors.Length; ++j)
{ {
if (/*ctors[j].GetParameters().Length == 0 && */ ctors[j].IsDefined(typeof(ConstructibleAttribute), false)) if (/*ctors[j].GetParameters().Length == 0 && */ ctors[j].IsDefined(typeof(ConstructibleAttribute), false))
{ {
SearchEntry s = new SearchEntry var s = new SearchEntry
{ {
EntryType = t, EntryType = t,
Parameters = ctors[j].GetParameters() Parameters = ctors[j].GetParameters()
@ -150,12 +150,12 @@ public class XmlPartialCategorizedAddGump : Gump
public static ArrayList Match(string match) public static ArrayList Match(string match)
{ {
ArrayList results = new ArrayList(); var results = new ArrayList();
Type[] types; Type[] types;
Assembly[] asms = AssemblyHandler.Assemblies; var asms = AssemblyHandler.Assemblies;
for (int i = 0; i < asms.Length; ++i) for (var i = 0; i < asms.Length; ++i)
{ {
types = AssemblyHandler.GetTypeCache(asms[i]).Types; types = AssemblyHandler.GetTypeCache(asms[i]).Types;
Match(match, types, results); Match(match, types, results);
@ -173,8 +173,8 @@ public class XmlPartialCategorizedAddGump : Gump
{ {
public int Compare(object x, object y) public int Compare(object x, object y)
{ {
SearchEntry a = x as SearchEntry; var a = x as SearchEntry;
SearchEntry b = y as SearchEntry; var b = y as SearchEntry;
return a.EntryType.Name.CompareTo(b.EntryType.Name); return a.EntryType.Name.CompareTo(b.EntryType.Name);
} }
@ -183,14 +183,14 @@ public class XmlPartialCategorizedAddGump : Gump
public override void OnResponse(Network.NetState sender, RelayInfo info) public override void OnResponse(Network.NetState sender, RelayInfo info)
{ {
Mobile from = sender.Mobile; var from = sender.Mobile;
switch (info.ButtonID) switch (info.ButtonID)
{ {
case 1: // Search case 1: // Search
{ {
TextRelay te = info.GetTextEntry(0); var te = info.GetTextEntry(0);
string match = te == null ? "" : te.Text.Trim(); var match = te == null ? "" : te.Text.Trim();
if (match.Length < 3) if (match.Length < 3)
{ {
@ -224,11 +224,11 @@ public class XmlPartialCategorizedAddGump : Gump
} }
default: default:
{ {
int index = info.ButtonID - 4; var index = info.ButtonID - 4;
if (index >= 0 && index < m_SearchResults.Count) if (index >= 0 && index < m_SearchResults.Count)
{ {
Type type = ((SearchEntry)m_SearchResults[index]).EntryType; var type = ((SearchEntry)m_SearchResults[index]).EntryType;
if (m_Gump is XmlAddGump mXmlAddGump && type != null) if (m_Gump is XmlAddGump mXmlAddGump && type != null)
{ {
@ -240,7 +240,7 @@ public class XmlPartialCategorizedAddGump : Gump
} }
else if (m_Spawner != null && type != null) else if (m_Spawner != null && type != null)
{ {
XmlSpawnerGump xg = m_Spawner.SpawnerGump; var xg = m_Spawner.SpawnerGump;
if (xg != null) if (xg != null)
{ {