generated from nhcarrigan/template
11e97325cb
## Summary - Adds `apps/web/src/utils/cdn.ts` with a `cdnImage(folder, id)` helper that builds URLs from `https://cdn.nhcarrigan.com/elysium/` - Wires CDN art into all 13 game panels (bosses, quests, adventurers, companions, equipment, upgrades, prestige, transcendence, achievements, explorations, crafting, story, codex) - Zone selector tabs now display 16:9 zone art thumbnails in place of emoji icons - Adds a fixed background image at 15% opacity via `body::before` - Documents the art generation and CDN upload process in `CLAUDE.md` for future expansions Resolves #15 ✨ This PR was created with help from Hikari~ 🌸 Reviewed-on: #43 Co-authored-by: Hikari <hikari@nhcarrigan.com> Co-committed-by: Hikari <hikari@nhcarrigan.com>
21 lines
569 B
TypeScript
21 lines
569 B
TypeScript
/**
|
|
* @file CDN URL utility for Elysium game assets.
|
|
* @copyright nhcarrigan
|
|
* @license Naomi's Public License
|
|
* @author Naomi Carrigan
|
|
*/
|
|
|
|
const cdnBase = "https://cdn.nhcarrigan.com/elysium";
|
|
|
|
/**
|
|
* Returns the CDN URL for a game asset image.
|
|
* @param folder - The asset category folder (e.g. "bosses", "companions").
|
|
* @param id - The asset identifier (file name without extension).
|
|
* @returns The full CDN URL for the asset.
|
|
*/
|
|
const cdnImage = (folder: string, id: string): string => {
|
|
return `${cdnBase}/${folder}/${id}.jpg`;
|
|
};
|
|
|
|
export { cdnImage };
|