void setItemToCraft(CraftingRecipie ct) { //toCraft = ItemDatabase.me.getItem (st).GetComponent<Item> (); itemWeAreCrafting = ct; //resultImage.rectTransform.SetSizeWithCurrentAnchors (RectTransform.Axis.Horizontal, toCraft.itemTex.texture.width*3); //resultImage.rectTransform.SetSizeWithCurrentAnchors (RectTransform.Axis.Vertical, toCraft.itemTex.texture.height*3); //resultImage.sprite = toCraft.itemTex; resultText.text = "Items Created:" + "\n"; foreach (string st in ct.results) { resultText.text += st + "\n"; } //resultText.text = toCraft.itemName; }
void resetItemToCraft() { itemWeAreCrafting = null; resultText.text = ""; }
void canWeCraftAnything() { CraftingRecipie c = null; foreach (CraftingRecipie ct in recipies) { List <string> recipieComponents = new List <string> (); if (ct.component1 != "None") { recipieComponents.Add(ct.component1); } if (ct.component2 != "None") { recipieComponents.Add(ct.component2); } if (ct.component3 != "None") { recipieComponents.Add(ct.component3); } bool anyNonNeededComponents = false; foreach (CraftingUIItem ci in items) { if (ci.myItem == null) { } else if (recipieComponents.Contains(ci.myItem.itemName) == false) { anyNonNeededComponents = true; } } foreach (CraftingUIItem ci in items) { if (ci.myItem == null) { } else { recipieComponents.Remove(ci.myItem.itemName); } } bool duplicate = false; foreach (CraftingUIItem ci in items) { foreach (CraftingUIItem ci2 in items) { if (ci.myItem == null || ci2.myItem == null) { } else { if (ci != ci2) { if (ci.myItem.itemName == ci2.myItem.itemName) { duplicate = true; } } } } } //Debug.Log ("Recipie " + ct.result + " has " + recipieComponents.Count + " components remaining"); if (recipieComponents.Count == 0 && anyNonNeededComponents == false && duplicate == false) { c = ct; //setItemToCraft (ct); } } if (c == null) { resetItemToCraft(); } else { setItemToCraft(c); } }