public void CreateArray( RelayInfo info, Mobile from, Spawner spawner ) { spawner.CreaturesName = new ArrayList(); spawner.CreaturesProbability = new ArrayList(); for ( int i = 0; i < 13; i++ ) { //Creatures names TextRelay te = info.GetTextEntry(i); if ( te != null ) { string str = te.Text; if ( str.Length > 0 ) { str = str.Trim(); Type type = SpawnerType.GetType( str ); if (type != null) { spawner.CreaturesName.Add(str); //Creatures probabilities te = info.GetTextEntry(20 + i); try { if (te != null && te.Text.Length > 0 && Int32.Parse(te.Text) > 0) spawner.CreaturesProbability.Add(Int32.Parse(te.Text)); else spawner.CreaturesProbability.Add(DEFAULT_PROBABILTY); } catch { spawner.CreaturesProbability.Add(DEFAULT_PROBABILTY); } } else from.SendMessage("{0} is not a valid type name.", str); } } } if (spawner.CreaturesName.Count > 0) spawner.Start(); }
public void CreateArray(RelayInfo info, Mobile from, Spawner spawner) { int ocount = spawner.Entries.Count; List <SpawnerEntry> rementries = new List <SpawnerEntry>(); for (int i = 0; i < 13; i++) { int index = i * 5; int entryindex = (m_Page * 13) + i; TextRelay cte = info.GetTextEntry(index); TextRelay mte = info.GetTextEntry(index + 1); TextRelay poste = info.GetTextEntry(index + 2); TextRelay parmte = info.GetTextEntry(index + 3); TextRelay propte = info.GetTextEntry(index + 4); if (cte != null) { string str = cte.Text.Trim().ToLower(); if (str.Length > 0) { Type type = SpawnerType.GetType(str); if (type != null) { SpawnerEntry entry = null; if (entryindex < ocount) { entry = spawner.Entries[entryindex]; entry.SpawnedName = str; if (mte != null) { entry.SpawnedMaxCount = Utility.ToInt32(mte.Text.Trim()); } if (poste != null) { entry.SpawnedProbability = Utility.ToInt32(poste.Text.Trim()); } } else { int maxcount = 1; int probcount = 100; if (mte != null) { maxcount = Utility.ToInt32(mte.Text.Trim()); } if (poste != null) { probcount = Utility.ToInt32(poste.Text.Trim()); } entry = spawner.AddEntry(str, probcount, maxcount); } if (parmte != null) { entry.Parameters = parmte.Text.Trim(); } if (propte != null) { entry.Properties = propte.Text.Trim(); } } else { from.SendMessage("{0} is not a valid type name for entry #{1}.", str, i); } } else if (entryindex < ocount && spawner.Entries[entryindex] != null) { rementries.Add(spawner.Entries[entryindex]); } } } if (rementries.Count > 0) { for (int i = 0; i < rementries.Count; i++) { spawner.RemoveEntry(rementries[i]); } } if (ocount == 0 && spawner.Entries.Count > 0) { spawner.Start(); } }
public void CreateArray( RelayInfo info, Mobile from, Spawner spawner ) { int ocount = spawner.Entries.Count; List<SpawnerEntry> rementries = new List<SpawnerEntry>(); for ( int i = 0;i < 13; i++ ) { int index = i * 5; int entryindex = ( m_Page * 13 ) + i; TextRelay cte = info.GetTextEntry( index ); TextRelay mte = info.GetTextEntry( index + 1 ); TextRelay poste = info.GetTextEntry( index + 2 ); TextRelay parmte = info.GetTextEntry( index + 3 ); TextRelay propte = info.GetTextEntry( index + 4 ); if ( cte != null ) { string str = cte.Text.Trim().ToLower(); if ( str.Length > 0 ) { Type type = SpawnerType.GetType( str ); if ( type != null ) { SpawnerEntry entry = null; if ( entryindex < ocount ) { entry = spawner.Entries[entryindex]; entry.SpawnedName = str; if ( mte != null ) entry.SpawnedMaxCount = Utility.ToInt32( mte.Text.Trim() ); if ( poste != null ) entry.SpawnedProbability = Utility.ToInt32( poste.Text.Trim() ); } else { int maxcount = 1; int probcount = 100; if ( mte != null ) maxcount = Utility.ToInt32( mte.Text.Trim() ); if ( poste != null ) probcount = Utility.ToInt32( poste.Text.Trim() ); entry = spawner.AddEntry( str, probcount, maxcount ); } if ( parmte != null ) entry.Parameters = parmte.Text.Trim(); if ( propte != null ) entry.Properties = propte.Text.Trim(); } else from.SendMessage( "{0} is not a valid type name for entry #{1}.", str, i ); } else if ( entryindex < ocount && spawner.Entries[entryindex] != null ) rementries.Add( spawner.Entries[entryindex] ); } } if ( rementries.Count > 0 ) for ( int i = 0; i < rementries.Count; i++ ) spawner.RemoveEntry( rementries[i] ); if ( ocount == 0 && spawner.Entries.Count > 0 ) spawner.Start(); }