From 108636666d474119892c4b3a2f3beadb767b006e Mon Sep 17 00:00:00 2001 From: Caleb Date: Sat, 10 Sep 2022 11:09:49 -0400 Subject: Structured viewport a little differently --- webAO/viewport/interfaces/ChatMsg.ts | 34 ++++++++++++++++++++++++++++++++++ webAO/viewport/interfaces/Desk.ts | 4 ++++ webAO/viewport/interfaces/Position.ts | 7 +++++++ webAO/viewport/interfaces/Positions.ts | 5 +++++ webAO/viewport/interfaces/Testimony.ts | 3 +++ webAO/viewport/interfaces/Viewport.ts | 24 ++++++++++++++++++++++++ 6 files changed, 77 insertions(+) create mode 100644 webAO/viewport/interfaces/ChatMsg.ts create mode 100644 webAO/viewport/interfaces/Desk.ts create mode 100644 webAO/viewport/interfaces/Position.ts create mode 100644 webAO/viewport/interfaces/Positions.ts create mode 100644 webAO/viewport/interfaces/Testimony.ts create mode 100644 webAO/viewport/interfaces/Viewport.ts (limited to 'webAO/viewport/interfaces') diff --git a/webAO/viewport/interfaces/ChatMsg.ts b/webAO/viewport/interfaces/ChatMsg.ts new file mode 100644 index 0000000..293a774 --- /dev/null +++ b/webAO/viewport/interfaces/ChatMsg.ts @@ -0,0 +1,34 @@ +export interface ChatMsg { + content: string; + objection: number; + sound: string; + startpreanim: boolean; + startspeaking: boolean; + side: any; + color: number; + snddelay: number; + preanimdelay: number; + speed: number; + blips: string; + self_offset?: number[]; + other_offset?: number[]; + showname?: string; + nameplate?: string; + flip?: number; + other_flip?: number; + effects?: string[]; + deskmod?: number; + preanim?: string; + other_name?: string; + sprite?: string; + name?: string; + chatbox?: string; + other_emote?: string; + parsed?: HTMLSpanElement[]; + screenshake?: number; + flash?: number; + type?: number; + evidence?: number; + looping_sfx?: boolean; + noninterrupting_preanim?: number; + } \ No newline at end of file diff --git a/webAO/viewport/interfaces/Desk.ts b/webAO/viewport/interfaces/Desk.ts new file mode 100644 index 0000000..872426a --- /dev/null +++ b/webAO/viewport/interfaces/Desk.ts @@ -0,0 +1,4 @@ +export interface Desk { + ao2?: string; + ao1?: string; +} \ No newline at end of file diff --git a/webAO/viewport/interfaces/Position.ts b/webAO/viewport/interfaces/Position.ts new file mode 100644 index 0000000..dea7238 --- /dev/null +++ b/webAO/viewport/interfaces/Position.ts @@ -0,0 +1,7 @@ +import { Desk } from './Desk' + +export interface Position { + bg?: string; + desk?: Desk; + speedLines: string; +} \ No newline at end of file diff --git a/webAO/viewport/interfaces/Positions.ts b/webAO/viewport/interfaces/Positions.ts new file mode 100644 index 0000000..0644962 --- /dev/null +++ b/webAO/viewport/interfaces/Positions.ts @@ -0,0 +1,5 @@ +import { Position } from './Position' + +export interface Positions { + [key: string]: Position; +} \ No newline at end of file diff --git a/webAO/viewport/interfaces/Testimony.ts b/webAO/viewport/interfaces/Testimony.ts new file mode 100644 index 0000000..61a7491 --- /dev/null +++ b/webAO/viewport/interfaces/Testimony.ts @@ -0,0 +1,3 @@ +export interface Testimony { + [key: number]: string; +} \ No newline at end of file diff --git a/webAO/viewport/interfaces/Viewport.ts b/webAO/viewport/interfaces/Viewport.ts new file mode 100644 index 0000000..3ffbcc8 --- /dev/null +++ b/webAO/viewport/interfaces/Viewport.ts @@ -0,0 +1,24 @@ +import { ChatMsg } from "./ChatMsg"; +export interface Viewport { + chat_tick: Function; + changeMusicVolume: Function; + reloadTheme: Function; + playSFX: Function; + set_side: Function; + initTestimonyUpdater: Function; + updateTestimony: Function; + disposeTestimony: Function; + handle_ic_speaking: Function; + handleTextTick: Function; + theme: string; + chatmsg: ChatMsg; + setSfxAudio: Function; + getSfxAudio: Function; + getBackgroundFolder: Function; + blipChannels: HTMLAudioElement[]; + music: any; + musicVolume: number; + setBackgroundName: Function; + lastChar: string; + getBackgroundName: Function; +} \ No newline at end of file -- cgit From a2cc1596e1dbacbb6d4a478c17fcc1f16964ce4b Mon Sep 17 00:00:00 2001 From: Caleb Date: Sun, 11 Sep 2022 15:43:16 -0400 Subject: Typechecking change --- webAO/viewport/interfaces/ChatMsg.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'webAO/viewport/interfaces') diff --git a/webAO/viewport/interfaces/ChatMsg.ts b/webAO/viewport/interfaces/ChatMsg.ts index 293a774..6b96c6e 100644 --- a/webAO/viewport/interfaces/ChatMsg.ts +++ b/webAO/viewport/interfaces/ChatMsg.ts @@ -2,12 +2,12 @@ export interface ChatMsg { content: string; objection: number; sound: string; - startpreanim: boolean; - startspeaking: boolean; + startpreanim?: boolean; + startspeaking?: boolean; side: any; color: number; snddelay: number; - preanimdelay: number; + preanimdelay?: number; speed: number; blips: string; self_offset?: number[]; -- cgit From f8e8ab1b0d0edcddc55f57df76ee81fa14a1e5e8 Mon Sep 17 00:00:00 2001 From: Caleb Date: Sun, 11 Sep 2022 16:31:04 -0400 Subject: Finishing of refactor --- webAO/viewport/interfaces/Viewport.ts | 35 +++++++++++++++++++++++++++-------- 1 file changed, 27 insertions(+), 8 deletions(-) (limited to 'webAO/viewport/interfaces') diff --git a/webAO/viewport/interfaces/Viewport.ts b/webAO/viewport/interfaces/Viewport.ts index 3ffbcc8..5b428c1 100644 --- a/webAO/viewport/interfaces/Viewport.ts +++ b/webAO/viewport/interfaces/Viewport.ts @@ -1,17 +1,35 @@ import { ChatMsg } from "./ChatMsg"; + export interface Viewport { + getTextNow: Function; + setTextNow: Function; + getChatmsg: Function; + setChatmsg: Function; + getSfxPlayed: Function; + setSfxPlayed: Function; + setTickTimer: Function; + getTickTimer: Function; + getAnimating: Function; + setAnimating: Function; + getLastEvidence: Function; + setLastEvidence: Function; + setLastCharacter: Function; + getLastCharacter: Function; + setShoutTimer: Function; + getShoutTimer: Function; + setTestimonyTimer: Function; + getTestimonyTimer: Function; + setTestimonyUpdater: Function; + getTestimonyUpdater: Function; + getTheme: Function; + setTheme: Function; + testimonyAudio: HTMLAudioElement; chat_tick: Function; - changeMusicVolume: Function; - reloadTheme: Function; playSFX: Function; set_side: Function; - initTestimonyUpdater: Function; updateTestimony: Function; disposeTestimony: Function; - handle_ic_speaking: Function; handleTextTick: Function; - theme: string; - chatmsg: ChatMsg; setSfxAudio: Function; getSfxAudio: Function; getBackgroundFolder: Function; @@ -19,6 +37,7 @@ export interface Viewport { music: any; musicVolume: number; setBackgroundName: Function; - lastChar: string; getBackgroundName: Function; -} \ No newline at end of file + shoutaudio: HTMLAudioElement; + updater: any; +} -- cgit