示例#1
0
		public static void AddGate( StargateDesign design )
		{
			m_Gates[design.Combination.ToLower()] = design;
		}
示例#2
0
		public static void RemoveGate( StargateDesign design )
		{
			m_Gates.Remove( design.Combination.ToLower() );
		}
		public override void OnDelete()
		{
			if ( m_GateDesign != null )
			{
				Stargate.Stargate.RemoveGate( m_GateDesign );
				m_GateDesign = null;
			}

			base.OnDelete();
		}
		public override void Deserialize( GenericReader reader )
		{
			base.Deserialize( reader );

			int version = reader.ReadInt();

			m_ActiveSymbols = new List<SymbolComponent>();

			m_GateDesign = new StargateDesign( reader );
			m_GateDesign.Gate = this;
			Stargate.Stargate.AddGate( m_GateDesign );

			foreach( SymbolComponent s in Components )
				s.Hue = m_GateDesign.NormalHue;
			//Stargate.Stargate.NeedReference.Add( new StargateDesignReference( this, reader.ReadString() ) );
		}
		public void SetDesign( StargateDesign design )
		{
			m_GateDesign = design;
		}
		public StargateAddon( string combo, string area, string design, uint startingpos, bool reversed ) : base()
		{
			if ( Stargate.Stargate.FindGate( combo ) != null )
			{
				Console.WriteLine( "Warning: Duplicate stargate removed {0}.", combo );
				Delete();
				return;
			}
			ItemID = 0x1BC3; //Teleporter
			m_ActiveSymbols = new List<SymbolComponent>();
			m_CurrentCombo = String.Empty;

			AddComponent( new SymbolComponent( 'a', 0 ), 0, 0, 0 );
			AddComponent( new SymbolComponent( 'b', 1 ), 0, 0, 0 );
			AddComponent( new SymbolComponent( 'c', 2 ), 0, 0, 0 );
			AddComponent( new SymbolComponent( 'd', 3 ), 0, 0, 0 );
			AddComponent( new SymbolComponent( 'e', 4 ), 0, 0, 0 );
			AddComponent( new SymbolComponent( 'f', 5 ), 0, 0, 0 );
			AddComponent( new SymbolComponent( 'g', 6 ), 0, 0, 0 );
			AddComponent( new SymbolComponent( 'h', 7 ), 0, 0, 0 );
			AddComponent( new SymbolComponent( 'i', 8 ), 0, 0, 0 );
			AddComponent( new SymbolComponent( 'j', 9 ), 0, 0, 0 );
			AddComponent( new SymbolComponent( 'k', 10 ), 0, 0, 0 );
			AddComponent( new SymbolComponent( 'l', 11 ), 0, 0, 0 );

			m_GateDesign = new StargateDesign( combo, area, design, startingpos, reversed, this );
			Stargate.Stargate.AddGate( m_GateDesign );
			Update( UpdateFlag.Hue | UpdateFlag.Design );
		}
		public StargateScroll( StargateDesign design ) : base( 0x227C )
		{
			Design = design;
		}