mirror of
https://github.com/unanmed/HumanBreak.git
synced 2025-07-27 10:01:46 +08:00
Compare commits
1 Commits
97f812afb5
...
cf1ff03996
Author | SHA1 | Date | |
---|---|---|---|
![]() |
cf1ff03996 |
@ -1,11 +1,6 @@
|
|||||||
import { ElementLocator, IWheelEvent } from '@motajs/render-core';
|
import { ElementLocator, IWheelEvent } from '@motajs/render-core';
|
||||||
import { DefaultProps } from '@motajs/render-vue';
|
import { DefaultProps } from '@motajs/render-vue';
|
||||||
import {
|
import { SetupComponentOptions, UIComponentProps } from '@motajs/system-ui';
|
||||||
GameUI,
|
|
||||||
IUIMountable,
|
|
||||||
SetupComponentOptions,
|
|
||||||
UIComponentProps
|
|
||||||
} from '@motajs/system-ui';
|
|
||||||
import { defineComponent } from 'vue';
|
import { defineComponent } from 'vue';
|
||||||
import { Page } from '../components';
|
import { Page } from '../components';
|
||||||
import { useKey } from '../use';
|
import { useKey } from '../use';
|
||||||
@ -17,8 +12,6 @@ export interface SaveProps extends UIComponentProps, DefaultProps {
|
|||||||
export type SaveEmits = {
|
export type SaveEmits = {
|
||||||
/** 点击存档时触发 */
|
/** 点击存档时触发 */
|
||||||
emit: (index: number) => void;
|
emit: (index: number) => void;
|
||||||
/** 手动点击退出时触发 */
|
|
||||||
exit: () => void;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
const saveProps = {
|
const saveProps = {
|
||||||
@ -49,43 +42,3 @@ export const Save = defineComponent<SaveProps, SaveEmits, keyof SaveEmits>(
|
|||||||
},
|
},
|
||||||
saveProps
|
saveProps
|
||||||
);
|
);
|
||||||
|
|
||||||
export const SaveUI = new GameUI('save', Save);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 打开存读档界面并让用户选择一个存档。如果用户手动关闭了存档界面,返回 -1,否则返回用户选择的存档索引。
|
|
||||||
* 参数参考 {@link SaveProps},事件不可自定义。
|
|
||||||
*
|
|
||||||
* 使用示例:
|
|
||||||
* ```ts
|
|
||||||
* const index = await selectSave(props.controller, [0, 0, 416, 416]);
|
|
||||||
* if (index === -1) {
|
|
||||||
* // 如果用户未选择存档,而是关闭了存档。
|
|
||||||
* } else {
|
|
||||||
* // 用户选择了一个存档。
|
|
||||||
* }
|
|
||||||
* ```
|
|
||||||
* @param controller 在哪个控制器上打开
|
|
||||||
* @param loc 存读档界面的坐标
|
|
||||||
* @param props 传递给存读档界面的参数
|
|
||||||
* @returns
|
|
||||||
*/
|
|
||||||
export function selectSave(
|
|
||||||
controller: IUIMountable,
|
|
||||||
loc: ElementLocator,
|
|
||||||
props?: SaveProps
|
|
||||||
) {
|
|
||||||
return new Promise<number>(res => {
|
|
||||||
const instance = controller.open(SaveUI, {
|
|
||||||
loc,
|
|
||||||
...props,
|
|
||||||
onEmit: index => {
|
|
||||||
controller.close(instance);
|
|
||||||
res(index);
|
|
||||||
},
|
|
||||||
onExit: () => {
|
|
||||||
res(-1);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
Loading…
Reference in New Issue
Block a user