import React from 'react'; import Icon from './Icon'; /** * Hotbar — панель из 5 слотов инвентаря внизу экрана. Активный слот * подсвечен синим градиентом Рублокса. Клик и цифры 1-5 переключают. * * Видимая в Play. В редакторе скрыта. * * Props: * visible — bool * slots — массив элементов: { id, kind, modelTypeId, name, params } | null * activeIndex — индекс выделенного слота * onSelect(i) — переключить активный слот */ function Hotbar({ visible, slots = [], activeIndex = 0, onSelect, mobileMode = false }) { if (!visible) return null; // ГЛОБАЛЬНОЕ ПРАВИЛО (для всех игр тулбокса): если в инвентаре нет ни // одного предмета — панель инвентаря НЕ показываем вовсе. Пустой hotbar // из 5 серых ячеек загромождает экран в играх, где инвентарь не нужен. // Панель появится автоматически, как только в слот попадёт предмет. const hasAnyItem = Array.isArray(slots) && slots.some((s) => s != null); if (!hasAnyItem) return null; const SLOT_COUNT = 5; const cells = []; for (let i = 0; i < SLOT_COUNT; i++) { const item = slots[i] || null; const active = i === activeIndex; cells.push(