'use strict';
// === INVENTORY / HUD OVERLAY ===
function renderInventoryOverlay(container, state) {
container.innerHTML = '';
container.style.background = 'rgba(0,0,0,0.85)';
const title = document.createElement('div');
title.className = 'menu-title';
title.textContent = 'INVENTORY';
title.style.fontSize = '24px';
container.appendChild(title);
// Weapons
const weaponsDiv = document.createElement('div');
weaponsDiv.style.cssText = 'font-family: monospace; font-size: 12px; color: #CCC; margin: 8px 0; max-width: 400px;';
weaponsDiv.innerHTML = '
WEAPONS
';
if (state.player.weapons.length === 0) {
weaponsDiv.innerHTML += 'No weapons
';
} else {
for (const w of state.player.weapons) {
const isActive = w === state.player.activeWeapon;
const line = document.createElement('div');
line.style.cssText = `color: ${isActive ? '#FFD700' : '#AAA'}; padding: 2px 0;`;
line.textContent = `${isActive ? '> ' : ' '}${w.name} (DMG:${w.damage})`;
weaponsDiv.appendChild(line);
}
}
container.appendChild(weaponsDiv);
// Items
const itemsDiv = document.createElement('div');
itemsDiv.style.cssText = 'font-family: monospace; font-size: 12px; color: #CCC; margin: 8px 0; max-width: 400px;';
itemsDiv.innerHTML = 'ITEMS
';
if (state.player.items.length === 0) {
itemsDiv.innerHTML += 'No items
';
} else {
for (const item of state.player.items) {
const def = ITEMS.find(i => i.id === item.id);
const line = document.createElement('div');
line.style.cssText = 'color: #90EE90; padding: 2px 0;';
line.textContent = `${def ? def.name : item.id}${(item.count || 1) > 1 ? ` x${item.count}` : ''}`;
itemsDiv.appendChild(line);
}
}
container.appendChild(itemsDiv);
// Resources
const resourcesDiv = document.createElement('div');
resourcesDiv.style.cssText = 'font-family: monospace; font-size: 12px; color: #CCC; margin: 8px 0; max-width: 400px;';
resourcesDiv.innerHTML = `
RESOURCES
Arrows: ${state.player.arrows}
Bombs: ${state.player.bombs}
Keys: ${state.player.keys}
`;
container.appendChild(resourcesDiv);
// Stats
const statsDiv = document.createElement('div');
statsDiv.style.cssText = 'font-family: monospace; font-size: 11px; color: #888; margin-top: 10px; max-width: 400px; text-align: center;';
statsDiv.textContent = `Dungeons: ${state.dungeonsCompleted} Rooms: ${state.roomsCleared} Enemies: ${state.enemiesDefeated}`;
container.appendChild(statsDiv);
// Controls hint
const hint = document.createElement('div');
hint.style.cssText = 'font-family: monospace; font-size: 11px; color: #666; margin-top: 10px; text-align: center;';
hint.textContent = 'X: Switch Weapon R: Use Potion I/Escape: Close';
container.appendChild(hint);
}
if (typeof module !== 'undefined' && module.exports) {
module.exports = { renderInventoryOverlay };
}