Exemplo n.º 1
0
        /// <summary>
        /// Creates a new large item control ViewModel instance representing a pair of items
        /// starting at the specified item type.
        /// </summary>
        /// <param name="type">
        /// The first item type to be represented.
        /// </param>
        /// <returns>
        /// A new pair large item control ViewModel instance.
        /// </returns>
        private ILargeItemVMBase GetPairLargeItemVM(LargeItemType type)
        {
            var itemType = Enum.Parse <ItemType>(type.ToString());

            return(_pairFactory(
                       new IItem[]
            {
                _items[itemType],
                _items[itemType + 1]
            },
                       $"avares://OpenTracker/Assets/Images/Items/{type.ToString().ToLowerInvariant()}"));
        }
Exemplo n.º 2
0
        /// <summary>
        /// Creates a new large item control ViewModel instance representing a pair of items
        /// starting at the specified item type.
        /// </summary>
        /// <param name="type">
        /// The first item type to be represented.
        /// </param>
        /// <returns>
        /// A new pair large item control ViewModel instance.
        /// </returns>
        private static LargeItemVMBase GetPairLargeItemVM(LargeItemType type)
        {
            var itemType = Enum.Parse <ItemType>(type.ToString());

            return(new PairLargeItemVM(
                       $"avares://OpenTracker/Assets/Images/Items/{type.ToString().ToLowerInvariant()}",
                       new IItem[]
            {
                ItemDictionary.Instance[itemType],
                ItemDictionary.Instance[itemType + 1]
            }));
        }
Exemplo n.º 3
0
        /// <summary>
        /// Creates a new prize large item control ViewModel instance representing the specified
        /// item type.
        /// </summary>
        /// <param name="type">
        /// The item type to be represented.
        /// </param>
        /// <returns>
        /// A new prize large item control ViewModel instance.
        /// </returns>
        private ILargeItemVMBase GetPrizeLargeItemControlVM(LargeItemType type)
        {
            IPrizeSection section = type switch
            {
                LargeItemType.Aga1 =>
                (IPrizeSection)_locations[LocationID.AgahnimTower].Sections[1],
                LargeItemType.Aga2 =>
                (IPrizeSection)_locations[LocationID.GanonsTower].Sections[4],
                _ => throw new ArgumentOutOfRangeException(nameof(type))
            };

            return(_prizeFactory(
                       section,
                       $"avares://OpenTracker/Assets/Images/Prizes/{type.ToString().ToLowerInvariant()}"));
        }
Exemplo n.º 4
0
 /// <summary>
 /// Creates a new crystal requirement large item control ViewModel instance representing
 /// the specified item type.
 /// </summary>
 /// <param name="type">
 /// The item type to be represented.
 /// </param>
 /// <returns>
 /// A new crystal requirement large item control ViewModel instance.
 /// </returns>
 private ILargeItemVMBase GetCrystalRequirementLargeItemVM(LargeItemType type)
 {
     return(_crystalFactory(
                (ICrystalRequirementItem)_items[Enum.Parse <ItemType>(type.ToString())],
                $"avares://OpenTracker/Assets/Images/Items/{type.ToString().ToLowerInvariant()}.png"));
 }
Exemplo n.º 5
0
 /// <summary>
 /// Creates a new basic large item control ViewModel instance representing the specified
 /// item type.
 /// </summary>
 /// <param name="type">
 /// The item type to be represented.
 /// </param>
 /// <returns>
 /// A new basic large item control ViewModel instance.
 /// </returns>
 private ILargeItemVMBase GetLargeItemControlVM(LargeItemType type)
 {
     return(_largeItemFactory(
                _items[Enum.Parse <ItemType>(type.ToString())],
                $"avares://OpenTracker/Assets/Images/Items/{type.ToString().ToLowerInvariant()}"));
 }
Exemplo n.º 6
0
 /// <summary>
 /// Creates a new small key large item control ViewModel instance representing the
 /// specified item type.
 /// </summary>
 /// <param name="type">
 /// The item type to be represented.
 /// </param>
 /// <returns>
 /// A new small key large item control ViewModel instance.
 /// </returns>
 private static LargeItemVMBase GetSmallKeyLargeItemVM(LargeItemType type)
 {
     return(new SmallKeyLargeItemVM(
                $"avares://OpenTracker/Assets/Images/Items/{type.ToString().ToLowerInvariant()}",
                ItemDictionary.Instance[Enum.Parse <ItemType>(type.ToString())]));
 }