private Item[] GetInventoryClone() { var invItems = UI_ACItemGrid.LastInstanceOfItemGrid.Items.ToArray(); var cloneArray = UI_MapTerrain.CloneItemArray(invItems); TrimTrailingNoItems(ref cloneArray, Item.NONE); return(cloneArray); }
public void HandleTap() { switch (callback.CurrentSelectMode) { case TerrainSelectMode.Custom: item.UpdateItem(UI_MapTerrain.ReferenceItem()); SetItem(item, Background.color, callback); break; case TerrainSelectMode.Drop: item.UpdateItem(UI_MapTerrain.ReferenceItem(0x20)); SetItem(item, Background.color, callback); break; case TerrainSelectMode.Place: item.UpdateItem(UI_MapTerrain.ReferenceItem(0x0)); SetItem(item, Background.color, callback); break; case TerrainSelectMode.Delete: item.UpdateItem(new Item(65534)); SetItem(item, Background.color, callback); break; case TerrainSelectMode.Load: UI_SearchWindow.LastLoadedSearchWindow.LoadItem(item.SelectedItem); break; } if (callback.CurrentSelectMode != TerrainSelectMode.Load) { callback.UpdateLayerImage(); } }
public void SetItem(FieldItemBlock block, Color bg, UI_MapTerrain editorCallback) { if (Recipes == null) { Recipes = GameInfo.Strings.CreateItemDataSource(RecipeList.Recipes, false); Fossils = GameInfo.Strings.CreateItemDataSource(GameLists.Fossils, false); } // Manually destroy any cached images if (Image.texture) { if (Image.texture != ResourceLoader.GetLeafImage()) { Destroy(Image.texture); } } callback = editorCallback; var rootItem = block.SelectedItem; var isNone = rootItem.IsNone; OverlayText.text = string.Empty; item = block; Texture2D tex; Color c = Color.white; if (rootItem.SystemParam == 0x20) { // use menuicon for fish/bugs that are "placed" var kind = ItemInfo.GetItemKind(rootItem); if (kind == ItemKind.Kind_Insect || ItemKindExtensions.IsFish(kind)) { tex = MenuSpriteHelper.CurrentInstance.GetIconTexture(rootItem.ItemId); } else { tex = SpriteBehaviour.ItemToTexture2D(rootItem, out c); } } else { tex = SpriteBehaviour.ItemToTexture2D(rootItem, out c); } Image.texture = tex; Background.color = isNone ? bg : c; Image.gameObject.SetActive(!isNone); if (tex != null) { if (tex.name.StartsWith("leaf")) // all defaults are "leaf" { // default image/no sprites loaded/field item OverlayText.text = GetName(rootItem.DisplayItemId); Image.gameObject.SetActive(false); } } if (rootItem.ItemId >= 60_000 && !isNone) { OverlayText.text = GetName(rootItem.DisplayItemId); } if (rootItem.ItemId == Item.MessageBottle || rootItem.ItemId == Item.DIYRecipe || rootItem.ItemId == Item.MessageBottleEgg) { OverlayText.text = Recipes.Find(x => x.Value == rootItem.Count).Text; } if (rootItem.ItemId == UI_SearchWindow.FOSSILITEM) { OverlayText.text = Fossils.Find(x => x.Value == rootItem.Count).Text; } ViewId = rootItem.ItemId; }