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)}