// NGuiInvGrid public static bool TransferItemStackToBagAndBeltNoUpdate( NGuiInvGrid _bag, NGuiInvGrid _belt, ref InventoryField _itemStack, HashSet <int> _modifiedBagSlots, HashSet <int> _modifiedBeltSlots) { if (_itemStack.md0002()) { return(false); } bool flag = _belt.TransferItemStackNoUpdate(ref _itemStack, _modifiedBeltSlots, false); if (_itemStack.md0002()) { return(flag); } flag = (_bag.TransferItemStackNoUpdate(ref _itemStack, _modifiedBagSlots, false) || flag); if (_itemStack.md0002()) { return(flag); } flag = (_belt.TransferItemStackNoUpdate(ref _itemStack, _modifiedBeltSlots, true) || flag); if (_itemStack.md0002()) { return(flag); } return(_bag.TransferItemStackNoUpdate(ref _itemStack, _modifiedBagSlots, true) || flag); }
// NGuiDragAndDropItem public static bool MoveItemToQuickTakeTarget(ref NGuiDragAndDropItem dragAndDropItem, int _itemCount) { if (dragAndDropItem.md000c() != null && dragAndDropItem.md000c().grid.UiGridQuickTake != null) { NGuiDragAndDropContainer nGuiDragAndDropContainer = dragAndDropItem.md000c(); int stackNumber = ItemBase.list[dragAndDropItem.itemStack.itemValue.type].StackNumber; int num = (_itemCount <= stackNumber) ? _itemCount : stackNumber; int num2 = dragAndDropItem.itemStack.count - num; dragAndDropItem.itemStack.count = num; dragAndDropItem.md0006(); NGuiInvGrid containerInv = NGUIWindowManager.Instance.GetWindow(EnumNGUIWindow.LootContainer).GetComponentInChildren <NGuiInvGrid>(); if (NGUITools.GetActive(containerInv) && containerInv != nGuiDragAndDropContainer.grid) { containerInv.AddItemStack(ref dragAndDropItem.itemStack, true); } else { if (dragAndDropItem.itemStack.count > 0 && nGuiDragAndDropContainer.grid.UiGridQuickTake2 != null) { nGuiDragAndDropContainer.grid.UiGridQuickTake2.AddItemStack(ref dragAndDropItem.itemStack, false); } if (dragAndDropItem.itemStack.count > 0 && nGuiDragAndDropContainer.grid.UiGridQuickTake != null) { nGuiDragAndDropContainer.grid.UiGridQuickTake.AddItemStack(ref dragAndDropItem.itemStack, false); } if (dragAndDropItem.itemStack.count > 0) { if (dragAndDropItem.itemStack.count > 0 && nGuiDragAndDropContainer.grid.UiGridQuickTake2 != null) { nGuiDragAndDropContainer.grid.UiGridQuickTake2.AddItemStack(ref dragAndDropItem.itemStack, true); } if (dragAndDropItem.itemStack.count > 0 && nGuiDragAndDropContainer.grid.UiGridQuickTake != null) { nGuiDragAndDropContainer.grid.UiGridQuickTake.AddItemStack(ref dragAndDropItem.itemStack, true); num2 += dragAndDropItem.itemStack.count; } } } if (dragAndDropItem.itemStack.count == 0 && nGuiDragAndDropContainer != null) { nGuiDragAndDropContainer.grid.OnItemRemoved(nGuiDragAndDropContainer.Index); } else { num2 = dragAndDropItem.itemStack.count; } if (num2 == 0) { UnityEngine.Object.Destroy(dragAndDropItem.transform.gameObject); return(true); } InventoryField inventoryField = new InventoryField(dragAndDropItem.itemStack.itemValue, num2); NGuiInvGrid.SetItemInSlot(nGuiDragAndDropContainer.grid, nGuiDragAndDropContainer.gameObject, inventoryField); nGuiDragAndDropContainer.grid.OnItemAdded(nGuiDragAndDropContainer.Index, inventoryField); } return(false); }
public Woodman(int locationX, int locationY) { this.locationX = locationX; this.locationY = locationY; for (var i = 0; i < Inventory.Length; i++) { Inventory[i] = new InventoryField(); Inventory[i].wood = false; Inventory[i].coal = false; } }
public void ShowInventory(Warrior warrior) { for (int i = 0; i < InventoryField.childCount; i++) { Destroy(InventoryField.GetChild(i).gameObject); } if (warrior.Weapon != null) { GameObject cardGO = Instantiate(WeaponCardPref, InventoryField, false); cardGO.GetComponent <WeaponCardVM>().ShowCard(warrior.Weapon); } }
private void ListRecipes(int mode, string arg1, string arg2) //arg1 "All" or "query string" - arg2 output type { int num1 = 0; int num2 = 0; string msg1, msg2 = ""; Recipe[] allRecipes = CraftingManager.GetAllRecipes(); SendResult(arg2, "## Recipes List ##"); for (int i = 0; i < allRecipes.Length; i++) { Recipe recipe = allRecipes [i]; if ((mode == 0 && recipe.GetName().ToLower().Contains(arg1)) || (mode == 1)) //list recipes names { num1++; SendResult(arg2, string.Concat(new object[] { num1, ". ", recipe.GetName() })); } if ((mode == 2 && recipe.GetName().ToLower().Contains(arg1)) || (mode == 3)) //list recipes Names And properties { num2++; SendResult(arg2, "**" + recipe.GetName() + "**"); msg1 = string.Concat( new object[] { num2, ". ", recipe.GetName(), ", count= ", recipe.count, ", scrapable= ", recipe.scrapable, (recipe.tooltip == null) ? string.Empty : (", tooltip= " + recipe.tooltip), (recipe.craftingArea == null || recipe.craftingArea.Length <= 0) ? string.Empty : (", craftingArea= " + recipe.craftingArea), (recipe.craftingTime <= 0f) ? string.Empty : (", craftingTime= " + recipe.craftingTime.ToString()) }); SendResult(arg2, msg1); SendResult(arg2, "**Ingredients**"); foreach (Vector2i current in recipe.ingredients.Keys) //ingredients { InventoryField inventoryField = recipe.ingredients[current]; msg2 = string.Concat( new object[] { "Name= ", ItemBase.list[inventoryField.itemValue.type].GetItemName(), ", count= ", inventoryField.count, (recipe.craftingArea == null || !recipe.craftingArea.Equals("campfire")) ? (", gridPosition= " + current) : string.Empty }); SendResult(arg2, msg2); } SendResult(arg2, "****"); } } SendResult(arg2, string.Concat("Listed ", (num1 >= num2) ? num1 : num2, " matching recipes.")); return; }