Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 | 243x 243x 243x 243x 243x 243x 243x 243x 243x | /**
* Main constants export for Black Trigram Korean martial arts system
*/
// Fix: Remove duplicate exports and ensure proper imports
export { CYBERPUNK_COLORS, KOREAN_COLORS } from "./colors";
export {
FONT_FAMILY,
FONT_SIZES,
FONT_WEIGHTS,
// KOREAN_FONT_FAMILY, // Not exported from typography.ts
KOREAN_FONT_WEIGHTS,
KOREAN_TEXT_SIZES,
KOREAN_MOBILE_FONT_SIZES,
getKoreanFontSize,
} from "./typography";
export { HEALTH_COLORS, UI_CONSTANTS, UI_DIMENSIONS } from "./ui";
// Design System exports
export {
TYPOGRAPHY,
TYPOGRAPHY_NUMERIC,
SPACING,
SPACING_NUMERIC,
SPACING_ADJUSTMENTS,
BORDER_RADIUS,
HUD_STYLE,
HIERARCHY,
BORDERS,
GRADIENTS,
TRANSITIONS,
OPACITY,
COMBAT_UI_DIMENSIONS,
COMBAT_UI_DIMENSIONS_NUMERIC,
TEXT_EFFECTS,
FONT_SIZE_MULTIPLIERS,
LAYOUT_MULTIPLIERS,
getResponsiveSpacing,
getResponsiveFontSize,
type TypographyLevel,
type SpacingLevel,
type BorderRadiusLevel,
type HierarchyLevel,
} from "./designSystem";
// Performance constants
export {
PERFORMANCE_SETTINGS_BY_TIER,
FRAME_TIME_BUDGET,
getPerformanceTier,
getPerformanceSettings,
type PerformanceTier,
type PerformanceSettings,
} from "./performance";
// Responsive scaling system exports
export {
RESPONSIVE_BREAKPOINTS,
FONT_SCALE_MAP,
SPACING_SCALE_MAP,
FONT_SIZE_CONSTRAINTS,
DEFAULT_RESIZE_TRANSITION,
getScreenSize,
calculateFontSize,
calculateSpacing,
getFontScale,
getSpacingScale,
createTransitionString,
createResponsiveConfig,
calculateResponsiveValues,
testScreenSize,
isMobileSize,
isTabletSize,
isDesktopSize,
// Use qualified name for ScreenSize to avoid conflict with LayoutTypes.ScreenSize
type ScreenSize as ResponsiveScreenSize,
type ResponsiveBreakpoints,
type FontScaleMap,
type SpacingScaleMap,
type ResponsiveScaleConfig,
type ResizeTransitionConfig,
type ResponsiveValues,
type ScreenSizeTestResult,
} from "../../systems/ResponsiveScaling";
// Fix: Provide default export
export { KOREAN_COLORS as default } from "./colors";
// Fix: Add missing KOREAN_TYPOGRAPHY export
// Fix: Add missing PIXI_FONT_WEIGHTS export
// Fix: Add missing ANIMATION_DURATIONS export
export { ANIMATION_DURATIONS } from "./animations";
/**
* Archetype-specific technique damage bonuses
* Maps archetype to technique ID to bonus multiplier
*
* @category Combat System
* @korean 원형별 기술 보너스
*/
export const ARCHETYPE_TECHNIQUE_BONUSES: Record<
string,
Record<string, number>
> = {
// Define bonuses for each archetype
};
/**
* Maximum ki cost for stance transitions
* @category Combat System
* @korean 최대 기 전환 비용
*/
export const MAX_TRANSITION_COST_KI = 50;
/**
* Maximum stamina cost for stance transitions
* @category Combat System
* @korean 최대 체력 전환 비용
*/
export const MAX_TRANSITION_COST_STAMINA = 30;
/**
* Maximum time allowed for stance transitions in milliseconds
* @category Combat System
* @korean 최대 전환 시간
*/
export const MAX_TRANSITION_TIME_MILLISECONDS = 1000;
/**
* Performance rating thresholds for match results
* Calculated based on combat effectiveness metrics
*
* @category Combat Performance
* @korean 전투 성능 등급
*/
export const PERFORMANCE_RATING_THRESHOLDS = {
S: {
minScore: 90,
korean: "S급",
english: "S Rank",
description: {
korean: "완벽한 전투",
english: "Perfect Combat",
},
color: 0xffd700, // KOREAN_COLORS.ACCENT_GOLD
},
A: {
minScore: 75,
korean: "A급",
english: "A Rank",
description: {
korean: "우수한 전투",
english: "Excellent Combat",
},
color: 0x00ffff, // KOREAN_COLORS.PRIMARY_CYAN
},
B: {
minScore: 60,
korean: "B급",
english: "B Rank",
description: {
korean: "양호한 전투",
english: "Good Combat",
},
color: 0x3399ff, // KOREAN_COLORS.ACCENT_BLUE
},
C: {
minScore: 0,
korean: "C급",
english: "C Rank",
description: {
korean: "보통 전투",
english: "Average Combat",
},
color: 0xcccccc, // KOREAN_COLORS.TEXT_SECONDARY
},
} as const;
/**
* Archetype asset mapping for visual and audio integration
* Maps each player archetype to its visual assets, theme music, and metadata
*
* @category Player Archetypes
* @korean 플레이어 원형 에셋
*/
export const ARCHETYPE_ASSETS = {
musa: {
id: "musa",
image: "/assets/visual/archetypes/musa.png",
theme: "/assets/audio/music/archetype_themes/musa_warrior.mp3",
themeId: "musa_warrior_theme",
name_korean: "무사",
name_english: "Traditional Warrior",
textureKey: "musa",
},
amsalja: {
id: "amsalja",
image: "/assets/visual/archetypes/amsalja.png",
theme: "/assets/audio/music/archetype_themes/amsalja_shadow.mp3",
themeId: "amsalja_shadow_theme",
name_korean: "암살자",
name_english: "Shadow Assassin",
textureKey: "amsalja",
},
hacker: {
id: "hacker",
image: "/assets/visual/archetypes/hacker.png",
theme: "/assets/audio/music/archetype_themes/hacker_cyber.mp3",
themeId: "hacker_cyber_theme",
name_korean: "해커",
name_english: "Cyber Warrior",
textureKey: "hacker",
},
jeongbo_yowon: {
id: "jeongbo_yowon",
image: "/assets/visual/archetypes/jeongbo_yowon.png",
theme: "/assets/audio/music/archetype_themes/jeongbo_intel.mp3",
themeId: "jeongbo_intel_theme",
name_korean: "정보요원",
name_english: "Intelligence Operative",
textureKey: "jeongbo_yowon",
},
jojik_pokryeokbae: {
id: "jojik_pokryeokbae",
image: "/assets/visual/archetypes/jojik_pokryeokbae.png",
theme: "/assets/audio/music/archetype_themes/jojik_street.mp3",
themeId: "jojik_street_theme",
name_korean: "조직폭력배",
name_english: "Organized Crime",
textureKey: "jojik_pokryeokbae",
},
} as const;
/**
* Background images for archetype-related screens
*
* Note: Directory name "archetyples" is intentionally spelled this way to match
* the actual directory structure in /public/assets/visual/bg/
*
* @category Visual Assets
* @korean 원형 배경 이미지
*/
export const ARCHETYPE_BACKGROUNDS = {
overview: "/assets/visual/bg/archetyples/PlayerArchetypesOverview.png",
explained: "/assets/visual/bg/archetyples/PlayerArchetypesExplained.png",
teamDynamics: "/assets/visual/bg/archetyples/CyberpunkTeamDynamics.png",
} as const;
/**
* Fallback image path for when archetype images fail to load
*
* @category Visual Assets
* @korean 대체 이미지 경로
*/
export const FALLBACK_ARCHETYPE_IMAGE = "/assets/visual/logo/black-trigram-256.png" as const;
/**
* Round announcement timing constants
* Controls the display duration and transitions for round announcements
*
* @category Combat UI
* @korean 라운드 발표 타이밍
*/
export const ROUND_ANNOUNCEMENT_TIMINGS = {
/** Duration to display announcement before countdown (seconds) */
ANNOUNCEMENT_DURATION: 2,
/** Duration of countdown to next round (seconds) */
COUNTDOWN_DURATION: 3,
/** Brief transition duration before next round starts (milliseconds) */
TRANSITION_DURATION: 500,
/** Fade in animation duration (milliseconds) */
FADE_IN_DURATION: 300,
/** Fade out animation duration (milliseconds) */
FADE_OUT_DURATION: 300,
} as const;
|