/// <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); } }
/// <summary> /// Used for initialization /// </summary> void Awake() { // initialize data CraftableItemsRegistry.Initialize(); ControlSchemeManager.Initialize(); }