diff --git a/src/views/GameInterface/tabs/InventoryTab.jsx b/src/views/GameInterface/tabs/InventoryTab.jsx index e4df088..67d1bbf 100644 --- a/src/views/GameInterface/tabs/InventoryTab.jsx +++ b/src/views/GameInterface/tabs/InventoryTab.jsx @@ -1,4 +1,4 @@ -import React, { useState, useEffect, useRef } from "react"; +import React, { useState, useEffect } from "react"; import ReactDOM from "react-dom"; import { useSocket } from "../../../hooks/useSocket"; import GameDataManager from "../../../services/GameDataManager.js"; @@ -127,10 +127,12 @@ const InventoryTab = () => {
- equipment[slot.id] && - (setSelectedItem(equipment[slot.id]), setShowModal(true)) - } + onClick={() => { + if (equipment[slot.id]) { + setSelectedItem(equipment[slot.id]); + setShowModal(true); + } + }} > {slot.label}
{ ) : ( + @@ -167,31 +170,26 @@ const InventoryTab = () => {
- {items.map((item, idx) => { - const isEquipped = Object.values(equipment).some( - (e) => e?.id === item.id, - ); - return ( -
{ - setSelectedItem(item); - setShowModal(true); - }} - > - - {isEquipped &&
E
} - {item.quantity > 1 && ( - {item.quantity} - )} -
- ); - })} + {items.map((item, idx) => ( +
{ + setSelectedItem(item); + setShowModal(true); + }} + > + + {item.quantity > 1 && ( + {item.quantity} + )} +
+ ))}
@@ -202,22 +200,15 @@ const InventoryTab = () => { ReactDOM.createPortal( e?.id === selectedItem.id) - } + isEquipped={!!selectedItem.currentSlot} onClose={() => { setShowModal(false); setSelectedItem(null); }} onEquip={equipItem} onUnequip={(slot) => { - const actualSlot = - slot || - Object.keys(equipment).find( - (k) => equipment[k].id === selectedItem.id, - ); - unequipItem(actualSlot); + unequipItem(slot || selectedItem.currentSlot); + setShowModal(false); }} formatStatName={(n) => GameDataManager.getStatName(n).toUpperCase()} getStatIcon={(n) => GameDataManager.getStatIcon?.(n)}