public object FindHouseName( BaseHouse house )
		{
			int multiID = house.ItemID & 0x3FFF;
			HousePlacementEntry[] entries;

			entries = HousePlacementEntry.ClassicHouses;

			for ( int i = 0; i < entries.Length; ++i )
			{
				if ( entries[i].MultiID == multiID )
					return entries[i].Description;
			}

			entries = HousePlacementEntry.TwoStoryFoundations;

			for ( int i = 0; i < entries.Length; ++i )
			{
				if ( entries[i].MultiID == multiID )
					return entries[i].Description;
			}

			entries = HousePlacementEntry.ThreeStoryFoundations;

			for ( int i = 0; i < entries.Length; ++i )
			{
				if ( entries[i].MultiID == multiID )
					return entries[i].Description;
			}

			return house.GetType().Name;
		}
        public static HousePlacementEntry Find( BaseHouse house )
        {
            object obj = m_Table[house.GetType()];

            if ( obj is HousePlacementEntry )
            {
                return ((HousePlacementEntry)obj);
            }
            else if ( obj is ArrayList )
            {
                ArrayList list = (ArrayList)obj;

                for ( int i = 0; i < list.Count; ++i )
                {
                    HousePlacementEntry e = (HousePlacementEntry)list[i];

                    if ( e.m_MultiID == (house.ItemID & 0x3FFF) )
                        return e;
                }
            }
            else if ( obj is Hashtable )
            {
                Hashtable table = (Hashtable)obj;

                obj = table[house.ItemID & 0x3FFF];

                if ( obj is HousePlacementEntry )
                    return (HousePlacementEntry)obj;
            }

            return null;
        }
Пример #3
0
		public static HousePlacementEntry Find(BaseHouse house)
		{
			object obj = m_Table[house.GetType()];

			if (obj is HousePlacementEntry)
			{
				return ((HousePlacementEntry)obj);
			}

			if (obj is ArrayList)
			{
				var list = (ArrayList)obj;

				return list.Cast<HousePlacementEntry>().FirstOrDefault(e => e.MultiID == house.ItemID);
			}

			if (obj is Hashtable)
			{
				var table = (Hashtable)obj;

				obj = table[house.ItemID];

				if (obj is HousePlacementEntry)
				{
					return (HousePlacementEntry)obj;
				}
			}

			return null;
		}