diff options
| author | stonedDiscord <Tukz@gmx.de> | 2026-04-06 20:38:41 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-04-06 20:38:41 +0200 |
| commit | 4be4f4665fe03a0267ac88c36f0e3b73d8fc2d48 (patch) | |
| tree | b76ef7b627523a8daebe0beb59e404d3da82d04e /webAO/viewport/interfaces | |
| parent | 815f56add06b92a48b964cb1343f70c86ea36435 (diff) | |
| parent | 20810aa0d3dfac49e1f43fe84634f74f56374fcd (diff) | |
Merge pull request #301 from AttorneyOnline/rendering-fix
Fix IC rendering race conditions with asset preloading
Diffstat (limited to 'webAO/viewport/interfaces')
| -rw-r--r-- | webAO/viewport/interfaces/ChatMsg.ts | 3 | ||||
| -rw-r--r-- | webAO/viewport/interfaces/PreloadedAssets.ts | 20 |
2 files changed, 23 insertions, 0 deletions
diff --git a/webAO/viewport/interfaces/ChatMsg.ts b/webAO/viewport/interfaces/ChatMsg.ts index 1e7078f..ab8d0b3 100644 --- a/webAO/viewport/interfaces/ChatMsg.ts +++ b/webAO/viewport/interfaces/ChatMsg.ts @@ -1,3 +1,5 @@ +import { PreloadedAssets } from "./PreloadedAssets"; + export interface ChatMsg { content: string; objection: number; @@ -31,4 +33,5 @@ export interface ChatMsg { evidence?: number; looping_sfx?: boolean; noninterrupting_preanim?: number; + preloadedAssets?: PreloadedAssets; } diff --git a/webAO/viewport/interfaces/PreloadedAssets.ts b/webAO/viewport/interfaces/PreloadedAssets.ts new file mode 100644 index 0000000..54d20b8 --- /dev/null +++ b/webAO/viewport/interfaces/PreloadedAssets.ts @@ -0,0 +1,20 @@ +export interface PreloadedAssets { + /** Resolved URL for idle (a) sprite */ + idleUrl: string; + /** Resolved URL for talking (b) sprite */ + talkingUrl: string; + /** Resolved URL for pre-animation sprite (no prefix) */ + preanimUrl: string; + /** Duration of preanim in ms (0 if no preanim) */ + preanimDuration: number; + /** Resolved URL for paired character idle (a) sprite */ + pairIdleUrl: string; + /** Resolved per-character shout SFX URL, or null to use default */ + shoutSfxUrl: string | null; + /** Resolved emote SFX URL, or null if no sound */ + emoteSfxUrl: string | null; + /** Resolved realization (flash) SFX URL */ + realizationSfxUrl: string | null; + /** Resolved stab (screenshake) SFX URL */ + stabSfxUrl: string | null; +} |
