diff --git a/assets-src/buildings/village_hall.png b/assets-src/buildings/village_hall.png new file mode 100644 index 0000000..13eb4ae Binary files /dev/null and b/assets-src/buildings/village_hall.png differ diff --git a/public/assets/buildings/hall.png b/public/assets/buildings/hall.png new file mode 100644 index 0000000..4c29dea Binary files /dev/null and b/public/assets/buildings/hall.png differ diff --git a/src/components/game/VillageView.tsx b/src/components/game/VillageView.tsx index 8627a23..5d15663 100644 --- a/src/components/game/VillageView.tsx +++ b/src/components/game/VillageView.tsx @@ -509,12 +509,19 @@ export default function VillageView({ const t = HALL_TILE; const x = isoX(t.i, t.j); const y = isoY(t.i, t.j) + TH / 2; - hitRectsRef.current.push({ id: "hall", kind: "open", x: x - 34, y: y - 40, w: 68, h: 70 }); + hitRectsRef.current.push({ id: "hall", kind: "open", x: x - 54, y: y - 70, w: 108, h: 100 }); sprites.push({ y, draw: () => { - shadow(x, y + 6, 26); - drawEmoji("🏛️", x, y + 8, 48); + const hallImg = getImage(BUILDING_IMG.hall); + if (hallImg) { + const w = 118; + const hh = (hallImg.height / hallImg.width) * w; + ctx.drawImage(hallImg, x - w / 2, y + 16 - hh, w, hh); + } else { + shadow(x, y + 6, 26); + drawEmoji("🏛️", x, y + 8, 48); + } ctx.font = `13px ${juaFamily}`; ctx.textAlign = "center"; ctx.strokeStyle = "rgba(255,252,238,0.75)"; diff --git a/src/lib/game/data.ts b/src/lib/game/data.ts index 28e224d..feced28 100644 --- a/src/lib/game/data.ts +++ b/src/lib/game/data.ts @@ -25,6 +25,7 @@ export function catSprite(breed: string, frame: CatFrame): string { // 건물 일러스트 (public/assets/buildings/) export const BUILDING_IMG: Record = { + hall: "/assets/buildings/hall.png", dock: "/assets/buildings/dock.png", lumberyard: "/assets/buildings/lumberyard.png", quarry: "/assets/buildings/quarry.png",