public void Init(Sprite mainIcon, ExecCatalysItem catalys = null) { bool haveCatalys = catalys != null; if (haveCatalys) { IconRune.sprite = catalys.IconSprite; } MainImage.sprite = mainIcon; IconRune.gameObject.SetActive(haveCatalys); }
public void Set(ExecCatalysItem catalysItem) { if (catalysItem == null) { img.gameObject.SetActive(false); return; } else { img.sprite = catalysItem.IconSprite; img.gameObject.SetActive(true); } }
public void Init(RecipeItem recipeItem,Action<BaseItem> OnCraftComplete ) { this.OnCraftComplete = OnCraftComplete; gameObject.SetActive(true); if (recipeItem.recipeSlot != Slot.Talisman) { string icon; RenderCam.Instance.DoRender(recipeItem.recipeSlot, out icon); Utils.LoadTexture(icon,out iconSprite); } else { // iconSprite = DataBaseController.Instance.TalismanIcon() } selectedCatalysItem = null; CraftInfoPlace.Init(recipeItem,null); this.recipeItem = recipeItem; elements.Clear(); BaseWindow.ClearTransform(CraftItemsLayout); canCraft = true; foreach (var craftElement in recipeItem.ItemsToCraft()) { if (craftElement.count > 0) { CraftItemElement craftItemElement = DataBaseController.GetItem<CraftItemElement>(CraftItemPrefab); craftItemElement.transform.SetParent(CraftItemsLayout, false); craftItemElement.Init(craftElement); if (!craftItemElement.IsEnought) { failElement = craftItemElement; canCraft = false; } } } var allCatalys = MainController.Instance.PlayerData.GetAllItems().Where(x => x is ExecCatalysItem); BaseWindow.ClearTransform(CatalysItemsLayout); foreach (var cat in allCatalys) { CatalysItemElement catalysItemElement = DataBaseController.GetItem<CatalysItemElement>(CatalysItemPrefab); catalysItemElement.Init(cat as ExecCatalysItem, OnCatalysClick); catalysItemElement.transform.SetParent(CatalysItemsLayout,false); catalysElements.Add(catalysItemElement); } CatalysItemElement catalysItemElementFree = DataBaseController.GetItem<CatalysItemElement>(CatalysItemPrefab); catalysItemElementFree.Init(null, OnCatalysClick); catalysItemElementFree.transform.SetParent(CatalysItemsLayout, false); catalysElements.Add(catalysItemElementFree); CraftResultPlace.Init(iconSprite, null); }
public void Init(ExecCatalysItem item,Action<ExecCatalysItem> callback) { if (item != null) { image.sprite = item.IconSprite; text.text = item.count.ToString("0"); } else { text.text = ""; } this.item = item; this.callback = callback; Selected.gameObject.SetActive(false); }
public static ExecutableItem Create(string subStr) { var spl = subStr.Split(DELEM); ExecutableType t = (ExecutableType)Enum.Parse(typeof (ExecutableType), spl[0]); ExecutableItem item = null; var count = Convert.ToInt32(spl[1]); switch (t) { case ExecutableType.craft: item = new ExecCraftItem((CraftItemType)Enum.Parse(typeof(CraftItemType), spl[2]), count); break; case ExecutableType.enchant: item = new ExecEnchantItem((EnchantType)Enum.Parse(typeof(EnchantType), spl[2]), count); break; case ExecutableType.catalys: item = new ExecCatalysItem((CatalysItemType)Enum.Parse(typeof(CatalysItemType), spl[2]), count); break; } return item; }
private void OnCatalysClick(ExecCatalysItem execCatalysItem) { CatalysChanges(execCatalysItem); }
private void CatalysChanges(ExecCatalysItem catalysItem) { this.selectedCatalysItem = catalysItem; foreach (var catalysItemElement in catalysElements) { if (catalysItemElement.Item != catalysItem) { catalysItemElement.SelectAnother(); } } CraftResultPlace.Init(iconSprite, selectedCatalysItem); if (catalysItem != null) { CraftInfoPlace.Init(recipeItem, catalysItem.ItemType); } else { CraftInfoPlace.Init(recipeItem,null); } }
public PlayerItem Craft(ExecCatalysItem catalysItem) { var resultItem = HeroShopRandomItem.CreatMainSlot(recipeSlot, Level); if (catalysItem != null) { switch (resultItem.Slot) { case Slot.physical_weapon: case Slot.magic_weapon: var spedAbilities = PosibleAbilities(catalysItem.ItemType); var sa = spedAbilities.RandomElement(); resultItem.specialAbilities = sa; break; case Slot.body: case Slot.helm: switch (catalysItem.ItemType) { case CatalysItemType.red: break; case CatalysItemType.blue: break; case CatalysItemType.green: break; case CatalysItemType.black: break; case CatalysItemType.white: break; } break; case Slot.Talisman: switch (catalysItem.ItemType) { case CatalysItemType.red: break; case CatalysItemType.blue: break; case CatalysItemType.green: break; case CatalysItemType.black: break; case CatalysItemType.white: break; } break; } } return resultItem; }