LockPlace() public method

Locks this place.
public LockPlace ( ) : void
return void
示例#1
0
        /// <summary>
        /// Locks place and creates and returns a key for it.
        /// </summary>
        /// <param name="place"></param>
        /// <param name="keyName"></param>
        /// <returns></returns>
        public Item LockPlace(PuzzlePlace place, string keyName)
        {
            if (!place.IsLock)
            {
                throw new PuzzleException("Tried to lock a place that isn't a Lock");
            }

            var doorName = place.GetLockDoor().Name;

            Item key;

            if (place.IsBossLock)
            {
                key             = Item.CreateKey(70030, doorName); // Boss Room Key
                key.Info.Color1 = 0xFF0000;                        // Red
            }
            else
            {
                key             = Item.CreateKey(70029, doorName);     // Dungeon Room Key
                key.Info.Color1 = place.LockColor;
            }

            place.LockPlace(key);
            this.Keys[keyName] = key;

            return(key);
        }
示例#2
0
        /// <summary>
        /// Locks place without a key.
        /// </summary>
        /// <param name="place"></param>
        /// <returns></returns>
        public void LockPlace(PuzzlePlace place)
        {
            if (!place.IsLock)
            {
                throw new PuzzleException("Tried to lock a place that isn't a Lock");
            }

            place.LockPlace();
        }
示例#3
0
文件: Puzzle.cs 项目: hzdlive/aura-1
		/// <summary>
		/// Locks place without a key.
		/// </summary>
		/// <param name="place"></param>
		/// <returns></returns>
		public void LockPlace(PuzzlePlace place)
		{
			if (!place.IsLock)
				throw new PuzzleException("Tried to lock a place that isn't a Lock");

			place.LockPlace();
		}
示例#4
0
文件: Puzzle.cs 项目: hzdlive/aura-1
		/// <summary>
		/// Locks place and creates and returns a key for it.
		/// </summary>
		/// <param name="place"></param>
		/// <param name="keyName"></param>
		/// <returns></returns>
		public Item LockPlace(PuzzlePlace place, string keyName)
		{
			if (!place.IsLock)
				throw new PuzzleException("Tried to lock a place that isn't a Lock");

			var doorName = place.GetLockDoor().Name;

			Item key;
			if (place.IsBossLock)
				key = Item.CreateKey(70030, 0xFF0000, doorName); // Boss Room Key
			else
				key = Item.CreateKey(70029, place.LockColor, doorName); // Dungeon Room Key

			place.LockPlace(key);
			this.Keys[keyName] = key;

			return key;
		}