색상
Cataclysm: Bright Nights는 여러 게임 요소에 색상을 정의할 수 있는 색상 시스템을 사용합니다. 색상은 터미널 디스플레이의 시각적 구별에 사용되며, 타일셋은 자체 색상을 정의할 수 있지만 게임 데이터에서 색상 정의를 참조할 수도 있습니다.
기본 색상
게임은 터미널 디스플레이에 사용되는 기본 색상 세트를 정의합니다:
| 색상 코드 | 이름 | 설명 |
|---|---|---|
c_black |
검은색 | 기본 검은색 |
c_white |
흰색 | 기본 흰색 |
c_light_gray |
밝은 회색 | 밝은 회색 |
c_dark_gray |
어두운 회색 | 어두운 회색 |
c_red |
빨간색 | 기본 빨간색 |
c_green |
초록색 | 기본 초록색 |
c_blue |
파란색 | 기본 파란색 |
c_cyan |
시안색 | 밝은 청록색 |
c_magenta |
마젠타색 | 밝은 분홍/자주색 |
c_brown |
갈색 | 어두운 갈색/주황색 |
c_light_red |
밝은 빨간색 | 밝은 빨간색 |
c_light_green |
밝은 초록색 | 밝은 초록색 |
c_light_blue |
밝은 파란색 | 밝은 파란색 |
c_light_cyan |
밝은 시안색 | 밝은 청록색 |
c_pink |
분홍색 | 밝은 마젠타색/분홍색 |
c_yellow |
노란색 | 밝은 노란색 |
JSON에서 색상 사용하기
JSON 정의에서 색상을 참조할 때 색상 코드(예: c_red) 또는 색상 이름(예: red)을 사용할 수 있습니다. 색상 이름은 c_ 접두사 없이 사용할 수 있습니다.
예시: 아이템 색상
{
"type": "GENERIC",
"id": "example_item",
"name": "빨간 깃발",
"color": "red",
"symbol": "/"
}
예시: 몬스터 색상
{
"type": "MONSTER",
"id": "example_monster",
"name": "초록 슬라임",
"color": "green",
"symbol": "b"
}
맞춤 색상 정의하기
colordef 타입을 사용하여 맞춤 색상을 정의할 수 있습니다. 이를 통해 터미널 디스플레이에서 기본 색상의 RGB 값을 수정할 수 있습니다.
{
"type": "colordef",
"BLACK": [0, 0, 0],
"RED": [255, 0, 0],
"GREEN": [0, 255, 0],
"BLUE": [0, 0, 255],
"CYAN": [0, 255, 255],
"MAGENTA": [255, 0, 255],
"YELLOW": [255, 255, 0],
"WHITE": [255, 255, 255],
"BLACK_WHITE": [255, 255, 255],
"YELLOW_WHITE": [255, 255, 255],
"WHITE_WHITE": [255, 255, 255],
"BLACK_RED": [255, 0, 0],
"DKGRAY_RED": [255, 0, 0],
"LTGRAY_RED": [255, 0, 0],
"WHITE_RED": [255, 0, 0],
"DKGRAY_GREEN": [0, 255, 0],
"LTGRAY_GREEN": [0, 255, 0]
}
각 항목은 색상 이름과 세 개의 정수 값 배열(RGB 값, 0-255)로 구성됩니다.
색상 쌍
일부 경우에는 전경색과 배경색을 지정할 수 있는 색상 쌍을 정의할 수 있습니다. 형식은 FOREGROUND_BACKGROUND입니다(예: BLACK_WHITE는 흰색 배경에 검은색 텍스트).
참고사항
- 타일셋은 이러한 색상 정의를 무시하고 자체 그래픽을 사용할 수 있습니다.
- 색상은 주로 ASCII/터미널 모드 디스플레이에 중요합니다.
- 일부 터미널 에뮬레이터는 색상을 다르게 렌더링할 수 있습니다.
- 맞춤 색상 정의는 기본 터미널 색상 팔레트를 덮어쓸 수 있습니다.