Example #1
0
        public PuzzleChestSolution(GenericReader reader)
        {
            int version = reader.ReadEncodedInt();

            int length = reader.ReadEncodedInt();

            for (int i = 0;; i++)
            {
                if (i < length)
                {
                    PuzzleChestCylinder cylinder = (PuzzleChestCylinder)reader.ReadInt();

                    if (i < m_Cylinders.Length)
                    {
                        m_Cylinders[i] = cylinder;
                    }
                }
                else if (i < m_Cylinders.Length)
                {
                    m_Cylinders[i] = RandomCylinder();
                }
                else
                {
                    break;
                }
            }
        }
Example #2
0
        public override void Deserialize(GenericReader reader)
        {
            base.Deserialize(reader);

            int version = reader.ReadEncodedInt();

            m_Solution = new PuzzleChestSolution(reader);

            int length = reader.ReadEncodedInt();

            for (int i = 0; i < length; i++)
            {
                PuzzleChestCylinder cylinder = (PuzzleChestCylinder)reader.ReadInt();

                if (length == m_Hints.Length)
                {
                    m_Hints[i] = cylinder;
                }
            }
            if (length != m_Hints.Length)
            {
                InitHints();
            }

            int guesses = reader.ReadEncodedInt();

            for (int i = 0; i < guesses; i++)
            {
                Mobile m = reader.ReadMobile();
                PuzzleChestSolutionAndTime sol = new PuzzleChestSolutionAndTime(reader);

                m_Guesses[m] = sol;
            }
        }
		public PuzzleChestSolution( PuzzleChestCylinder first, PuzzleChestCylinder second, PuzzleChestCylinder third, PuzzleChestCylinder fourth, PuzzleChestCylinder fifth )
		{
			First = first;
			Second = second;
			Third = third;
			Fourth = fourth;
			Fifth = fifth;
		}
Example #4
0
 public PuzzleChestSolution(PuzzleChestCylinder first, PuzzleChestCylinder second, PuzzleChestCylinder third, PuzzleChestCylinder fourth, PuzzleChestCylinder fifth)
 {
     First  = first;
     Second = second;
     Third  = third;
     Fourth = fourth;
     Fifth  = fifth;
 }
Example #5
0
 public PuzzleChestSolution(PuzzleChestCylinder first, PuzzleChestCylinder second, PuzzleChestCylinder third, PuzzleChestCylinder fourth, PuzzleChestCylinder fifth)
 {
     this.First  = first;
     this.Second = second;
     this.Third  = third;
     this.Fourth = fourth;
     this.Fifth  = fifth;
 }
Example #6
0
 public PuzzleChestSolution(PuzzleChestCylinder first, PuzzleChestCylinder second, PuzzleChestCylinder third, PuzzleChestCylinder fourth, PuzzleChestCylinder fifth)
 {
     this.First = first;
     this.Second = second;
     this.Third = third;
     this.Fourth = fourth;
     this.Fifth = fifth;
 }
Example #7
0
 private void AddCylinder(int x, int y, PuzzleChestCylinder cylinder)
 {
     if (cylinder != PuzzleChestCylinder.None)
     {
         AddItem(x, y, (int)cylinder);
     }
     else
     {
         AddItem(x + 9, y, (int)cylinder);
     }
 }
Example #8
0
            private void AddPedestal(int x, int y, PuzzleChestCylinder cylinder, int switchID, bool initialState)
            {
                AddItem(x, y, 0xB10);
                AddItem(x - 23, y + 12, 0xB12);
                AddItem(x + 23, y + 12, 0xB13);
                AddItem(x, y + 23, 0xB11);

                if (cylinder != PuzzleChestCylinder.None)
                {
                    AddItem(x, y + 2, 0x51A);
                    AddCylinder(x - 1, y + 19, cylinder);
                }
                else
                {
                    AddItem(x, y + 2, 0x521);
                }

                AddRadio(x + 7, y + 65, 0x867, 0x86A, initialState, switchID);
            }
			private void AddCylinder( int x, int y, PuzzleChestCylinder cylinder )
			{
				if ( cylinder != PuzzleChestCylinder.None )
					AddItem( x, y, (int)cylinder );
				else
					AddItem( x + 9, y, (int)cylinder );
			}
			private void AddPedestal( int x, int y, PuzzleChestCylinder cylinder, int switchID, bool initialState )
			{
				AddItem( x, y, 0xB10 );
				AddItem( x - 23, y + 12, 0xB12 );
				AddItem( x + 23, y + 12, 0xB13 );
				AddItem( x, y + 23, 0xB11 );

				if ( cylinder != PuzzleChestCylinder.None )
				{
					AddItem( x, y + 2, 0x51A );
					AddCylinder( x - 1, y + 19, cylinder );
				}
				else
				{
					AddItem( x, y + 2, 0x521 );
				}

				AddRadio( x + 7, y + 65, 0x867, 0x86A, initialState, switchID );
			}
			private void AddRightCylinderButton( int x, int y, PuzzleChestCylinder cylinder, int buttonID )
			{
				AddBackground( x, y, 30, 30, 0x13EC );
				AddCylinder( x - 7, y + 10, cylinder );
				AddButton( x - 26, y + 9, 0x13A8, 0x4B9, buttonID, GumpButtonType.Reply, 0 );
			}
Example #12
0
 private void AddRightCylinderButton(int x, int y, PuzzleChestCylinder cylinder, int buttonID)
 {
     AddBackground(x, y, 30, 30, 0x13EC);
     AddCylinder(x - 7, y + 10, cylinder);
     AddButton(x - 26, y + 9, 0x13A8, 0x4B9, buttonID, GumpButtonType.Reply, 0);
 }
Example #13
0
 private void AddLeftCylinderButton(int x, int y, PuzzleChestCylinder cylinder, int buttonID)
 {
     AddBackground(x, y, 30, 30, 0x13EC);
     AddCylinder(x - 7, y + 10, cylinder);
     AddButton(x + 38, y + 9, 0x13A8, 0x4B9, buttonID);
 }