Add view model
This commit is contained in:
parent
d0c76ef906
commit
92c483fc2f
5
src/view/model/FadeInfo.ts
Normal file
5
src/view/model/FadeInfo.ts
Normal file
@ -0,0 +1,5 @@
|
||||
export class FadeInfo {
|
||||
public fadeIn: boolean = false;
|
||||
public fadeOut: boolean = false;
|
||||
public duration: number = 0;
|
||||
}
|
22
src/view/model/Menu.ts
Normal file
22
src/view/model/Menu.ts
Normal file
@ -0,0 +1,22 @@
|
||||
import { MenuItem } from "./MenuItem";
|
||||
|
||||
export class Menu {
|
||||
items: MenuItem[];
|
||||
|
||||
constructor(private title: string) {
|
||||
this.title = title;
|
||||
this.items = [];
|
||||
}
|
||||
|
||||
public getTitle(): string { return this.title; }
|
||||
|
||||
public getItems(): MenuItem[] { return this.items; }
|
||||
|
||||
public addItem(name: string, position: number): void {
|
||||
this.items.push({ name: name, position: position });
|
||||
}
|
||||
|
||||
public getPosition(itemIndex: number) {
|
||||
return this.items[itemIndex].position;
|
||||
}
|
||||
}
|
4
src/view/model/MenuItem.ts
Normal file
4
src/view/model/MenuItem.ts
Normal file
@ -0,0 +1,4 @@
|
||||
export interface MenuItem {
|
||||
name: string;
|
||||
position: number;
|
||||
}
|
40
src/view/model/ViewModel.ts
Normal file
40
src/view/model/ViewModel.ts
Normal file
@ -0,0 +1,40 @@
|
||||
import { FadeInfo } from "./FadeInfo"
|
||||
import { Menu } from "./Menu"
|
||||
|
||||
export interface ViewModel {
|
||||
text(text: string): void
|
||||
textW(whoid: string, text: string): void
|
||||
meet(whoid: string, name: string): void
|
||||
background(type: string, name: string, effect: string): void
|
||||
sprite(whoid: string, params: string, position: string, alias: string, effect: string): void
|
||||
hideSprite(whoid: string, effect: string): void
|
||||
|
||||
menu(menu: Menu): void
|
||||
showMap(): void
|
||||
setZone(zone: string, label: string): void
|
||||
disableCurrentZone(): void
|
||||
disableAllZones(): void
|
||||
resetZone(zone: string): void
|
||||
|
||||
makeNamesUnknown(): void
|
||||
makeNamesKnown(): void
|
||||
|
||||
music(name: string, fade: FadeInfo): void
|
||||
ambience(name: string, fade: FadeInfo): void
|
||||
sound(name: string, fade: FadeInfo): void
|
||||
soundLoop(name: string, fade: FadeInfo): void
|
||||
|
||||
addSoundToQueue(name: string): void
|
||||
addMusicToQueue(name: string): void
|
||||
|
||||
stopAmbience(fade: FadeInfo): void
|
||||
stopSoundLoop(fade: FadeInfo): void
|
||||
stopSound(fade: FadeInfo): void
|
||||
stopMusic(fade: FadeInfo): void
|
||||
|
||||
windowShow(effect: string): boolean
|
||||
windowHide(effect: string): boolean
|
||||
|
||||
pause(duration: number, isHard: boolean): void
|
||||
finish(): void
|
||||
}
|
Loading…
Reference in New Issue
Block a user