Пример #1
0
    /// <summary>
    /// Determines whether player is able to craft anything given entered materials
    /// </summary>
    /// <param name="materialsOnDeck">array of materials in crafting menu</param>
    public void DetermineItemFromMaterials(CraftingMaterials[] materialsOnDeck)
    {
        // search registry for crafted weapon
        WeaponType craftedType = CraftableItemsRegistry.GetCraftableItem(materialsOnDeck);

        // if search yielded anything (i.e., not pistol as that is never craftable)
        if (craftedType != WeaponType.Pistol)
        {
            // set current craftable weapon to one retrieved from registry
            currCraftableWeapon = craftedType;

            // show appropriate craftable weapon on menu
            craftedItemImage.sprite  = craftedWeaponIcons[(int)craftedType];
            craftedItemImage.color   = new Color(craftedItemImage.color.r, craftedItemImage.color.g, craftedItemImage.color.b, 1);
            craftedItemNameText.text = craftedType.ToString();

            // set craft button to interactable
            craftButton.interactable = true;

            // play higher pitched push sound
            AudioManager.Play(AudioClipNames.UI_pushLastMaterial, true);
        }
        // otherwise (user didn't enter good combination)
        else
        {
            // play denied sound effect
            AudioManager.Play(AudioClipNames.UI_denied, true);
        }
    }
Пример #2
0
 /// <summary>
 /// Used for initialization
 /// </summary>
 void Awake()
 {
     // initialize data
     CraftableItemsRegistry.Initialize();
     ControlSchemeManager.Initialize();
 }