Add more spell effects

This commit is contained in:
2026-02-26 02:09:38 -08:00
parent a686ce2fbc
commit fadb1652d4
20 changed files with 163 additions and 49 deletions

View File

@@ -73,7 +73,10 @@ public partial class AugmentableItemsMenu : Control
foreach (var item in inventory)
{
if (item is IAugmentableItem augmentable && augmentable.Augment == null)
ItemSlots[slotIndex++].SetItemToSlot(item);
{
ItemSlots[slotIndex].SetItemToSlot(item);
ItemSlots[slotIndex++].EnableItem();
}
}
Show();

View File

@@ -14,6 +14,8 @@ public interface IItemSlot : IControl
public void FocusItem();
public void EnableItem();
public event Action<IItemSlot> ItemPressed;
public event Action<IItemSlot> ItemSelected;

View File

@@ -66,7 +66,7 @@ public partial class ItemRescueMenu : Control, IInventoryMenu
if (Input.IsActionJustPressed(GameInputs.Inventory))
GetViewport().SetInputAsHandled();
var validSelectableItems = _game.RescuedItems.Items;
var validSelectableItems = _game.RescuedItems.GetItems().ToList();
if (Input.IsActionJustPressed(GameInputs.MoveUp) && _currentlySelected != null && _currentlySelected.Item.Value != validSelectableItems.First())
SfxDatabase.Instance.Play(SoundEffect.MoveUI);
@@ -110,7 +110,7 @@ public partial class ItemRescueMenu : Control, IInventoryMenu
private void ResetInventoryState()
{
var inventory = _game.RescuedItems.Items;
var inventory = _game.RescuedItems.GetItems().ToList();
ItemSlots.ForEach(x => x.SetEmpty());
ClearDescriptionBox();
@@ -141,7 +141,7 @@ public partial class ItemRescueMenu : Control, IInventoryMenu
private void ActionPanel_ActionPanelClosing()
{
ActionPanel.Hide();
if (_currentlySelected != null && !_game.RescuedItems.Items.Contains(_currentlySelected.Item.Value))
if (_currentlySelected != null && !_game.RescuedItems.GetItems().ToList().Contains(_currentlySelected.Item.Value))
_currentlySelected = null;
ResetInventoryState();
}
@@ -151,7 +151,7 @@ public partial class ItemRescueMenu : Control, IInventoryMenu
if (_currentlySelected != null)
{
_player.Inventory.PickUpItem(_currentlySelected.Item.Value);
_game.RescuedItems.Items.Remove(_currentlySelected.Item.Value);
_game.RescuedItems.Remove(_currentlySelected.Item.Value);
ResetInventoryState();
ActionPanel_ActionPanelClosing();
}
@@ -159,7 +159,7 @@ public partial class ItemRescueMenu : Control, IInventoryMenu
private void DropButton_Pressed()
{
_game.RescuedItems.Items.Remove(_currentlySelected.Item.Value);
_game.RescuedItems.Remove(_currentlySelected.Item.Value);
ResetInventoryState();
ActionPanel_ActionPanelClosing();
}

View File

@@ -65,6 +65,11 @@ public partial class ItemSlot : Control, IItemSlot
Show();
}
public void EnableItem()
{
ItemName.Disabled = false;
}
public void SetEmpty()
{
Hide();