Rewrite and simplify Inventory Menu, various fixes for item effects

This commit is contained in:
2025-11-04 01:12:16 -08:00
parent 7b7fc910bd
commit a5846e08dc
49 changed files with 1070 additions and 826 deletions

View File

@@ -1,4 +1,6 @@
using Chickensoft.Collections;
using Godot;
using System;
using Zennysoft.Ma.Adapter;
using Zennysoft.Ma.Adapter.Entity;
@@ -17,6 +19,8 @@ public class EquipmentComponent : IEquipmentComponent
public AutoProp<EquipableItem> _equippedAccessory;
public event Action<EquipableItem> EquipmentChanged;
public int BonusAttack => _equippedWeapon.Value.BonusAttack + _equippedArmor.Value.BonusAttack + _equippedAccessory.Value.BonusAttack;
public int BonusDefense => _equippedWeapon.Value.BonusDefense + _equippedArmor.Value.BonusDefense + _equippedAccessory.Value.BonusDefense;
@@ -51,6 +55,7 @@ public class EquipmentComponent : IEquipmentComponent
_equippedArmor.OnNext(armor);
if (equipable is Accessory accessory)
_equippedAccessory.OnNext(accessory);
EquipmentChanged?.Invoke(equipable);
}
public void Unequip(EquipableItem equipable)
@@ -61,6 +66,7 @@ public class EquipmentComponent : IEquipmentComponent
_equippedArmor.OnNext(new Armor());
if (equipable is Accessory accessory)
_equippedAccessory.OnNext(new Accessory());
EquipmentChanged?.Invoke(equipable);
}
public bool IsItemEquipped(InventoryItem item)