static void Init() { SpawnEditor editorWindow = (SpawnEditor)EditorWindow.GetWindow((typeof(SpawnEditor))); editorWindow.Show(); editorWindow.Focus(); }
public Area(SpawnPoint Spawn, SpawnEditor Editor) { this.InitializeComponent(); this._Spawn = Spawn; this._Editor = Editor; int left = this._Editor.grpSpawnEdit.Left + this._Editor.grpSpawnEdit.Parent.Left + this._Editor.Left; int top = this._Editor.grpSpawnEdit.Top + this._Editor.grpSpawnEdit.Parent.Top + this._Editor.btnUpdateSpawn.Top + this._Editor.Top; base.Left = left; base.Top = top; NumericUpDown x = this.spnX; Rectangle bounds = this._Spawn.Bounds; x.Value = bounds.X; NumericUpDown y = this.spnY; bounds = this._Spawn.Bounds; y.Value = bounds.Y; NumericUpDown width = this.spnWidth; bounds = this._Spawn.Bounds; width.Value = bounds.Width; NumericUpDown height = this.spnHeight; bounds = this._Spawn.Bounds; height.Value = bounds.Height; this.spnCentreX.Value = this._Spawn.CentreX; this.spnCentreY.Value = this._Spawn.CentreY; this.spnCentreZ.Value = this._Spawn.CentreZ; this._IsConstructed = true; }
// Add menu named "TowerEditor" to the Window menu //[MenuItem ("TDTK/SpawnEditor")] public static void Init() { // Get existing open window or if none, make a new one: window = (SpawnEditor)EditorWindow.GetWindow(typeof(SpawnEditor)); window.minSize = new Vector2(620, 620); spawnTypeLabel[0] = "Continuous"; spawnTypeLabel[1] = "WaveCleared"; spawnTypeLabel[2] = "RoundBased"; spawnTypeLabel[3] = "SkippableContinuous"; spawnTypeLabel[4] = "SkippableWaveCleared"; GetSpawnManager(); }
static void Init() { // Get existing open window or if none, make a new one: window = (SpawnEditor)EditorWindow.GetWindow(typeof (SpawnEditor)); window.minSize=new Vector2(620, 620); spawnTypeLabel[0]="Continuous"; spawnTypeLabel[1]="WaveCleared"; spawnTypeLabel[2]="RoundBased"; spawnTypeLabel[3]="SkippableContinuous"; spawnTypeLabel[4]="SkippableWaveCleared"; GetSpawnManager(); }
public Area(SpawnPoint Spawn, SpawnEditor Editor) { this.InitializeComponent(); this._Spawn = Spawn; this._Editor = Editor; int num1 = this._Editor.grpSpawnEdit.Left + this._Editor.grpSpawnEdit.Parent.Left + this._Editor.Left; int num2 = this._Editor.grpSpawnEdit.Top + this._Editor.grpSpawnEdit.Parent.Top + this._Editor.btnUpdateSpawn.Top + this._Editor.Top; this.Left = num1; this.Top = num2; this.spnX.Value = (Decimal)this._Spawn.Bounds.X; this.spnY.Value = (Decimal)this._Spawn.Bounds.Y; this.spnWidth.Value = (Decimal)this._Spawn.Bounds.Width; this.spnHeight.Value = (Decimal)this._Spawn.Bounds.Height; this.spnCentreX.Value = (Decimal)this._Spawn.CentreX; this.spnCentreY.Value = (Decimal)this._Spawn.CentreY; this.spnCentreZ.Value = (Decimal)this._Spawn.CentreZ; this._IsConstructed = true; }
public Configure(SpawnEditor editor) { this._Editor = editor; this.InitializeComponent(); this._HKCUKey = Registry.CurrentUser.OpenSubKey(this.AppRegistryKey, true); if (this._HKCUKey == null || this._HKCUKey.ValueCount < 14) { return; } this.CfgRunUoPathValue = (string)this._HKCUKey.GetValue(this.AppRunUoPathValue, (object)string.Empty); this.CfgUoClientPathValue = (string)this._HKCUKey.GetValue(this.AppUoClientPathValue, (object)string.Empty); this.CfgUoClientWindowValue = (string)this._HKCUKey.GetValue(this.AppUoClientWindowValue, (object)"Ultima Online Third Dawn"); this.CfgZoomLevelValue = short.Parse(this._HKCUKey.GetValue(this.AppZoomLevelValue, (object)"-4") as string); this.CfgRunUoCmdPrefix = (string)this._HKCUKey.GetValue(this.AppRunUoCmdPrefixValue, (object)"["); this.CfgSpawnNameValue = (string)this._HKCUKey.GetValue(this.AppSpawnNameValue, (object)"Spawner"); this.CfgSpawnHomeRangeValue = (int)this._HKCUKey.GetValue(this.AppSpawnHomeRangeValue, (object)5); this.CfgSpawnMaxCountValue = (int)this._HKCUKey.GetValue(this.AppSpawnMaxCountValue, (object)1); this.CfgSpawnMinDelayValue = (int)this._HKCUKey.GetValue(this.AppSpawnMinDelayValue, (object)5); this.CfgSpawnMaxDelayValue = (int)this._HKCUKey.GetValue(this.AppSpawnMaxDelayValue, (object)10); this.CfgSpawnTeamValue = (int)this._HKCUKey.GetValue(this.AppSpawnTeamValue, (object)0); this.CfgSpawnGroupValue = bool.Parse(this._HKCUKey.GetValue(this.AppSpawnGroupValue, (object)bool.FalseString) as string); this.CfgSpawnRunningValue = bool.Parse(this._HKCUKey.GetValue(this.AppSpawnRunningValue, (object)bool.TrueString) as string); this.CfgSpawnRelativeHomeValue = bool.Parse(this._HKCUKey.GetValue(this.AppSpawnRelativeHomeValue, (object)bool.TrueString) as string); this.CfgStartingStaticsValue = bool.Parse(this._HKCUKey.GetValue(this.AppStartingStaticsValue, (object)bool.FalseString) as string); this.CfgStartingDetailsValue = bool.Parse(this._HKCUKey.GetValue(this.AppStartingDetailsValue, (object)bool.FalseString) as string); this.CfgStartingMapValue = (WorldMap)Enum.Parse(typeof(WorldMap), this._HKCUKey.GetValue(this.AppStartingMapValue, (object)"Trammel") as string); this.CfgStartingOnTopValue = bool.Parse(this._HKCUKey.GetValue(this.AppStartingOnTopValue, (object)bool.FalseString) as string); this.CfgStartingXValue = (int)this._HKCUKey.GetValue(this.AppStartingXValue, (object)-1); this.CfgStartingYValue = (int)this._HKCUKey.GetValue(this.AppStartingYValue, (object)-1); this.CfgStartingWidthValue = (int)this._HKCUKey.GetValue(this.AppStartingWidthValue, (object)-1); this.CfgStartingHeightValue = (int)this._HKCUKey.GetValue(this.AppStartingHeightValue, (object)-1); this.CfgTransferServerAddressValue = (string)this._HKCUKey.GetValue(this.AppTransferServerAddressValue, (object)"127.0.0.1"); this.CfgTransferServerPortValue = (int)this._HKCUKey.GetValue(this.AppTransferServerPortValue, (object)8030); if (!File.Exists(this.CfgRunUoPathValue) || this.CfgUoClientPathValue.Length <= 0) { return; } this._IsValidConfiguration = true; }
// Add menu named "TowerEditor" to the Window menu //[MenuItem ("TDTK/SpawnEditor")] public static void Init() { // Get existing open window or if none, make a new one: window = (SpawnEditor)EditorWindow.GetWindow(typeof(SpawnEditor)); window.minSize = new Vector2(670, 620); int enumLength = Enum.GetValues(typeof(_SpawnLimit)).Length; spawnLimitLabel = new string[enumLength]; spawnLimitLabel[0] = "Finite"; spawnLimitLabel[1] = "Infinite"; spawnLimitTooltip = new string[enumLength]; spawnLimitTooltip[0] = "Finite number of waves"; spawnLimitTooltip[1] = "Infinite number of waves (for survival or endless mode)"; enumLength = Enum.GetValues(typeof(_SpawnMode)).Length; spawnTypeLabel = new string[enumLength]; spawnTypeLabel[0] = "Continuous"; spawnTypeLabel[1] = "WaveCleared"; spawnTypeLabel[2] = "RoundBased"; spawnTypeLabel[3] = "SkippableContinuous"; spawnTypeLabel[4] = "SkippableWaveCleared"; spawnTypeTooltip = new string[enumLength]; spawnTypeTooltip[0] = "A new wave is spawn upon every wave duration countdown"; spawnTypeTooltip[1] = "A new wave is spawned when the current wave is cleared"; spawnTypeTooltip[2] = "Similar to Continuous but user can initiate the new next wave before the timer runs out"; spawnTypeTooltip[3] = "Similar to WaveCleared but user can initiate the next wave before clearing current wave"; spawnTypeTooltip[4] = "Each wave is treated like a round. a new wave can only take place when the previous wave is cleared. Each round require initiation from user"; LoadCreep(); GetSpawnManager(); rscList = ResourceEditorWindow.Load(); }
static void OpenSpawnEditor() { SpawnEditor.Init(); }
public AboutForm(SpawnEditor editor) { this._Editor = editor; this.InitializeComponent(); }
public EntryEdit(SpawnEditor editor) { this._Editor = editor; this.InitializeComponent(); }
public ImportMSF(SpawnEditor editor) { this._Editor = editor; }
public void DoImportMap(string filename, out int processedmaps, out int processedspawners) { processedmaps = 0; processedspawners = 0; int num1 = 0; int num2 = 0; if (filename == null || filename.Length <= 0) { return; } if (File.Exists(filename)) { string fileName = Path.GetFileName(filename); int num3 = 0; int num4 = 0; int num5 = 0; int num6 = -1; try { using (StreamReader streamReader = new StreamReader(filename)) { string str; while ((str = streamReader.ReadLine()) != null) { ++num5; string[] strArray1 = str.Trim().Split(' '); if (strArray1.Length == 2) { if (strArray1[0].ToLower() == "overridemap") { try { num6 = int.Parse(strArray1[1]); } catch { } } } if (strArray1.Length > 0 && strArray1[0] == "*") { bool flag1 = false; int num7 = 0; int num8 = 0; int num9 = 0; int num10 = 0; int num11 = 0; int num12 = 0; int num13 = 0; int num14 = 0; int maxamount = 0; string[] strArray2 = (string[])null; if (strArray1.Length != 11 && strArray1.Length != 12) { flag1 = true; } else { strArray2 = strArray1[1].Split(':'); if (strArray1.Length == 11) { try { num7 = int.Parse(strArray1[2]); num8 = int.Parse(strArray1[3]); num9 = int.Parse(strArray1[4]); num10 = int.Parse(strArray1[5]); num11 = int.Parse(strArray1[6]); num12 = int.Parse(strArray1[7]); num13 = int.Parse(strArray1[8]); num14 = int.Parse(strArray1[9]); maxamount = int.Parse(strArray1[10]); } catch { flag1 = true; } } else if (strArray1.Length == 12) { try { num7 = int.Parse(strArray1[2]); num8 = int.Parse(strArray1[3]); num9 = int.Parse(strArray1[4]); num10 = int.Parse(strArray1[5]); num11 = int.Parse(strArray1[6]); num12 = int.Parse(strArray1[7]); num13 = int.Parse(strArray1[8]); num14 = int.Parse(strArray1[9]); int.Parse(strArray1[10]); maxamount = int.Parse(strArray1[11]); } catch { flag1 = true; } } } if (!flag1 && strArray2 != null && strArray2.Length > 0) { if (num6 >= 0) { num10 = num6; } WorldMap Map = WorldMap.Internal; switch (num10) { case 0: Map = WorldMap.Felucca; break; case 1: Map = WorldMap.Felucca; break; case 2: Map = WorldMap.Trammel; break; case 3: Map = WorldMap.Ilshenar; break; case 4: Map = WorldMap.Malas; break; case 5: try { Map = WorldMap.Tokuno; break; } catch { break; } } if (Map == WorldMap.Internal) { ++num4; } else { SpawnPoint Spawn1 = new SpawnPoint(Guid.NewGuid(), Map, (short)num7, (short)num8, (short)(num14 * 2), (short)(num14 * 2)); Spawn1.SpawnName = string.Format("{0}#{1}", (object)fileName, (object)num3); Spawn1.SpawnHomeRange = num13; Spawn1.CentreZ = (short)num9; Spawn1.SpawnMinDelay = (double)num11; Spawn1.SpawnMaxDelay = (double)num12; Spawn1.SpawnMaxCount = maxamount; Type runUoType1 = SpawnEditor.FindRunUOType("BaseVendor"); bool flag2 = false; for (int index = 0; index < strArray2.Length; ++index) { Type runUoType2 = SpawnEditor.FindRunUOType(strArray2[index]); if (runUoType2 != null && runUoType1 != null && (runUoType2 == runUoType1 || runUoType2.IsSubclassOf(runUoType1))) { flag2 = true; } Spawn1.SpawnObjects.Add((object)new SpawnObject(strArray2[index], maxamount)); } Spawn1.IsSelected = false; if (flag2) { Spawn1.SpawnSpawnRange = 0; } this._Editor.tvwSpawnPoints.Nodes.Add((TreeNode) new SpawnPointNode(Spawn1)); ++num3; if (num10 == 0) { SpawnPoint Spawn2 = new SpawnPoint(Guid.NewGuid(), WorldMap.Trammel, (short)num7, (short)num8, (short)(num14 * 2), (short)(num14 * 2)); Spawn2.SpawnName = string.Format("{0}#{1}", (object)fileName, (object)num3); Spawn2.SpawnHomeRange = num13; Spawn2.CentreZ = (short)num9; Spawn2.SpawnMinDelay = (double)num11; Spawn2.SpawnMaxDelay = (double)num12; Spawn2.SpawnMaxCount = maxamount; for (int index = 0; index < strArray2.Length; ++index) { Spawn2.SpawnObjects.Add((object)new SpawnObject(strArray2[index], maxamount)); } Spawn2.IsSelected = false; if (flag2) { Spawn2.SpawnSpawnRange = 0; } this._Editor.tvwSpawnPoints.Nodes.Add((TreeNode) new SpawnPointNode(Spawn2)); ++num3; } } } else { ++num4; } } } streamReader.Close(); } } catch { } processedmaps = 1; processedspawners = num3; } else { if (!Directory.Exists(filename)) { return; } string[] strArray1 = (string[])null; try { strArray1 = Directory.GetFiles(filename, "*.map"); } catch { } if (strArray1 != null && strArray1.Length > 0) { foreach (string filename1 in strArray1) { this.DoImportMap(filename1, out processedmaps, out processedspawners); num1 += processedmaps; num2 += processedspawners; } } string[] strArray2 = (string[])null; try { strArray2 = Directory.GetDirectories(filename); } catch { } if (strArray2 != null && strArray2.Length > 0) { foreach (string filename1 in strArray2) { this.DoImportMap(filename1, out processedmaps, out processedspawners); num1 += processedmaps; num2 += processedspawners; } } processedmaps = num1; processedspawners = num2; } }
public bool HasMatch(SpawnPoint spawn) { if (spawn == null || spawn.SpawnObjects == null) { return(false); } bool flag1 = true; if (this.cmbSpawnerMap.SelectedIndex == 0 && (WorldMap)this._Editor.cbxMap.SelectedIndex != spawn.Map) { flag1 = false; } if (flag1 && this.txtSpawnerName.Text != null && this.txtSpawnerName.Text.Length > 0) { bool flag2 = false; if (this.chkNameCase.Checked) { if (spawn.SpawnName.IndexOf(this.txtSpawnerName.Text) >= 0) { flag2 = true; } } else if (spawn.SpawnName.ToLower().IndexOf(this.txtSpawnerName.Text.ToLower()) >= 0) { flag2 = true; } if (this.cmbNameHas.SelectedIndex == 0) { if (!flag2) { flag1 = false; } } else if (flag2) { flag1 = false; } } if (flag1 && this.txtSpawnerEntry.Text != null && this.txtSpawnerEntry.Text.Length > 0) { bool flag2 = false; if (spawn.SpawnObjects != null) { foreach (SpawnObject spawnObject in spawn.SpawnObjects) { if (this.chkEntryCase.Checked) { if (spawnObject.TypeName != null && spawnObject.TypeName.IndexOf(this.txtSpawnerEntry.Text) >= 0) { flag2 = true; break; } } else if (spawnObject.TypeName != null && spawnObject.TypeName.ToLower().IndexOf(this.txtSpawnerEntry.Text.ToLower()) >= 0) { flag2 = true; break; } } } if (this.cmbEntryHas.SelectedIndex == 0) { if (!flag2) { flag1 = false; } } else if (flag2) { flag1 = false; } } if (flag1 && this.txtSpawnerEntry2.Text != null && this.txtSpawnerEntry2.Text.Length > 0) { bool flag2 = false; if (spawn.SpawnObjects != null) { foreach (SpawnObject spawnObject in spawn.SpawnObjects) { if (this.chkEntryCase2.Checked) { if (spawnObject.TypeName != null && spawnObject.TypeName.IndexOf(this.txtSpawnerEntry2.Text) >= 0) { flag2 = true; break; } } else if (spawnObject.TypeName != null && spawnObject.TypeName.ToLower().IndexOf(this.txtSpawnerEntry2.Text.ToLower()) >= 0) { flag2 = true; break; } } } if (this.cmbEntryHas2.SelectedIndex == 0) { if (!flag2) { flag1 = false; } } else if (flag2) { flag1 = false; } } if (flag1 && this.txtSpawnerEntryType.Text != null && this.txtSpawnerEntryType.Text.Length > 0) { bool flag2 = false; Type runUoType = SpawnEditor.FindRunUOType(this.txtSpawnerEntryType.Text.ToLower()); if (spawn.SpawnObjects != null && runUoType != null) { foreach (SpawnObject spawnObject in spawn.SpawnObjects) { Type type = (Type)null; if (spawnObject.TypeName != null) { string[] strArray = spawnObject.TypeName.Split('/'); string name = (string)null; if (strArray != null && strArray.Length > 0) { name = strArray[0]; } type = SpawnEditor.FindRunUOType(name); } if (type != null && (type == runUoType || type.IsSubclassOf(runUoType))) { flag2 = true; break; } } } if (this.cmbEntryTypeHas.SelectedIndex == 0) { if (!flag2) { flag1 = false; } } else if (flag2) { flag1 = false; } } if (flag1 && this.txtSpawnerEntryType2.Text != null && this.txtSpawnerEntryType2.Text.Length > 0) { bool flag2 = false; Type runUoType = SpawnEditor.FindRunUOType(this.txtSpawnerEntryType2.Text.ToLower()); if (spawn.SpawnObjects != null && runUoType != null) { foreach (SpawnObject spawnObject in spawn.SpawnObjects) { Type type = (Type)null; if (spawnObject.TypeName != null) { string[] strArray = spawnObject.TypeName.Split('/'); string name = (string)null; if (strArray != null && strArray.Length > 0) { name = strArray[0]; } type = SpawnEditor.FindRunUOType(name); } if (type != null && (type == runUoType || type.IsSubclassOf(runUoType))) { flag2 = true; break; } } } if (this.cmbEntryTypeHas2.SelectedIndex == 0) { if (!flag2) { flag1 = false; } } else if (flag2) { flag1 = false; } } if (flag1 && this.cmbInContainers.SelectedIndex > 0) { if (this.cmbInContainers.SelectedIndex == 1 && !spawn.SpawnInContainer) { flag1 = false; } else if (this.cmbInContainers.SelectedIndex == 2 && spawn.SpawnInContainer) { flag1 = false; } } if (flag1 && this.cmbSequential.SelectedIndex > 0) { if (this.cmbSequential.SelectedIndex == 1 && spawn.SpawnSequentialSpawn < 0) { flag1 = false; } else if (this.cmbSequential.SelectedIndex == 2 && spawn.SpawnSequentialSpawn >= 0) { flag1 = false; } } if (flag1 && this.cmbSmartSpawning.SelectedIndex > 0) { if (this.cmbSmartSpawning.SelectedIndex == 1 && !spawn.SpawnSmartSpawning) { flag1 = false; } else if (this.cmbSmartSpawning.SelectedIndex == 2 && spawn.SpawnSmartSpawning) { flag1 = false; } } if (flag1 && this.cmbProximity.SelectedIndex > 0) { if (this.cmbProximity.SelectedIndex == 1 && spawn.SpawnProximityRange < 0) { flag1 = false; } else if (this.cmbProximity.SelectedIndex == 2 && spawn.SpawnProximityRange >= 0) { flag1 = false; } } if (flag1 && this.cmbRunning.SelectedIndex > 0) { if (this.cmbRunning.SelectedIndex == 1 && !spawn.SpawnIsRunning) { flag1 = false; } else if (this.cmbRunning.SelectedIndex == 2 && spawn.SpawnIsRunning) { flag1 = false; } } if (flag1 && this.chkAvgSpawnTime.Checked) { double num = (spawn.SpawnMinDelay + spawn.SpawnMaxDelay) / 2.0; if (this.cmbAvgSpawnTime.SelectedIndex == 0 && num >= (double)this.numAvgSpawnTime.Value) { flag1 = false; } else if (this.cmbAvgSpawnTime.SelectedIndex == 1 && num <= (double)this.numAvgSpawnTime.Value) { flag1 = false; } } string status_str; if (flag1 && this.txtPropertyTest.Text != null && (this.txtPropertyTest.Text.Trim().Length > 0 && !PropertyTest.CheckPropertyString((object)spawn, this.txtPropertyTest.Text, out status_str))) { flag1 = false; } if (flag1 && this.txtNotes.Text != null && this.txtNotes.Text.Trim().Length > 0) { bool flag2 = false; if (spawn.SpawnNotes != null && spawn.SpawnNotes.Length > 0 && spawn.SpawnNotes.ToLower().IndexOf(this.txtNotes.Text.ToLower()) >= 0) { flag2 = true; } if (this.cmbNotes.SelectedIndex == 0) { if (!flag2) { flag1 = false; } } else if (flag2) { flag1 = false; } } return(flag1); }
public SpawnerFilters(SpawnEditor editor) { this.InitializeComponent(); this._Editor = editor; this.InitializeSettings(); }
public bool HasMatch(SpawnPoint spawn) { string str; char[] chrArray; if (spawn == null || spawn.SpawnObjects == null) { return(false); } bool flag = true; if (this.cmbSpawnerMap.SelectedIndex == 0 && this._Editor.cbxMap.SelectedIndex != (int)spawn.Map) { flag = false; } if (flag && this.txtSpawnerName.Text != null && this.txtSpawnerName.Text.Length > 0) { bool flag1 = false; if (this.chkNameCase.Checked) { if (spawn.SpawnName.IndexOf(this.txtSpawnerName.Text) >= 0) { flag1 = true; } } else if (spawn.SpawnName.ToLower().IndexOf(this.txtSpawnerName.Text.ToLower()) >= 0) { flag1 = true; } if (this.cmbNameHas.SelectedIndex == 0) { if (!flag1) { flag = false; } } else if (flag1) { flag = false; } } if (flag && this.txtSpawnerEntry.Text != null && this.txtSpawnerEntry.Text.Length > 0) { bool flag2 = false; if (spawn.SpawnObjects != null) { foreach (SpawnObject spawnObject in spawn.SpawnObjects) { if (!this.chkEntryCase.Checked) { if (spawnObject.TypeName == null || spawnObject.TypeName.ToLower().IndexOf(this.txtSpawnerEntry.Text.ToLower()) < 0) { continue; } flag2 = true; break; } else { if (spawnObject.TypeName == null || spawnObject.TypeName.IndexOf(this.txtSpawnerEntry.Text) < 0) { continue; } flag2 = true; break; } } } if (this.cmbEntryHas.SelectedIndex == 0) { if (!flag2) { flag = false; } } else if (flag2) { flag = false; } } if (flag && this.txtSpawnerEntry2.Text != null && this.txtSpawnerEntry2.Text.Length > 0) { bool flag3 = false; if (spawn.SpawnObjects != null) { foreach (SpawnObject spawnObject1 in spawn.SpawnObjects) { if (!this.chkEntryCase2.Checked) { if (spawnObject1.TypeName == null || spawnObject1.TypeName.ToLower().IndexOf(this.txtSpawnerEntry2.Text.ToLower()) < 0) { continue; } flag3 = true; break; } else { if (spawnObject1.TypeName == null || spawnObject1.TypeName.IndexOf(this.txtSpawnerEntry2.Text) < 0) { continue; } flag3 = true; break; } } } if (this.cmbEntryHas2.SelectedIndex == 0) { if (!flag3) { flag = false; } } else if (flag3) { flag = false; } } if (flag && this.txtSpawnerEntryType.Text != null && this.txtSpawnerEntryType.Text.Length > 0) { bool flag4 = false; Type type = SpawnEditor.FindRunUOType(this.txtSpawnerEntryType.Text.ToLower()); if (spawn.SpawnObjects != null && type != null) { foreach (SpawnObject spawnObject2 in spawn.SpawnObjects) { Type type1 = null; if (spawnObject2.TypeName != null) { string typeName = spawnObject2.TypeName; chrArray = new char[] { '/' }; string[] strArrays = typeName.Split(chrArray); string str1 = null; if (strArrays != null && (int)strArrays.Length > 0) { str1 = strArrays[0]; } type1 = SpawnEditor.FindRunUOType(str1); } if (type1 == null || type1 != type && !type1.IsSubclassOf(type)) { continue; } flag4 = true; break; } } if (this.cmbEntryTypeHas.SelectedIndex == 0) { if (!flag4) { flag = false; } } else if (flag4) { flag = false; } } if (flag && this.txtSpawnerEntryType2.Text != null && this.txtSpawnerEntryType2.Text.Length > 0) { bool flag5 = false; Type type2 = SpawnEditor.FindRunUOType(this.txtSpawnerEntryType2.Text.ToLower()); if (spawn.SpawnObjects != null && type2 != null) { foreach (SpawnObject spawnObject3 in spawn.SpawnObjects) { Type type3 = null; if (spawnObject3.TypeName != null) { string typeName1 = spawnObject3.TypeName; chrArray = new char[] { '/' }; string[] strArrays1 = typeName1.Split(chrArray); string str2 = null; if (strArrays1 != null && (int)strArrays1.Length > 0) { str2 = strArrays1[0]; } type3 = SpawnEditor.FindRunUOType(str2); } if (type3 == null || type3 != type2 && !type3.IsSubclassOf(type2)) { continue; } flag5 = true; break; } } if (this.cmbEntryTypeHas2.SelectedIndex == 0) { if (!flag5) { flag = false; } } else if (flag5) { flag = false; } } if (flag && this.cmbInContainers.SelectedIndex > 0) { if (this.cmbInContainers.SelectedIndex == 1 && !spawn.SpawnInContainer) { flag = false; } else if (this.cmbInContainers.SelectedIndex == 2 && spawn.SpawnInContainer) { flag = false; } } if (flag && this.cmbSequential.SelectedIndex > 0) { if (this.cmbSequential.SelectedIndex == 1 && spawn.SpawnSequentialSpawn < 0) { flag = false; } else if (this.cmbSequential.SelectedIndex == 2 && spawn.SpawnSequentialSpawn >= 0) { flag = false; } } if (flag && this.cmbSmartSpawning.SelectedIndex > 0) { if (this.cmbSmartSpawning.SelectedIndex == 1 && !spawn.SpawnSmartSpawning) { flag = false; } else if (this.cmbSmartSpawning.SelectedIndex == 2 && spawn.SpawnSmartSpawning) { flag = false; } } if (flag && this.cmbProximity.SelectedIndex > 0) { if (this.cmbProximity.SelectedIndex == 1 && spawn.SpawnProximityRange < 0) { flag = false; } else if (this.cmbProximity.SelectedIndex == 2 && spawn.SpawnProximityRange >= 0) { flag = false; } } if (flag && this.cmbRunning.SelectedIndex > 0) { if (this.cmbRunning.SelectedIndex == 1 && !spawn.SpawnIsRunning) { flag = false; } else if (this.cmbRunning.SelectedIndex == 2 && spawn.SpawnIsRunning) { flag = false; } } if (flag && this.chkAvgSpawnTime.Checked) { double spawnMinDelay = (spawn.SpawnMinDelay + spawn.SpawnMaxDelay) / 2; if (this.cmbAvgSpawnTime.SelectedIndex == 0 && spawnMinDelay >= (double)((double)this.numAvgSpawnTime.Value)) { flag = false; } else if (this.cmbAvgSpawnTime.SelectedIndex == 1 && spawnMinDelay <= (double)((double)this.numAvgSpawnTime.Value)) { flag = false; } } if (flag && this.txtPropertyTest.Text != null && this.txtPropertyTest.Text.Trim().Length > 0 && !PropertyTest.CheckPropertyString(spawn, this.txtPropertyTest.Text, out str)) { flag = false; } if (flag && this.txtNotes.Text != null && this.txtNotes.Text.Trim().Length > 0) { bool flag6 = false; if (spawn.SpawnNotes != null && spawn.SpawnNotes.Length > 0 && spawn.SpawnNotes.ToLower().IndexOf(this.txtNotes.Text.ToLower()) >= 0) { flag6 = true; } if (this.cmbNotes.SelectedIndex == 0) { if (!flag6) { flag = false; } } else if (flag6) { flag = false; } } return(flag); }
public void DoImportMap(string filename, out int processedmaps, out int processedspawners) { int i; string[] strArrays; processedmaps = 0; processedspawners = 0; int num = 0; int num1 = 0; if (filename == null || filename.Length <= 0) { return; } if (!File.Exists(filename)) { if (Directory.Exists(filename)) { string[] files = null; try { files = Directory.GetFiles(filename, "*.map"); } catch { } if (files != null && (int)files.Length > 0) { strArrays = files; for (i = 0; i < (int)strArrays.Length; i++) { this.DoImportMap(strArrays[i], out processedmaps, out processedspawners); num = num + processedmaps; num1 = num1 + processedspawners; } } string[] directories = null; try { directories = Directory.GetDirectories(filename); } catch { } if (directories != null && (int)directories.Length > 0) { strArrays = directories; for (i = 0; i < (int)strArrays.Length; i++) { this.DoImportMap(strArrays[i], out processedmaps, out processedspawners); num = num + processedmaps; num1 = num1 + processedspawners; } } processedmaps = num; processedspawners = num1; } return; } string fileName = Path.GetFileName(filename); int num2 = 0; int num3 = 0; int num4 = 0; int num5 = -1; try { using (StreamReader streamReader = new StreamReader(filename)) { while (true) { string str = streamReader.ReadLine(); string str1 = str; if (str == null) { break; } num4++; string str2 = str1.Trim(); char[] chrArray = new char[] { ' ' }; string[] strArrays1 = str2.Split(chrArray); if ((int)strArrays1.Length == 2 && strArrays1[0].ToLower() == "overridemap") { try { num5 = int.Parse(strArrays1[1]); } catch { } } if ((int)strArrays1.Length > 0 && strArrays1[0] == "*") { bool flag = false; int num6 = 0; int num7 = 0; int num8 = 0; int num9 = 0; int num10 = 0; int num11 = 0; int num12 = 0; int num13 = 0; int num14 = 0; string[] strArrays2 = null; if ((int)strArrays1.Length == 11 || (int)strArrays1.Length == 12) { string str3 = strArrays1[1]; chrArray = new char[] { ':' }; strArrays2 = str3.Split(chrArray); if ((int)strArrays1.Length == 11) { try { num6 = int.Parse(strArrays1[2]); num7 = int.Parse(strArrays1[3]); num8 = int.Parse(strArrays1[4]); num9 = int.Parse(strArrays1[5]); num10 = int.Parse(strArrays1[6]); num11 = int.Parse(strArrays1[7]); num12 = int.Parse(strArrays1[8]); num13 = int.Parse(strArrays1[9]); num14 = int.Parse(strArrays1[10]); } catch { flag = true; } } else if ((int)strArrays1.Length == 12) { try { num6 = int.Parse(strArrays1[2]); num7 = int.Parse(strArrays1[3]); num8 = int.Parse(strArrays1[4]); num9 = int.Parse(strArrays1[5]); num10 = int.Parse(strArrays1[6]); num11 = int.Parse(strArrays1[7]); num12 = int.Parse(strArrays1[8]); num13 = int.Parse(strArrays1[9]); int.Parse(strArrays1[10]); num14 = int.Parse(strArrays1[11]); } catch { flag = true; } } } else { flag = true; } if (flag || strArrays2 == null || (int)strArrays2.Length <= 0) { num3++; } else { if (num5 >= 0) { num9 = num5; } WorldMap worldMap = WorldMap.Internal; i = num9; switch (i) { case 0: { worldMap = WorldMap.Felucca; break; } case 1: { worldMap = WorldMap.Felucca; break; } case 2: { worldMap = WorldMap.Trammel; break; } case 3: { worldMap = WorldMap.Ilshenar; break; } case 4: { worldMap = WorldMap.Malas; break; } case 5: { try { worldMap = WorldMap.Tokuno; break; } catch { break; } break; } } if (worldMap != WorldMap.Internal) { Guid guid = Guid.NewGuid(); SpawnPoint spawnPoint = new SpawnPoint(guid, worldMap, (short)num6, (short)num7, (short)(num13 * 2), (short)(num13 * 2)) { SpawnName = string.Format("{0}#{1}", fileName, num2), SpawnHomeRange = num12, CentreZ = (short)num8, SpawnMinDelay = (double)num10, SpawnMaxDelay = (double)num11, SpawnMaxCount = num14 }; Type type = SpawnEditor.FindRunUOType("BaseVendor"); bool flag1 = false; for (int j = 0; j < (int)strArrays2.Length; j++) { Type type1 = SpawnEditor.FindRunUOType(strArrays2[j]); if (type1 != null && type != null && (type1 == type || type1.IsSubclassOf(type))) { flag1 = true; } spawnPoint.SpawnObjects.Add(new SpawnObject(strArrays2[j], num14)); } spawnPoint.IsSelected = false; if (flag1) { spawnPoint.SpawnSpawnRange = 0; } SpawnPointNode spawnPointNode = new SpawnPointNode(spawnPoint); this._Editor.tvwSpawnPoints.Nodes.Add(spawnPointNode); num2++; if (num9 == 0) { worldMap = WorldMap.Trammel; guid = Guid.NewGuid(); spawnPoint = new SpawnPoint(guid, worldMap, (short)num6, (short)num7, (short)(num13 * 2), (short)(num13 * 2)) { SpawnName = string.Format("{0}#{1}", fileName, num2), SpawnHomeRange = num12, CentreZ = (short)num8, SpawnMinDelay = (double)num10, SpawnMaxDelay = (double)num11, SpawnMaxCount = num14 }; for (int k = 0; k < (int)strArrays2.Length; k++) { spawnPoint.SpawnObjects.Add(new SpawnObject(strArrays2[k], num14)); } spawnPoint.IsSelected = false; if (flag1) { spawnPoint.SpawnSpawnRange = 0; } spawnPointNode = new SpawnPointNode(spawnPoint); this._Editor.tvwSpawnPoints.Nodes.Add(spawnPointNode); num2++; } } else { num3++; } } } } streamReader.Close(); } } catch { } processedmaps = 1; processedspawners = num2; }