Generic-y goodness. Or hatred. You choose.
This commit is contained in:
parent
8737c38c85
commit
c5027649a1
9 changed files with 105 additions and 98 deletions
|
|
@ -5,6 +5,7 @@ using Server.Gumps;
|
||||||
using Server.Items;
|
using Server.Items;
|
||||||
using Server.Mobiles;
|
using Server.Mobiles;
|
||||||
using Server.Regions;
|
using Server.Regions;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
|
||||||
namespace Server.Engines.CannedEvil
|
namespace Server.Engines.CannedEvil
|
||||||
{
|
{
|
||||||
|
|
@ -13,9 +14,9 @@ namespace Server.Engines.CannedEvil
|
||||||
private bool m_Active;
|
private bool m_Active;
|
||||||
private bool m_RandomizeType;
|
private bool m_RandomizeType;
|
||||||
private ChampionSpawnType m_Type;
|
private ChampionSpawnType m_Type;
|
||||||
private ArrayList m_Creatures;
|
private List<Mobile> m_Creatures;
|
||||||
private ArrayList m_RedSkulls;
|
private List<Item> m_RedSkulls;
|
||||||
private ArrayList m_WhiteSkulls;
|
private List<Item> m_WhiteSkulls;
|
||||||
private ChampionPlatform m_Platform;
|
private ChampionPlatform m_Platform;
|
||||||
private ChampionAltar m_Altar;
|
private ChampionAltar m_Altar;
|
||||||
private int m_Kills;
|
private int m_Kills;
|
||||||
|
|
@ -58,9 +59,9 @@ namespace Server.Engines.CannedEvil
|
||||||
Movable = false;
|
Movable = false;
|
||||||
Visible = false;
|
Visible = false;
|
||||||
|
|
||||||
m_Creatures = new ArrayList();
|
m_Creatures = new List<Mobile>();
|
||||||
m_RedSkulls = new ArrayList();
|
m_RedSkulls = new List<Item>();
|
||||||
m_WhiteSkulls = new ArrayList();
|
m_WhiteSkulls = new List<Item>();
|
||||||
|
|
||||||
m_Platform = new ChampionPlatform( this );
|
m_Platform = new ChampionPlatform( this );
|
||||||
m_Altar = new ChampionAltar( this );
|
m_Altar = new ChampionAltar( this );
|
||||||
|
|
@ -243,7 +244,7 @@ namespace Server.Engines.CannedEvil
|
||||||
{
|
{
|
||||||
for( int i = m_RedSkulls.Count - 1; i >= value; --i )
|
for( int i = m_RedSkulls.Count - 1; i >= value; --i )
|
||||||
{
|
{
|
||||||
((Item)m_RedSkulls[i]).Delete();
|
m_RedSkulls[i].Delete();
|
||||||
m_RedSkulls.RemoveAt( i );
|
m_RedSkulls.RemoveAt( i );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -276,7 +277,7 @@ namespace Server.Engines.CannedEvil
|
||||||
{
|
{
|
||||||
for( int i = m_WhiteSkulls.Count - 1; i >= val; --i )
|
for( int i = m_WhiteSkulls.Count - 1; i >= val; --i )
|
||||||
{
|
{
|
||||||
((Item)m_WhiteSkulls[i]).Delete();
|
m_WhiteSkulls[i].Delete();
|
||||||
m_WhiteSkulls.RemoveAt( i );
|
m_WhiteSkulls.RemoveAt( i );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -412,7 +413,7 @@ namespace Server.Engines.CannedEvil
|
||||||
|
|
||||||
for ( int i = 0; i < m_Creatures.Count; ++i )
|
for ( int i = 0; i < m_Creatures.Count; ++i )
|
||||||
{
|
{
|
||||||
Mobile m = (Mobile)m_Creatures[i];
|
Mobile m = m_Creatures[i];
|
||||||
|
|
||||||
if ( m.Deleted )
|
if ( m.Deleted )
|
||||||
{
|
{
|
||||||
|
|
@ -773,13 +774,13 @@ namespace Server.Engines.CannedEvil
|
||||||
if( m_RedSkulls != null )
|
if( m_RedSkulls != null )
|
||||||
{
|
{
|
||||||
for( int i = 0; i < m_RedSkulls.Count; ++i )
|
for( int i = 0; i < m_RedSkulls.Count; ++i )
|
||||||
((Item)m_RedSkulls[i]).Location = GetRedSkullLocation( i );
|
m_RedSkulls[i].Location = GetRedSkullLocation( i );
|
||||||
}
|
}
|
||||||
|
|
||||||
if( m_WhiteSkulls != null )
|
if( m_WhiteSkulls != null )
|
||||||
{
|
{
|
||||||
for( int i = 0; i < m_WhiteSkulls.Count; ++i )
|
for( int i = 0; i < m_WhiteSkulls.Count; ++i )
|
||||||
((Item)m_WhiteSkulls[i]).Location = GetWhiteSkullLocation( i );
|
m_WhiteSkulls[i].Location = GetWhiteSkullLocation( i );
|
||||||
}
|
}
|
||||||
|
|
||||||
m_SpawnArea.X += Location.X - oldLoc.X;
|
m_SpawnArea.X += Location.X - oldLoc.X;
|
||||||
|
|
@ -805,13 +806,13 @@ namespace Server.Engines.CannedEvil
|
||||||
if( m_RedSkulls != null )
|
if( m_RedSkulls != null )
|
||||||
{
|
{
|
||||||
for( int i = 0; i < m_RedSkulls.Count; ++i )
|
for( int i = 0; i < m_RedSkulls.Count; ++i )
|
||||||
((Item)m_RedSkulls[i]).Map = Map;
|
m_RedSkulls[i].Map = Map;
|
||||||
}
|
}
|
||||||
|
|
||||||
if( m_WhiteSkulls != null )
|
if( m_WhiteSkulls != null )
|
||||||
{
|
{
|
||||||
for( int i = 0; i < m_WhiteSkulls.Count; ++i )
|
for( int i = 0; i < m_WhiteSkulls.Count; ++i )
|
||||||
((Item)m_WhiteSkulls[i]).Map = Map;
|
m_WhiteSkulls[i].Map = Map;
|
||||||
}
|
}
|
||||||
|
|
||||||
UpdateRegion();
|
UpdateRegion();
|
||||||
|
|
@ -833,7 +834,7 @@ namespace Server.Engines.CannedEvil
|
||||||
if( m_RedSkulls != null )
|
if( m_RedSkulls != null )
|
||||||
{
|
{
|
||||||
for( int i = 0; i < m_RedSkulls.Count; ++i )
|
for( int i = 0; i < m_RedSkulls.Count; ++i )
|
||||||
((Item)m_RedSkulls[i]).Delete();
|
m_RedSkulls[i].Delete();
|
||||||
|
|
||||||
m_RedSkulls.Clear();
|
m_RedSkulls.Clear();
|
||||||
}
|
}
|
||||||
|
|
@ -841,7 +842,7 @@ namespace Server.Engines.CannedEvil
|
||||||
if( m_WhiteSkulls != null )
|
if( m_WhiteSkulls != null )
|
||||||
{
|
{
|
||||||
for( int i = 0; i < m_WhiteSkulls.Count; ++i )
|
for( int i = 0; i < m_WhiteSkulls.Count; ++i )
|
||||||
((Item)m_WhiteSkulls[i]).Delete();
|
m_WhiteSkulls[i].Delete();
|
||||||
|
|
||||||
m_WhiteSkulls.Clear();
|
m_WhiteSkulls.Clear();
|
||||||
}
|
}
|
||||||
|
|
@ -850,7 +851,7 @@ namespace Server.Engines.CannedEvil
|
||||||
{
|
{
|
||||||
for( int i = 0; i < m_Creatures.Count; ++i )
|
for( int i = 0; i < m_Creatures.Count; ++i )
|
||||||
{
|
{
|
||||||
Mobile mob = (Mobile)m_Creatures[i];
|
Mobile mob = m_Creatures[i];
|
||||||
|
|
||||||
if( !mob.Player )
|
if( !mob.Player )
|
||||||
mob.Delete();
|
mob.Delete();
|
||||||
|
|
@ -878,7 +879,7 @@ namespace Server.Engines.CannedEvil
|
||||||
writer.Write( (int)4 ); // version
|
writer.Write( (int)4 ); // version
|
||||||
|
|
||||||
writer.Write( m_ConfinedRoaming );
|
writer.Write( m_ConfinedRoaming );
|
||||||
writer.Write( m_Idol );
|
writer.WriteItem<IdolOfTheChampion>( m_Idol );
|
||||||
writer.Write( m_HasBeenAdvanced );
|
writer.Write( m_HasBeenAdvanced );
|
||||||
writer.Write( m_SpawnArea );
|
writer.Write( m_SpawnArea );
|
||||||
|
|
||||||
|
|
@ -889,11 +890,11 @@ namespace Server.Engines.CannedEvil
|
||||||
|
|
||||||
writer.Write( (bool)m_Active );
|
writer.Write( (bool)m_Active );
|
||||||
writer.Write( (int)m_Type );
|
writer.Write( (int)m_Type );
|
||||||
writer.WriteMobileList( m_Creatures, true );
|
writer.Write( m_Creatures, true );
|
||||||
writer.WriteItemList( m_RedSkulls, true );
|
writer.Write( m_RedSkulls, true );
|
||||||
writer.WriteItemList( m_WhiteSkulls, true );
|
writer.Write( m_WhiteSkulls, true );
|
||||||
writer.Write( m_Platform );
|
writer.WriteItem<ChampionPlatform>( m_Platform );
|
||||||
writer.Write( m_Altar );
|
writer.WriteItem<ChampionAltar>( m_Altar );
|
||||||
writer.Write( m_ExpireDelay );
|
writer.Write( m_ExpireDelay );
|
||||||
writer.WriteDeltaTime( m_ExpireTime );
|
writer.WriteDeltaTime( m_ExpireTime );
|
||||||
writer.Write( m_Champion );
|
writer.Write( m_Champion );
|
||||||
|
|
@ -916,7 +917,7 @@ namespace Server.Engines.CannedEvil
|
||||||
case 4:
|
case 4:
|
||||||
{
|
{
|
||||||
m_ConfinedRoaming = reader.ReadBool();
|
m_ConfinedRoaming = reader.ReadBool();
|
||||||
m_Idol = reader.ReadItem() as IdolOfTheChampion;
|
m_Idol = reader.ReadItem<IdolOfTheChampion>();
|
||||||
m_HasBeenAdvanced = reader.ReadBool();
|
m_HasBeenAdvanced = reader.ReadBool();
|
||||||
|
|
||||||
goto case 3;
|
goto case 3;
|
||||||
|
|
@ -953,11 +954,11 @@ namespace Server.Engines.CannedEvil
|
||||||
|
|
||||||
bool active = reader.ReadBool();
|
bool active = reader.ReadBool();
|
||||||
m_Type = (ChampionSpawnType)reader.ReadInt();
|
m_Type = (ChampionSpawnType)reader.ReadInt();
|
||||||
m_Creatures = reader.ReadMobileList();
|
m_Creatures = reader.ReadStrongMobileList();
|
||||||
m_RedSkulls = reader.ReadItemList();
|
m_RedSkulls = reader.ReadStrongItemList();
|
||||||
m_WhiteSkulls = reader.ReadItemList();
|
m_WhiteSkulls = reader.ReadStrongItemList();
|
||||||
m_Platform = reader.ReadItem() as ChampionPlatform;
|
m_Platform = reader.ReadItem<ChampionPlatform>();
|
||||||
m_Altar = reader.ReadItem() as ChampionAltar;
|
m_Altar = reader.ReadItem<ChampionAltar>();
|
||||||
m_ExpireDelay = reader.ReadTimeSpan();
|
m_ExpireDelay = reader.ReadTimeSpan();
|
||||||
m_ExpireTime = reader.ReadDeltaTime();
|
m_ExpireTime = reader.ReadDeltaTime();
|
||||||
m_Champion = reader.ReadMobile();
|
m_Champion = reader.ReadMobile();
|
||||||
|
|
|
||||||
|
|
@ -6,6 +6,7 @@ using Server.Mobiles;
|
||||||
using Server.Network;
|
using Server.Network;
|
||||||
using Server.Regions;
|
using Server.Regions;
|
||||||
using Server.Commands;
|
using Server.Commands;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
|
||||||
namespace Server.Engines.Doom
|
namespace Server.Engines.Doom
|
||||||
{
|
{
|
||||||
|
|
@ -30,10 +31,10 @@ namespace Server.Engines.Doom
|
||||||
private BaseDoor m_Door;
|
private BaseDoor m_Door;
|
||||||
private BaseAddon m_Addon;
|
private BaseAddon m_Addon;
|
||||||
private GauntletSpawner m_Sequence;
|
private GauntletSpawner m_Sequence;
|
||||||
private ArrayList m_Creatures;
|
private List<Mobile> m_Creatures;
|
||||||
|
|
||||||
private Rectangle2D m_RegionBounds;
|
private Rectangle2D m_RegionBounds;
|
||||||
private ArrayList m_Traps;
|
private List<BaseTrap> m_Traps;
|
||||||
|
|
||||||
private Region m_Region;
|
private Region m_Region;
|
||||||
|
|
||||||
|
|
@ -75,7 +76,7 @@ namespace Server.Engines.Doom
|
||||||
|
|
||||||
for ( int i = 0; i < m_Creatures.Count; ++i )
|
for ( int i = 0; i < m_Creatures.Count; ++i )
|
||||||
{
|
{
|
||||||
Mobile mob = (Mobile)m_Creatures[i];
|
Mobile mob = m_Creatures[i];
|
||||||
|
|
||||||
if ( !mob.Deleted )
|
if ( !mob.Deleted )
|
||||||
return false;
|
return false;
|
||||||
|
|
@ -163,13 +164,13 @@ namespace Server.Engines.Doom
|
||||||
|
|
||||||
private Timer m_Timer;
|
private Timer m_Timer;
|
||||||
|
|
||||||
public ArrayList Creatures
|
public List<Mobile> Creatures
|
||||||
{
|
{
|
||||||
get{ return m_Creatures; }
|
get{ return m_Creatures; }
|
||||||
set{ m_Creatures = value; }
|
set{ m_Creatures = value; }
|
||||||
}
|
}
|
||||||
|
|
||||||
public ArrayList Traps
|
public List<BaseTrap> Traps
|
||||||
{
|
{
|
||||||
get{ return m_Traps; }
|
get{ return m_Traps; }
|
||||||
set{ m_Traps = value; }
|
set{ m_Traps = value; }
|
||||||
|
|
@ -212,7 +213,7 @@ namespace Server.Engines.Doom
|
||||||
public virtual void ClearTraps()
|
public virtual void ClearTraps()
|
||||||
{
|
{
|
||||||
for ( int i = 0; i < m_Traps.Count; ++i )
|
for ( int i = 0; i < m_Traps.Count; ++i )
|
||||||
((Item)m_Traps[i]).Delete();
|
m_Traps[i].Delete();
|
||||||
|
|
||||||
m_Traps.Clear();
|
m_Traps.Clear();
|
||||||
}
|
}
|
||||||
|
|
@ -224,7 +225,7 @@ namespace Server.Engines.Doom
|
||||||
if ( map == null )
|
if ( map == null )
|
||||||
return;
|
return;
|
||||||
|
|
||||||
Item trap = null;
|
BaseTrap trap = null;
|
||||||
|
|
||||||
int random = Utility.Random( 100 );
|
int random = Utility.Random( 100 );
|
||||||
|
|
||||||
|
|
@ -310,7 +311,7 @@ namespace Server.Engines.Doom
|
||||||
public virtual void ClearCreatures()
|
public virtual void ClearCreatures()
|
||||||
{
|
{
|
||||||
for ( int i = 0; i < m_Creatures.Count; ++i )
|
for ( int i = 0; i < m_Creatures.Count; ++i )
|
||||||
((Mobile)m_Creatures[i]).Delete();
|
m_Creatures[i].Delete();
|
||||||
|
|
||||||
m_Creatures.Clear();
|
m_Creatures.Clear();
|
||||||
}
|
}
|
||||||
|
|
@ -419,8 +420,8 @@ namespace Server.Engines.Doom
|
||||||
Movable = false;
|
Movable = false;
|
||||||
|
|
||||||
m_TypeName = typeName;
|
m_TypeName = typeName;
|
||||||
m_Creatures = new ArrayList();
|
m_Creatures = new List<Mobile>();
|
||||||
m_Traps = new ArrayList();
|
m_Traps = new List<BaseTrap>();
|
||||||
}
|
}
|
||||||
|
|
||||||
public GauntletSpawner( Serial serial ) : base( serial )
|
public GauntletSpawner( Serial serial ) : base( serial )
|
||||||
|
|
@ -435,14 +436,14 @@ namespace Server.Engines.Doom
|
||||||
|
|
||||||
writer.Write( m_RegionBounds );
|
writer.Write( m_RegionBounds );
|
||||||
|
|
||||||
writer.WriteItemList( m_Traps, false );
|
writer.WriteItemList<BaseTrap>( m_Traps, false );
|
||||||
|
|
||||||
writer.WriteMobileList( m_Creatures, false );
|
writer.Write( m_Creatures, false );
|
||||||
|
|
||||||
writer.Write( m_TypeName );
|
writer.Write( m_TypeName );
|
||||||
writer.Write( m_Door );
|
writer.WriteItem<BaseDoor>( m_Door );
|
||||||
writer.Write( m_Addon );
|
writer.WriteItem<BaseAddon>( m_Addon );
|
||||||
writer.Write( m_Sequence );
|
writer.WriteItem<GauntletSpawner>( m_Sequence );
|
||||||
|
|
||||||
writer.Write( (int) m_State );
|
writer.Write( (int) m_State );
|
||||||
}
|
}
|
||||||
|
|
@ -458,7 +459,7 @@ namespace Server.Engines.Doom
|
||||||
case 1:
|
case 1:
|
||||||
{
|
{
|
||||||
m_RegionBounds = reader.ReadRect2D();
|
m_RegionBounds = reader.ReadRect2D();
|
||||||
m_Traps = reader.ReadItemList();
|
m_Traps = reader.ReadStrongItemList<BaseTrap>();
|
||||||
|
|
||||||
goto case 0;
|
goto case 0;
|
||||||
}
|
}
|
||||||
|
|
@ -466,16 +467,16 @@ namespace Server.Engines.Doom
|
||||||
{
|
{
|
||||||
if ( version < 1 )
|
if ( version < 1 )
|
||||||
{
|
{
|
||||||
m_Traps = new ArrayList();
|
m_Traps = new List<BaseTrap>();
|
||||||
m_RegionBounds = new Rectangle2D( X - 40, Y - 40, 80, 80 );
|
m_RegionBounds = new Rectangle2D( X - 40, Y - 40, 80, 80 );
|
||||||
}
|
}
|
||||||
|
|
||||||
m_Creatures = reader.ReadMobileList();
|
m_Creatures = reader.ReadStrongMobileList();
|
||||||
|
|
||||||
m_TypeName = reader.ReadString();
|
m_TypeName = reader.ReadString();
|
||||||
m_Door = reader.ReadItem() as BaseDoor;
|
m_Door = reader.ReadItem<BaseDoor>(); ;
|
||||||
m_Addon = reader.ReadItem() as BaseAddon;
|
m_Addon = reader.ReadItem<BaseAddon>(); ;
|
||||||
m_Sequence = reader.ReadItem() as GauntletSpawner;
|
m_Sequence = reader.ReadItem<GauntletSpawner>();
|
||||||
|
|
||||||
State = (GauntletSpawnerState)reader.ReadInt();
|
State = (GauntletSpawnerState)reader.ReadInt();
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,7 @@ using Server.Multis;
|
||||||
using Server.Gumps;
|
using Server.Gumps;
|
||||||
using Server.Network;
|
using Server.Network;
|
||||||
using Server.Prompts;
|
using Server.Prompts;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
|
||||||
namespace Server.Items
|
namespace Server.Items
|
||||||
{
|
{
|
||||||
|
|
@ -15,20 +16,20 @@ namespace Server.Items
|
||||||
public override int LabelNumber{ get{ return 1041006; } } // a ballot box
|
public override int LabelNumber{ get{ return 1041006; } } // a ballot box
|
||||||
|
|
||||||
private string[] m_Topic;
|
private string[] m_Topic;
|
||||||
private ArrayList m_Yes;
|
private List<Mobile> m_Yes;
|
||||||
private ArrayList m_No;
|
private List<Mobile> m_No;
|
||||||
|
|
||||||
public string[] Topic
|
public string[] Topic
|
||||||
{
|
{
|
||||||
get{ return m_Topic; }
|
get{ return m_Topic; }
|
||||||
}
|
}
|
||||||
|
|
||||||
public ArrayList Yes
|
public List<Mobile> Yes
|
||||||
{
|
{
|
||||||
get{ return m_Yes; }
|
get{ return m_Yes; }
|
||||||
}
|
}
|
||||||
|
|
||||||
public ArrayList No
|
public List<Mobile> No
|
||||||
{
|
{
|
||||||
get{ return m_No; }
|
get{ return m_No; }
|
||||||
}
|
}
|
||||||
|
|
@ -37,8 +38,8 @@ namespace Server.Items
|
||||||
public BallotBox() : base( 0x9A8 )
|
public BallotBox() : base( 0x9A8 )
|
||||||
{
|
{
|
||||||
m_Topic = new string[0];
|
m_Topic = new string[0];
|
||||||
m_Yes = new ArrayList();
|
m_Yes = new List<Mobile>();
|
||||||
m_No = new ArrayList();
|
m_No = new List<Mobile>();
|
||||||
}
|
}
|
||||||
|
|
||||||
public BallotBox( Serial serial ) : base( serial )
|
public BallotBox( Serial serial ) : base( serial )
|
||||||
|
|
@ -311,8 +312,8 @@ namespace Server.Items
|
||||||
for ( int i = 0; i < m_Topic.Length; i++ )
|
for ( int i = 0; i < m_Topic.Length; i++ )
|
||||||
writer.Write( (string) m_Topic[i] );
|
writer.Write( (string) m_Topic[i] );
|
||||||
|
|
||||||
writer.WriteMobileList( m_Yes, true );
|
writer.Write( m_Yes, true );
|
||||||
writer.WriteMobileList( m_No, true );
|
writer.Write( m_No, true );
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void Deserialize( GenericReader reader )
|
public override void Deserialize( GenericReader reader )
|
||||||
|
|
@ -326,8 +327,8 @@ namespace Server.Items
|
||||||
for ( int i = 0; i < m_Topic.Length; i++ )
|
for ( int i = 0; i < m_Topic.Length; i++ )
|
||||||
m_Topic[i] = reader.ReadString();
|
m_Topic[i] = reader.ReadString();
|
||||||
|
|
||||||
m_Yes = reader.ReadMobileList();
|
m_Yes = reader.ReadStrongMobileList();
|
||||||
m_No = reader.ReadMobileList();
|
m_No = reader.ReadStrongMobileList();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -33,7 +33,7 @@ namespace Server.Items
|
||||||
private Mobile m_Owner;
|
private Mobile m_Owner;
|
||||||
private bool m_Temporary;
|
private bool m_Temporary;
|
||||||
|
|
||||||
private ArrayList m_Guardians;
|
private List<Mobile> m_Guardians;
|
||||||
|
|
||||||
[CommandProperty( AccessLevel.GameMaster )]
|
[CommandProperty( AccessLevel.GameMaster )]
|
||||||
public int Level{ get{ return m_Level; } set{ m_Level = value; } }
|
public int Level{ get{ return m_Level; } set{ m_Level = value; } }
|
||||||
|
|
@ -47,7 +47,7 @@ namespace Server.Items
|
||||||
[CommandProperty( AccessLevel.GameMaster )]
|
[CommandProperty( AccessLevel.GameMaster )]
|
||||||
public bool Temporary{ get{ return m_Temporary; } set{ m_Temporary = value; } }
|
public bool Temporary{ get{ return m_Temporary; } set{ m_Temporary = value; } }
|
||||||
|
|
||||||
public ArrayList Guardians{ get{ return m_Guardians; } }
|
public List<Mobile> Guardians { get { return m_Guardians; } }
|
||||||
|
|
||||||
[Constructable]
|
[Constructable]
|
||||||
public TreasureMapChest( int level ) : this( null, level, false )
|
public TreasureMapChest( int level ) : this( null, level, false )
|
||||||
|
|
@ -61,7 +61,7 @@ namespace Server.Items
|
||||||
m_DeleteTime = DateTime.Now + TimeSpan.FromHours( 3.0 );
|
m_DeleteTime = DateTime.Now + TimeSpan.FromHours( 3.0 );
|
||||||
|
|
||||||
m_Temporary = temporary;
|
m_Temporary = temporary;
|
||||||
m_Guardians = new ArrayList();
|
m_Guardians = new List<Mobile>();
|
||||||
|
|
||||||
m_Timer = new DeleteTimer( this, m_DeleteTime );
|
m_Timer = new DeleteTimer( this, m_DeleteTime );
|
||||||
m_Timer.Start();
|
m_Timer.Start();
|
||||||
|
|
@ -342,7 +342,7 @@ namespace Server.Items
|
||||||
|
|
||||||
writer.Write( (int) 2 ); // version
|
writer.Write( (int) 2 ); // version
|
||||||
|
|
||||||
writer.WriteMobileList( m_Guardians, true );
|
writer.Write( m_Guardians, true );
|
||||||
writer.Write( (bool) m_Temporary );
|
writer.Write( (bool) m_Temporary );
|
||||||
|
|
||||||
writer.Write( m_Owner );
|
writer.Write( m_Owner );
|
||||||
|
|
@ -362,7 +362,7 @@ namespace Server.Items
|
||||||
{
|
{
|
||||||
case 2:
|
case 2:
|
||||||
{
|
{
|
||||||
m_Guardians = reader.ReadMobileList();
|
m_Guardians = reader.ReadStrongMobileList();
|
||||||
m_Temporary = reader.ReadBool();
|
m_Temporary = reader.ReadBool();
|
||||||
|
|
||||||
goto case 1;
|
goto case 1;
|
||||||
|
|
@ -380,7 +380,7 @@ namespace Server.Items
|
||||||
m_Lifted = reader.ReadItemList();
|
m_Lifted = reader.ReadItemList();
|
||||||
|
|
||||||
if ( version < 2 )
|
if ( version < 2 )
|
||||||
m_Guardians = new ArrayList();
|
m_Guardians = new List<Mobile>();
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,7 @@ using System.Collections;
|
||||||
using Server;
|
using Server;
|
||||||
using Server.Network;
|
using Server.Network;
|
||||||
using Server.Targeting;
|
using Server.Targeting;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
|
||||||
namespace Server.Items
|
namespace Server.Items
|
||||||
{
|
{
|
||||||
|
|
@ -51,7 +52,7 @@ namespace Server.Items
|
||||||
public override int LabelNumber{ get{ return 1060740; } } // communication crystal
|
public override int LabelNumber{ get{ return 1060740; } } // communication crystal
|
||||||
|
|
||||||
private int m_Charges;
|
private int m_Charges;
|
||||||
private ArrayList m_Receivers;
|
private List<ReceiverCrystal> m_Receivers;
|
||||||
|
|
||||||
[CommandProperty( AccessLevel.GameMaster )]
|
[CommandProperty( AccessLevel.GameMaster )]
|
||||||
public bool Active
|
public bool Active
|
||||||
|
|
@ -75,7 +76,7 @@ namespace Server.Items
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public ArrayList Receivers
|
public List<ReceiverCrystal> Receivers
|
||||||
{
|
{
|
||||||
get{ return m_Receivers; }
|
get{ return m_Receivers; }
|
||||||
}
|
}
|
||||||
|
|
@ -92,7 +93,7 @@ namespace Server.Items
|
||||||
|
|
||||||
m_Charges = charges;
|
m_Charges = charges;
|
||||||
|
|
||||||
m_Receivers = new ArrayList();
|
m_Receivers = new List<ReceiverCrystal>();
|
||||||
}
|
}
|
||||||
|
|
||||||
public BroadcastCrystal( Serial serial ) : base( serial )
|
public BroadcastCrystal( Serial serial ) : base( serial )
|
||||||
|
|
@ -233,7 +234,7 @@ namespace Server.Items
|
||||||
}
|
}
|
||||||
else if ( targeted == from )
|
else if ( targeted == from )
|
||||||
{
|
{
|
||||||
foreach ( ReceiverCrystal receiver in new ArrayList( m_Crystal.Receivers ) )
|
foreach( ReceiverCrystal receiver in new List<ReceiverCrystal>( m_Crystal.Receivers ) )
|
||||||
{
|
{
|
||||||
receiver.Sender = null;
|
receiver.Sender = null;
|
||||||
}
|
}
|
||||||
|
|
@ -286,7 +287,7 @@ namespace Server.Items
|
||||||
writer.WriteEncodedInt( 0 ); // version
|
writer.WriteEncodedInt( 0 ); // version
|
||||||
|
|
||||||
writer.WriteEncodedInt( m_Charges );
|
writer.WriteEncodedInt( m_Charges );
|
||||||
writer.WriteItemList( m_Receivers );
|
writer.WriteItemList<ReceiverCrystal>( m_Receivers );
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void Deserialize( GenericReader reader )
|
public override void Deserialize( GenericReader reader )
|
||||||
|
|
@ -296,7 +297,7 @@ namespace Server.Items
|
||||||
int version = reader.ReadEncodedInt();
|
int version = reader.ReadEncodedInt();
|
||||||
|
|
||||||
m_Charges = reader.ReadEncodedInt();
|
m_Charges = reader.ReadEncodedInt();
|
||||||
m_Receivers = reader.ReadItemList();
|
m_Receivers = reader.ReadStrongItemList<ReceiverCrystal>();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -468,7 +469,7 @@ namespace Server.Items
|
||||||
|
|
||||||
writer.WriteEncodedInt( 0 ); // version
|
writer.WriteEncodedInt( 0 ); // version
|
||||||
|
|
||||||
writer.Write( (Item) m_Sender );
|
writer.WriteItem<BroadcastCrystal>( m_Sender );
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void Deserialize( GenericReader reader )
|
public override void Deserialize( GenericReader reader )
|
||||||
|
|
@ -477,7 +478,7 @@ namespace Server.Items
|
||||||
|
|
||||||
int version = reader.ReadEncodedInt();
|
int version = reader.ReadEncodedInt();
|
||||||
|
|
||||||
m_Sender = (BroadcastCrystal) reader.ReadItem();
|
m_Sender = reader.ReadItem<BroadcastCrystal>();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -2,6 +2,7 @@ using System;
|
||||||
using System.Collections;
|
using System.Collections;
|
||||||
using Server;
|
using Server;
|
||||||
using Server.Targeting;
|
using Server.Targeting;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
|
||||||
namespace Server.Items
|
namespace Server.Items
|
||||||
{
|
{
|
||||||
|
|
@ -9,16 +10,16 @@ namespace Server.Items
|
||||||
{
|
{
|
||||||
public static readonly int MaxKeys = 20;
|
public static readonly int MaxKeys = 20;
|
||||||
|
|
||||||
private ArrayList m_Keys;
|
private List<Key> m_Keys;
|
||||||
|
|
||||||
public ArrayList Keys{ get{ return m_Keys; } }
|
public List<Key> Keys { get { return m_Keys; } }
|
||||||
|
|
||||||
[Constructable]
|
[Constructable]
|
||||||
public KeyRing() : base( 0x1011 )
|
public KeyRing() : base( 0x1011 )
|
||||||
{
|
{
|
||||||
Weight = 1.0; // They seem to have no weight on OSI ?!
|
Weight = 1.0; // They seem to have no weight on OSI ?!
|
||||||
|
|
||||||
m_Keys = new ArrayList();
|
m_Keys = new List<Key>();
|
||||||
}
|
}
|
||||||
|
|
||||||
public override bool OnDragDrop( Mobile from, Item dropped )
|
public override bool OnDragDrop( Mobile from, Item dropped )
|
||||||
|
|
@ -131,7 +132,7 @@ namespace Server.Items
|
||||||
|
|
||||||
for ( int i = m_Keys.Count - 1; i >= 0; i-- )
|
for ( int i = m_Keys.Count - 1; i >= 0; i-- )
|
||||||
{
|
{
|
||||||
Key key = (Key) m_Keys[i];
|
Key key = m_Keys[i];
|
||||||
|
|
||||||
if ( !key.Deleted && !cont.TryDropItem( from, key, true ) )
|
if ( !key.Deleted && !cont.TryDropItem( from, key, true ) )
|
||||||
break;
|
break;
|
||||||
|
|
@ -146,7 +147,7 @@ namespace Server.Items
|
||||||
{
|
{
|
||||||
for ( int i = m_Keys.Count - 1; i >= 0; i-- )
|
for ( int i = m_Keys.Count - 1; i >= 0; i-- )
|
||||||
{
|
{
|
||||||
Key key = (Key) m_Keys[i];
|
Key key = m_Keys[i];
|
||||||
|
|
||||||
if ( key.KeyValue == keyValue )
|
if ( key.KeyValue == keyValue )
|
||||||
{
|
{
|
||||||
|
|
@ -191,7 +192,7 @@ namespace Server.Items
|
||||||
|
|
||||||
writer.WriteEncodedInt( 0 ); // version
|
writer.WriteEncodedInt( 0 ); // version
|
||||||
|
|
||||||
writer.WriteItemList( m_Keys );
|
writer.WriteItemList<Key>( m_Keys );
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void Deserialize( GenericReader reader )
|
public override void Deserialize( GenericReader reader )
|
||||||
|
|
@ -200,7 +201,7 @@ namespace Server.Items
|
||||||
|
|
||||||
int version = reader.ReadEncodedInt();
|
int version = reader.ReadEncodedInt();
|
||||||
|
|
||||||
m_Keys = reader.ReadItemList();
|
m_Keys = reader.ReadStrongItemList<Key>();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -1133,9 +1133,9 @@ namespace Server.Guilds
|
||||||
writer.WriteGuildList( m_WarDeclarations, true );
|
writer.WriteGuildList( m_WarDeclarations, true );
|
||||||
writer.WriteGuildList( m_WarInvitations, true );
|
writer.WriteGuildList( m_WarInvitations, true );
|
||||||
|
|
||||||
writer.WriteMobileList( m_Members, true );
|
writer.Write( m_Members, true );
|
||||||
writer.WriteMobileList( m_Candidates, true );
|
writer.Write( m_Candidates, true );
|
||||||
writer.WriteMobileList( m_Accepted, true );
|
writer.Write( m_Accepted, true );
|
||||||
|
|
||||||
writer.Write( m_Guildstone );
|
writer.Write( m_Guildstone );
|
||||||
writer.Write( m_Teleporter );
|
writer.Write( m_Teleporter );
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,7 @@ namespace Server.Mobiles
|
||||||
{
|
{
|
||||||
private bool m_TrueForm;
|
private bool m_TrueForm;
|
||||||
private Item m_GateItem;
|
private Item m_GateItem;
|
||||||
private ArrayList m_Tentacles;
|
private List<HarrowerTentacles> m_Tentacles;
|
||||||
private Timer m_Timer;
|
private Timer m_Timer;
|
||||||
|
|
||||||
private class SpawnEntry
|
private class SpawnEntry
|
||||||
|
|
@ -106,7 +106,7 @@ namespace Server.Mobiles
|
||||||
SetSkill( SkillName.EvalInt, 120.0 );
|
SetSkill( SkillName.EvalInt, 120.0 );
|
||||||
SetSkill( SkillName.Meditation, 120.0 );
|
SetSkill( SkillName.Meditation, 120.0 );
|
||||||
|
|
||||||
m_Tentacles = new ArrayList();
|
m_Tentacles = new List<HarrowerTentacles>();
|
||||||
|
|
||||||
m_Timer = new TeleportTimer( this );
|
m_Timer = new TeleportTimer( this );
|
||||||
m_Timer.Start();
|
m_Timer.Start();
|
||||||
|
|
@ -187,7 +187,7 @@ namespace Server.Mobiles
|
||||||
if ( !ok )
|
if ( !ok )
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
BaseCreature spawn = new HarrowerTentacles( this );
|
HarrowerTentacles spawn = new HarrowerTentacles( this );
|
||||||
|
|
||||||
spawn.Team = this.Team;
|
spawn.Team = this.Team;
|
||||||
|
|
||||||
|
|
@ -226,7 +226,7 @@ namespace Server.Mobiles
|
||||||
|
|
||||||
writer.Write( m_TrueForm );
|
writer.Write( m_TrueForm );
|
||||||
writer.Write( m_GateItem );
|
writer.Write( m_GateItem );
|
||||||
writer.WriteMobileList( m_Tentacles );
|
writer.WriteMobileList<HarrowerTentacles>( m_Tentacles );
|
||||||
}
|
}
|
||||||
|
|
||||||
public override void Deserialize( GenericReader reader )
|
public override void Deserialize( GenericReader reader )
|
||||||
|
|
@ -241,7 +241,7 @@ namespace Server.Mobiles
|
||||||
{
|
{
|
||||||
m_TrueForm = reader.ReadBool();
|
m_TrueForm = reader.ReadBool();
|
||||||
m_GateItem = reader.ReadItem();
|
m_GateItem = reader.ReadItem();
|
||||||
m_Tentacles = reader.ReadMobileList();
|
m_Tentacles = reader.ReadStrongMobileList<HarrowerTentacles>();
|
||||||
|
|
||||||
m_Timer = new TeleportTimer( this );
|
m_Timer = new TeleportTimer( this );
|
||||||
m_Timer.Start();
|
m_Timer.Start();
|
||||||
|
|
@ -363,7 +363,7 @@ namespace Server.Mobiles
|
||||||
|
|
||||||
for ( int i = 0; i < m_Tentacles.Count; ++i )
|
for ( int i = 0; i < m_Tentacles.Count; ++i )
|
||||||
{
|
{
|
||||||
Mobile m = (Mobile)m_Tentacles[i];
|
Mobile m = m_Tentacles[i];
|
||||||
|
|
||||||
if ( !m.Deleted )
|
if ( !m.Deleted )
|
||||||
m.Kill();
|
m.Kill();
|
||||||
|
|
|
||||||
|
|
@ -3,12 +3,14 @@ using System.Collections;
|
||||||
using Server;
|
using Server;
|
||||||
using Server.Items;
|
using Server.Items;
|
||||||
using Server.Mobiles;
|
using Server.Mobiles;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
|
||||||
namespace Server.Multis
|
namespace Server.Multis
|
||||||
{
|
{
|
||||||
public abstract class BaseCamp : BaseMulti
|
public abstract class BaseCamp : BaseMulti
|
||||||
{
|
{
|
||||||
private ArrayList m_Items, m_Mobiles;
|
private List<Item> m_Items;
|
||||||
|
private List<Mobile> m_Mobiles;
|
||||||
private DateTime m_DecayTime;
|
private DateTime m_DecayTime;
|
||||||
private Timer m_DecayTimer;
|
private Timer m_DecayTimer;
|
||||||
|
|
||||||
|
|
@ -17,8 +19,8 @@ namespace Server.Multis
|
||||||
|
|
||||||
public BaseCamp( int multiID ) : base( multiID | 0x4000 )
|
public BaseCamp( int multiID ) : base( multiID | 0x4000 )
|
||||||
{
|
{
|
||||||
m_Items = new ArrayList();
|
m_Items = new List<Item>();
|
||||||
m_Mobiles = new ArrayList();
|
m_Mobiles = new List<Mobile>();
|
||||||
RefreshDecay( true );
|
RefreshDecay( true );
|
||||||
|
|
||||||
Timer.DelayCall( TimeSpan.Zero, new TimerCallback( CheckAddComponents ) );
|
Timer.DelayCall( TimeSpan.Zero, new TimerCallback( CheckAddComponents ) );
|
||||||
|
|
@ -104,10 +106,10 @@ namespace Server.Multis
|
||||||
base.OnAfterDelete();
|
base.OnAfterDelete();
|
||||||
|
|
||||||
for ( int i = 0; i < m_Items.Count; ++i )
|
for ( int i = 0; i < m_Items.Count; ++i )
|
||||||
((Item)m_Items[i]).Delete();
|
m_Items[i].Delete();
|
||||||
|
|
||||||
for ( int i = 0; i < m_Mobiles.Count; ++i )
|
for ( int i = 0; i < m_Mobiles.Count; ++i )
|
||||||
((Mobile)m_Mobiles[i]).Delete();
|
m_Mobiles[i].Delete();
|
||||||
|
|
||||||
m_Items.Clear();
|
m_Items.Clear();
|
||||||
m_Mobiles.Clear();
|
m_Mobiles.Clear();
|
||||||
|
|
@ -123,8 +125,8 @@ namespace Server.Multis
|
||||||
|
|
||||||
writer.Write( (int) 0 ); // version
|
writer.Write( (int) 0 ); // version
|
||||||
|
|
||||||
writer.WriteItemList( m_Items, true );
|
writer.Write( m_Items, true );
|
||||||
writer.WriteMobileList( m_Mobiles, true );
|
writer.Write( m_Mobiles, true );
|
||||||
writer.WriteDeltaTime( m_DecayTime );
|
writer.WriteDeltaTime( m_DecayTime );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -138,8 +140,8 @@ namespace Server.Multis
|
||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
{
|
{
|
||||||
m_Items = reader.ReadItemList();
|
m_Items = reader.ReadStrongItemList();
|
||||||
m_Mobiles = reader.ReadMobileList();
|
m_Mobiles = reader.ReadStrongMobileList();
|
||||||
m_DecayTime = reader.ReadDeltaTime();
|
m_DecayTime = reader.ReadDeltaTime();
|
||||||
|
|
||||||
RefreshDecay( false );
|
RefreshDecay( false );
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue