// Called when the node enters the scene tree for the first time. public override void _Ready() { _itemSprite = GetNode <Sprite>("Item"); _interactParticle = GD.Load <PackedScene>("res://particle/ArcaneBurst.tscn"); ItemStack = new Item.ItemStack(Items.ELDERBERRIES, 1); }
public override void _Ready() { GD.Randomize(); ItemStack = new Item.ItemStack(possibleItems[(int)(GD.Randi() % (uint)possibleItems.Count)], 1); _interactParticle = GD.Load <PackedScene>("res://particle/ArcaneBurst.tscn"); ZIndex = Mathf.FloorToInt(Position.y); }
public void ItemButtonReleased() { if (_inventory.SelectedItemId < 0) { return; } Item.ItemStack selectedItemStack = _itemList[_inventory.SelectedItemId]; if (_alchemyStage == AlchemyStage.MortarPestle && _mortarPestleStage == MortarPestleStage.PickReagents && _potionReagents.Count < 4) { if (selectedItemStack.stackCount > 1) { _itemList[_inventory.SelectedItemId] = Item.DecreaseItemStackCount(selectedItemStack, 1); } else { _itemList.RemoveAt(_inventory.SelectedItemId); } _inventory.Update(); HBoxContainer itemInfo = new HBoxContainer(); itemInfo.Set("custom_constants/separation", 10f); Control itemIcon = new Control(); itemIcon.RectMinSize = new Vector2(16f, 16f); Sprite itemBG = new Sprite(); itemBG.Texture = _singleItemSlot; itemBG.Centered = false; Sprite itemSprite = new Sprite(); itemSprite.Texture = selectedItemStack.item.IconTex; itemSprite.Centered = false; itemSprite.Position = new Vector2(2f, 2f); itemBG.AddChild(itemSprite); itemIcon.AddChild(itemBG); itemInfo.AddChild(itemIcon); Label itemName = new Label(); itemName.Text = selectedItemStack.item.Name; itemName.AddFontOverride("font", _smallFont); itemName.MarginLeft = 4f; itemInfo.AddChild(itemName); _potionReagentsBox.AddChild(itemInfo); _potionReagents.Add(selectedItemStack.item); _proceedToCrush.Disabled = false; } GD.Print("Selected: " + selectedItemStack.item.Name); }
public void PickupItem(Item.ItemStack itemStack) { for (int i = 0; i < _invItems.Count; i++) { if (_invItems[i].item == itemStack.item) { _invItems[i] = new Item.ItemStack(itemStack.item, _invItems[i].stackCount + itemStack.stackCount); _inventory.Update(); return; } } _invItems.Add(itemStack); _inventory.Update(); }
public override void _Ready() { if (GetNodeOrNull(_nodeToShakePath) is Node2D shakeNode) { _nodeToShake = shakeNode; } if (GetNodeOrNull(_nodeToHidePath) is Node2D hideNode) { _nodeToHide = hideNode; } _bouncingItem = GD.Load <PackedScene>("res://BouncingItem.tscn"); _tween = new Tween(); AddChild(_tween); _itemStack = new Item.ItemStack(Items.HOLLY_BERRIES, 1); }