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