public void LoadItem <T>(ref OdinMenuTree t) where T : ItemConfig <T> { ItemConfig <T> .Reload(); if (ItemConfig <T> .Count > 0) { foreach (var item in ItemConfig <T> .Datas) { t.Add(item.Value.物品名字, item.Value); t.EnumerateTree().AddIcons <T>(x => x.GetSprite()); t.EnumerateTree().ForEach(AddDragHandles <T>); } } }
private void OnItemPicked(ItemConfig itemConfig) { if (this.itemConfig == itemConfig && shopManager.CheckIfItemIsBought(itemConfig)) { activeItemTick.SetActive(true); } else { activeItemTick.SetActive(false); } /* frameIMG.color = startFrameColor; * isPreviewing = false;*/ }
public void ViewItemInfo(Item item) { this.showItem = item; var config = ItemConfig.Get(this.showItem.id); switch (config.type) { case 1: break; default: break; } }
IEnumerator RefreshItemList(ETravelBackpackItemType TBIType) { List <ulong> IDLst = new List <ulong>(); for (int i = 0; i < CurTypeGrids.Count; i++) { for (int j = 0; j < CurTypeGrids[i].transform.childCount; j++) { Transform child = CurTypeGrids[i].transform.GetChild(j); if (child.name.Contains("GridInfo_")) { IDLst.Add(ulong.Parse(MyTools.GetLastString(child.name, '_'))); } } } MyTools.DestroyImmediateChildNodes(ItemGrid.transform); UIScrollView sv = ItemGrid.transform.parent.GetComponent <UIScrollView>(); if (GameApp.Instance.PlayerData != null) { PlayerBag pb = GameApp.Instance.PlayerData.m_player_bag; for (int i = 0, p = 0; i < pb.m_items.Count; i++) { ItemConfig ItemCfg = null; CsvConfigTables.Instance.ItemCsvDic.TryGetValue((int)pb.m_items[i].m_item_id, out ItemCfg); if (ItemCfg != null) { if (ItemCfg.Type == 10 + (int)TBIType) { GameObject newUnit = NGUITools.AddChild(ItemGrid.gameObject, ItemUnitPrefab); newUnit.SetActive(true); newUnit.name = "ItemUnit_" + p; newUnit.transform.localPosition = new Vector3(0, -150 * p / 3, 0); UI_Travel_Backpack_ItemUnit iu = newUnit.GetComponent <UI_Travel_Backpack_ItemUnit>(); iu.SetItemData(pb.m_items[i], ItemCfg, IDLst); ItemGrid.repositionNow = true; sv.ResetPosition(); yield return(new WaitForEndOfFrame()); p++; } } } } }
IEnumerator RefreshPresentList() { MyTools.DestroyImmediateChildNodes(PresentGrid.transform); UIScrollView sv = PresentGrid.transform.parent.GetComponent <UIScrollView>(); PlayerBag pb = GameApp.Instance.PlayerData.m_player_bag; for (int i = 0, p = 0; i < pb.m_items.Count; i++) { ItemConfig ItemCfg = null; CsvConfigTables.Instance.ItemCsvDic.TryGetValue((int)pb.m_items[i].m_item_id, out ItemCfg); if (ItemCfg != null) { if (ItemCfg.Type == 13) { GameObject newUnit = NGUITools.AddChild(PresentGrid.gameObject, PresentUnitPrefab); newUnit.SetActive(true); newUnit.name = "PresentUnit_" + p; int x = 0; if (p % 3 == 0) { x = 0; } else if (p % 3 == 1) { x = 160; } else if (p % 3 == 2) { x = 320; } newUnit.transform.localPosition = new Vector3(x, -160 * (p / 3), 0); UI_Travel_Present_PresentUnit fu = newUnit.GetComponent <UI_Travel_Present_PresentUnit>(); fu.SetPresentData(ItemCfg.ItemID); PresentGrid.repositionNow = true; sv.ResetPosition(); yield return(new WaitForEndOfFrame()); p++; } } } PresentGrid.repositionNow = true; sv.ResetPosition(); }
/// <summary> /// Resolves the item. /// </summary> /// <param name="target">The target.</param> /// <param name="database">The database.</param> /// <returns> /// Item. /// </returns> /// <exception cref="System.NotSupportedException">You can not save a class that does not contain a property that represents the item ID. Ensure that at least one property has been marked to contain the Sitecore ID. /// or /// Cannot get ID for item</exception> public Item ResolveItem(object target, Database database) { if (target == null) { return(null); } ID id; Language language = null; int versionNumber = -1; if (ItemConfig != null) { var item = ItemConfig.PropertyGetter(target) as Item; if (item != null) { return(item); } } if (IdConfig == null && ItemUriConfig == null) { string message = "Failed item resolve - You cannot save a class that does not contain a property that represents the item ID. Ensure that at least one property has been marked to contain the Sitecore ID. Type: {0}" .Formatted(target.GetType().FullName); Sitecore.Diagnostics.Log.Error(message, this); LogDumpConfiguration(); throw new NotSupportedException(message); } id = GetId(target); language = GetLanguage(target); versionNumber = GetVersion(target); if (language != null && versionNumber > 0) { return(database.GetItem(id, language, global::Sitecore.Data.Version.Parse(versionNumber))); } else if (language != null) { return(database.GetItem(id, language)); } else { return(database.GetItem(id)); } }
/// <summary> /// 整理背包物品 /// </summary> public void Collating(bool isSort) { if (itemUIList.Count == 0) { return; } int row = 0;//行数 if (isSort) { ItemMgr.Instance.ItemSort(); //排序 } //物品更新 for (int i = 0; i < itemUIList.Count; i++) { if (i >= ItemMgr.Instance.itemList.Count) { itemUIList[i].gameObject.SetActive(false); } else { itemUIList[i].itemUIid = ItemMgr.Instance.itemList[i].itemId; itemUIList[i].num_txt.text = ItemMgr.Instance.itemList[i].itemNum.ToString(); ItemConfig ic = JsonMgr.GetSingleton().GetItemConfigByID(ItemMgr.Instance.itemList[i].itemId); itemUIList[i].itemLevelbg_img.sprite = ResourceMgr.Instance.LoadSprite(ColorMgr.Border[ic.rare - 1]); itemUIList[i].itemImg_img.sprite = ResourceMgr.Instance.LoadSprite(ic.icon); } if (Ptype == 0 && i < ItemMgr.Instance.itemList.Count) { itemUIList[i].gameObject.SetActive(true); } else if (Ptype != 0 && i == itemUIList.Count - 1) { CollatingType(Ptype); } } if (Ptype == 0) { ItemPop(itemUIList); } //背包物品滑动框的大小 row = ItemMgr.Instance.itemList.Count / UNITROWNUM; if (row > 3) { gridlist_obj.GetComponent <RectTransform>().offsetMin = new Vector2(0, -(row - 3) * UNITITEMSIZE); gridlist_obj.GetComponent <RectTransform>().offsetMax = new Vector2(0, 0); } }
public void DecodeConfigItem() { for (int i = 0; i < list.Count; i++) { if (i == 1) { BornItem = ItemConfig.GetConfig(Id); } if (i == 2) { BornGun = GunConfig.GetConfig(Id); } } list = null; }
public void BuyLongerLine(int num) { int price = ItemConfig.GetItem(2003).price *num; if (Gold < price) // gold not enough { return; } LongerLine += num; Gold -= price; GA.Buy("LongerLine", num, price); TouchHandler.PlayClickAudio(); // 按钮点击音效 }
public bool VariantIsBought(ItemConfig item, ItemVariant variant) { foreach (string dirtyPair in bought3DModelItems) { string[] strs = dirtyPair.Split('+'); if (strs.Contains(item.ConfigId)) { if (strs.Contains(variant.ConfigId)) { return(true); } } } return(false); }
static XElement initImageView(ItemConfig config, XElement ele) { ele.SetAttributeValue("Name", config.name); var position = ele.XPathSelectElements("./Position").FirstOrDefault(); position.SetAttributeValue("X", config.position.x); position.SetAttributeValue("Y", config.position.y); var fileData = ele.XPathSelectElements("./FileData").FirstOrDefault(); var size = ele.XPathSelectElements("./Size").FirstOrDefault(); size.SetAttributeValue("X", config.size.width); size.SetAttributeValue("Y", config.size.height); fileData.SetAttributeValue("Path", "res/ui/games/" + App.Activity + "/" + App.Skin + "/" + config.image); return(ele); }
public void BuyWindShield(int num) { int price = ItemConfig.GetItem(2004).price *num; if (Gold < price) // gold not enough { return; } WindShield += num; Gold -= price; GA.Use("WindShield", num, price); TouchHandler.PlayClickAudio(); // 按钮点击音效 }
IEnumerator _GetAllCard() { for (int i = 50001; i <= 50062; i++) { GameApp.SendMsg.GMOrder(StringBuilderTool.ToString("AddItem ", i, " 1")); ItemConfig ItemCfg = null; CsvConfigTables.Instance.ItemCsvDic.TryGetValue(i, out ItemCfg); if (ItemCfg != null) { GameApp.Instance.CommonHintDlg.SpringHint(StringBuilderTool.ToString("获得1张[", ItemCfg.Name, "]卡牌")); } yield return(new WaitForSeconds(0.05f)); } }
public void BuyBasket(int num) { int price = ItemConfig.GetItem(2001).price *num; if (Gold < price) // gold not enough { return; } Basket += num; Gold -= price; GA.Buy("Basket", num, price); TouchHandler.PlayClickAudio(); // 按钮点击音效 }
public void SetTip <T>(ItemConfig <T> config, ItemConfig <T> config_2) where T : BaseConfig <T> { ItemUITip.gameObject.SetActive(config != null); CurrentEquipmentUITip.gameObject.SetActive(config_2 != null); if (config != null) { ItemUITip.SetConfig(config.GetSprite(), config.GetTipString()); } if (config_2 != null) { CurrentEquipmentUITip.SetConfig(config_2.GetSprite(), config_2.GetTipString()); } }
public void ItemSort() { itemList.Sort((Item item1, Item item2) => { ItemConfig ic1 = JsonMgr.GetSingleton().GetItemConfigByID(item1.itemId); ItemConfig ic2 = JsonMgr.GetSingleton().GetItemConfigByID(item2.itemId); //道具物品类型不同时 if (ic1.type < ic2.type) { return(-1); //左值小于右值,返回-1,为升序,如果返回1,就是降序 } else if (ic1.type > ic2.type) { return(1); } else { //道具物品类型相同时,则按物品的稀有度进行排序 if (ic1.rare < ic2.rare) { return(1); } else if (ic1.rare > ic2.rare) { return(-1); } else if (ic1.rare == ic2.rare) { if (ic1.ID < ic2.ID) { return(1); } else if (ic1.ID > ic2.ID) { return(-1); } else { return(0); } } else { return(0); } } }); }
public ItemData Load(ItemConfig config) { return(new ItemData { Id = config.Id, Name = config.Name, Reward = config.Reward, Count = wrapper.GetInt(config.Id, CountKey), TotalCount = wrapper.GetInt(config.Id, TotalCountKey), Image = config.Image, RequiredParts = config.RequiredParts }); }
public static void AddItem(int itemId, Vector2 position) { GameObject itemObject = (GameObject)MonoBehaviour.Instantiate(item_pre); ItemConfig itemConfig = Config.GetInstance().GetItemConfig(itemId); Item item = itemObject.GetComponent <Item>(); item.itemConfig = itemConfig; item.transform.localPosition = position; item.SetItemId(itemId); items.Add(item); }
private void OnItemBought(ItemConfig cfg, ItemVariant var) // TODO var is unnecessary { if (itemConfig == cfg) { if (lockIcon != null) { lockIcon.gameObject.SetActive(false); activeItemTick.SetActive(true); /* frameIMG.color = startFrameColor;*/ } } else { activeItemTick.SetActive(false); } }
public List <string> GetItemsByType(List <int> types) { var itemsByType = new List <string>(); var items = model.GetItems(); foreach (var item in items) { var config = ItemConfig.Get(item.id); if (types.Contains(config.type)) { itemsByType.Add(item.guid); } } return(itemsByType); }
static string ItemMatchEvaluator(Match match) { try { var integerMatch = Regex.Match(match.Value, "\\d+"); var id = integerMatch != null?int.Parse(integerMatch.Value) : 0; var config = ItemConfig.Get(id); return(Language.Get(config.name)); } catch (System.Exception ex) { DebugEx.Log(ex); return(string.Empty); } }
public List <string> GetItemsEqualsOrLargerQuality(int quality) { var itemsByQuality = new List <string>(); var items = model.GetItems(); foreach (var item in items) { var config = ItemConfig.Get(item.id); if (config.quality >= quality) { itemsByQuality.Add(item.guid); } } return(itemsByQuality); }
public List <string> GetItemsEqualsOrLargerLevel(int level) { var itemsByLevel = new List <string>(); var items = model.GetItems(); foreach (var item in items) { var config = ItemConfig.Get(item.id); if (config.level == level) { itemsByLevel.Add(item.guid); } } return(itemsByLevel); }
public List <string> GetItemsByStarLevel(int starLevel) { var itemsByStarLevel = new List <string>(); var items = model.GetItems(); foreach (var item in items) { var config = ItemConfig.Get(item.id); if (config.starLevel == starLevel) { itemsByStarLevel.Add(item.guid); } } return(itemsByStarLevel); }
/** 是否有物品位置 */ public bool hasItemPlace(DIntData[] dataArr) { DIntData data; if (dataArr.Length == 1) { data = dataArr[0]; return(hasItemPlace(data.key, data.value)); } _tempDic.clear(); for (int i = 0, len = dataArr.Length; i < len; ++i) { data = dataArr[i]; if (!ensureNum(data.value)) { _tempDic.clear(); return(false); } //有必要 if (ItemConfig.get(data.key).totalPlusMax > 0) { _tempDic.put(data.key, data.value); } } if (!_tempDic.isEmpty()) { ItemConfig config; foreach (var kv in _tempDic.entrySet()) { config = ItemConfig.get(kv.key); //超出总上限 if ((getItemNum(kv.key) + kv.value) > config.totalPlusMax) { return(false); } } } return(hasFreeGrid(dataArr.Length)); }
/** 是否有物品位置 */ public bool hasItemPlace(SList <ItemData> list) { if (list.size() == 1) { return(hasItemPlace(list.get(0))); } _tempDic.clear(); ItemData[] values = list.getValues(); ItemData data; for (int i = 0, len = list.size(); i < len; ++i) { data = values[i]; if (!ensureNum(data.num)) { _tempDic.clear(); return(false); } //有必要 if (ItemConfig.get(data.id).totalPlusMax > 0) { _tempDic.put(data.id, data.num); } } if (!_tempDic.isEmpty()) { ItemConfig config; foreach (var kv in _tempDic.entrySet()) { config = ItemConfig.get(kv.key); //超出总上限 if ((getItemNum(kv.key) + kv.value) > config.totalPlusMax) { return(false); } } } return(hasFreeGrid(list.size())); }
/// <summary> /// Custom item created as a copy of a vanilla Valheim prefab with a <see cref="global::Recipe"/> made from a <see cref="ItemConfig"/>. /// </summary> /// <param name="name">The new name of the prefab after cloning.</param> /// <param name="basePrefabName">The name of the base prefab the custom item is cloned from.</param> /// <param name="itemConfig">The item config for this custom item.</param> public CustomItem(string name, string basePrefabName, ItemConfig itemConfig) { var itemPrefab = PrefabManager.Instance.CreateClonedPrefab(name, basePrefabName); if (itemPrefab) { ItemPrefab = itemPrefab; ItemDrop = itemPrefab.GetComponent <ItemDrop>(); itemConfig.Apply(itemPrefab); FixConfig = true; var recipe = itemConfig.GetRecipe(); if (recipe != null) { Recipe = new CustomRecipe(recipe, true, true); } } }
/// <summary> /// Shows the monitored item properties. /// </summary> private void ShowItemProps(ItemConfig itemConfig) { if (itemConfig != null) { chkItemActive.Checked = itemConfig.Active; txtDisplayName.Text = itemConfig.DisplayName; txtTagCode.Text = itemConfig.TagCode; txtTagNum.Text = itemConfig?.Tag is ItemConfigTag tag ? tag.TagNumStr : ""; txtNodeID.Text = itemConfig.NodeID; txtDataType.Text = itemConfig.DataTypeName; chkIsString.Checked = itemConfig.IsString; chkIsArray.Checked = itemConfig.IsArray; chkIsArray.Enabled = !itemConfig.IsString; numDataLen.Enabled = itemConfig.IsString || itemConfig.IsArray; numDataLen.SetValue(itemConfig.DataLen); } }
/// <summary> /// 创建物品数据 /// </summary> public ItemData createItem(int id, int num) { ItemConfig config = ItemConfig.get(id); ItemData data = createItemByType(config.type); data.id = id; data.num = num; data.config = config; //失效时间 data.disableTime = config.enableTimeT.getNextTime(); //额外初始化 BaseC.logic.initItem(data, id); return(data); }
void DeleteNowCheckAnother() { ItemConfig ic = ItemConfigProvider.Instance.GetDataById(id); if (GamePokeyManager.changeitemDic != null && ic != null) { if (GamePokeyManager.changeitemDic.ContainsKey(ic.m_WearParts)) { GamePokeyManager.changeitemDic.Remove(ic.m_WearParts); } foreach (int pos in GamePokeyManager.changeitemDic.Keys) { SetEquipment(GamePokeyManager.changeitemDic[pos]); break; } } }