전술 미니맵¶
목적¶
작전 투입 직후 생성된 전체 맵의 구조를 우측 상단에서 확인할 수 있게 합니다. 소형·중형·대형 모두 같은 패널 안에 비율을 유지해 맞추므로, 맵이 커져도 HUD가 화면 밖으로 커지지 않습니다.
표시 정보¶
- 청록색 영역: 이동 가능한 방과 복도
- 갈색 영역: 실내 벽과 기둥 방해물
- 밝은 초록 원: 현재 플레이어 위치
- 주황 마름모: 탈출 위치
- 흰 방향선: 플레이어가 이동 중인 방향
미니맵은 전장의 안개와 별개로 전체 지형을 계속 보여주는 전술 지도입니다. 패널의 FULL MAP 표시는 월드 시야 밖 방과 복도도 지도에서는 확인할 수 있다는 뜻입니다.
M 확장 지도와 워프¶
작전 중 M을 누르면 저점유 미니맵이 화면 중앙의 확장 전술 지도로 바뀝니다. 밝은 원으로 표시된 후보를 마우스 왼쪽 버튼으로 클릭하면 해당 방 중심으로 워프하고 지도는 자동 축소됩니다. M 또는 ESC로 직접 닫을 수도 있습니다.
워프 후보는 다음 세 종류입니다.
- 시작 지역
- 끝 지역인 탈출 방
- 동·서·남·북 네 방향이 모두 통하고 이미 클리어한 교차 방
방 봉쇄 전투가 진행 중이면 모든 워프를 거부합니다. 미클리어 일반 방과 1~3방향 방은 지도에 워프 후보로 표시하지 않습니다. 전체 지형 공개와 워프 허용은 별개이므로 지도가 보인다고 곧바로 이동할 수 있는 것은 아닙니다.
가시성과 성능¶
- 기본 212×140px 이하 패널을 우측 상단에 두고, M 확장 시 뷰포트 78% 안에서 최대 920×640px로 맞춥니다.
- 맵 종횡비를 유지하고 남는 공간은 중앙 정렬합니다.
- 어두운 반투명 배경과 밝은 테두리로 전투 화면과 구분합니다.
- 정적 지형은 작전 시작 시 작은 텍스처로 한 번만 만듭니다.
- 플레이어 표식은 약 12.5회/초만 다시 그려 대형 맵에서도 불필요한 셀 단위 재렌더링을 피합니다.
- 월드 전장의 안개는 미니맵 CanvasLayer와 텍스처를 수정하지 않습니다.
모듈 계약¶
맵 생성기는 get_minimap_snapshot()으로 셀 경계, 셀 크기, 바닥·방해물 좌표, 시작·탈출 위치와 방 연결 방향의 복사본을 제공합니다. 미니맵은 맵 생성기의 방 배열이나 A* 객체를 직접 참조하지 않습니다.
최상위 Game은 스냅샷, 플레이어 Node2D, 표시할 등급 이름만 미니맵에 전달합니다. 미니맵은 클릭한 방 번호를 Signal로 요청할 뿐 플레이어 위치를 변경하지 않습니다. 별도 RoomWarpSystem이 방 전투의 공개 완료 스냅샷과 맵의 공개 방 스냅샷을 읽어 다시 검증한 뒤 이동합니다. 따라서 표시 UI나 워프 정책을 서로 독립 교체할 수 있습니다.
활성화와 제거¶
FeatureManifest.minimap_enabled로 미니맵을 켜고 끕니다. 미니맵은 map_generation에 의존합니다. room_warp_enabled만 끄면 전체 지도 표시는 유지되고 클릭 후보와 이동만 제거됩니다.
제거할 때는 먼저 Manifest에서 미니맵을 끄고 테스트한 뒤 game/features/minimap/ 폴더를 제거합니다.
검색 별칭¶
미니 맵, 미니맵 UI, 전술 지도, 우측 상단 지도, M 지도, 확장 지도, 방 워프, 빠른 이동, 4방향 방, 시작 지역, 끝 지역, 플레이어 위치, 탈출 위치, 맵 가시성, HUD 지도