added inventory, updated DB

This commit is contained in:
erik 2025-06-10 19:21:21 +00:00
parent f218350959
commit 10c51f6825
16528 changed files with 147743 additions and 79 deletions

View file

@ -490,3 +490,232 @@ body.noselect, body.noselect * {
color: #888;
font-style: italic;
}
/* Inventory window specific styles */
.inventory-window {
position: fixed;
top: 100px;
left: 400px;
width: 600px;
height: 500px;
background: var(--card);
border: 1px solid #555;
border-radius: 8px;
display: flex;
flex-direction: column;
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.4);
z-index: 1000;
}
.inventory-loading {
display: flex;
align-items: center;
justify-content: center;
height: 100%;
font-size: 1.1rem;
color: #888;
}
/* Inventory grid layout - matches AC original */
.inventory-grid {
display: grid;
grid-template-columns: repeat(8, 36px);
gap: 0px;
padding: 8px;
background:
linear-gradient(90deg, #333 1px, transparent 1px),
linear-gradient(180deg, #333 1px, transparent 1px),
#111;
background-size: 36px 36px;
max-height: 450px;
overflow-y: auto;
border: 1px solid #444;
}
/* Individual inventory slots - no borders like AC original */
.inventory-slot {
width: 36px;
height: 36px;
background: transparent;
border: none;
border-radius: 0;
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
transition: background 0.1s ease;
padding: 0;
margin: 0;
}
.inventory-slot:hover {
background: rgba(136, 136, 255, 0.3);
}
.inventory-icon {
width: 36px;
height: 36px;
object-fit: contain;
image-rendering: pixelated;
/* Improve icon appearance - make background match slot */
border: none;
outline: none;
background: #1a1a1a;
border-radius: 2px;
}
/* Icon compositing for overlays/underlays - matches AC original */
.item-icon-composite {
position: relative;
width: 36px;
height: 36px;
display: block;
background: transparent;
padding: 0;
margin: 0;
}
.icon-underlay,
.icon-base,
.icon-overlay {
position: absolute;
top: 0;
left: 0;
width: 36px;
height: 36px;
border: none;
outline: none;
background: transparent;
padding: 0;
margin: 0;
}
.icon-underlay {
z-index: 1;
}
.icon-base {
z-index: 2;
}
.icon-overlay {
z-index: 3;
}
/* Item count */
.inventory-count {
text-align: center;
padding: 10px;
color: #888;
font-size: 0.9rem;
}
/* Inventory tooltip */
.inventory-tooltip {
position: fixed;
background: rgba(0, 0, 0, 0.95);
border: 1px solid #555;
border-radius: 4px;
padding: 10px;
pointer-events: none;
z-index: 20000;
display: none;
min-width: 200px;
max-width: 350px;
font-size: 0.9rem;
}
.tooltip-name {
font-weight: bold;
color: var(--accent);
margin-bottom: 8px;
font-size: 1rem;
}
.tooltip-section {
margin-bottom: 6px;
}
.tooltip-section-title {
font-weight: bold;
color: #ffd700;
margin-bottom: 3px;
font-size: 0.85rem;
text-transform: uppercase;
}
.tooltip-stats {
display: flex;
flex-direction: column;
gap: 3px;
font-size: 0.9rem;
}
.tooltip-stat,
.tooltip-requirement,
.tooltip-property {
color: #ddd;
font-size: 0.85rem;
margin-left: 8px;
}
.tooltip-requirement {
color: #ffaa00;
}
.tooltip-property {
color: #88ff88;
}
.tooltip-string {
color: #add8e6;
font-size: 0.8rem;
margin-left: 8px;
}
.tooltip-spell {
color: #dda0dd;
font-size: 0.8rem;
margin-left: 8px;
margin-bottom: 2px;
}
.spell-name {
color: #4a90e2;
font-weight: 500;
}
.spell-school {
font-size: 11px;
color: #888;
font-style: italic;
}
.tooltip-info {
color: #f0e68c;
font-size: 0.8rem;
margin-left: 8px;
}
.tooltip-description {
color: #ccc;
font-style: italic;
margin-top: 8px;
padding-top: 8px;
border-top: 1px solid #444;
}
.tooltip-value {
color: #4CAF50;
}
.tooltip-burden {
color: #FFC107;
}
.tooltip-source {
font-size: 10px;
color: #888;
margin-top: 4px;
text-align: center;
}