mirror of
https://github.com/motajs/template.git
synced 2026-11-03 07:24:30 +08:00
87 lines
3.3 KiB
TypeScript
87 lines
3.3 KiB
TypeScript
import { ElementLocator, Font } from '@motajs/render';
|
|
|
|
// 本文件为 UI 配置文件,你可以修改下面的每个常量来控制 UI 的显示参数,每个常量都有注释说明
|
|
|
|
//#region 地图配置
|
|
|
|
/** 每个格子的宽度 */
|
|
export const CELL_WIDTH = 32;
|
|
/** 每个格子的高度 */
|
|
export const CELL_HEIGHT = 32;
|
|
/** 地图格子宽度,此处仅影响画面,不影响游戏内逻辑,游戏内逻辑地图大小请在 core.js 中修改 */
|
|
export const MAP_BLOCK_WIDTH = 13;
|
|
/** 地图格子高度,此处仅影响画面,不影响游戏内逻辑,游戏内逻辑地图大小请在 core.js 中修改 */
|
|
export const MAP_BLOCK_HEIGHT = 13;
|
|
/** 地图像素宽度 */
|
|
export const MAP_WIDTH = CELL_WIDTH * MAP_BLOCK_WIDTH;
|
|
/** 地图像素高度 */
|
|
export const MAP_HEIGHT = CELL_HEIGHT * MAP_BLOCK_HEIGHT;
|
|
/** 地图宽度的一半 */
|
|
export const HALF_MAP_WIDTH = MAP_WIDTH / 2;
|
|
/** 地图高度的一半 */
|
|
export const HALF_MAP_HEIGHT = MAP_HEIGHT / 2;
|
|
/**
|
|
* 动态内容预留,不明白含义的话不要动。地图上所有正在移动的图块称为动态内容,这些内容的数量无法预测,因此需要预留数组大小,
|
|
* 如果不够再临时扩充。如果你的塔中有大量的移动操作,可以适当提高此值,避免频繁的内存扩充行为,可以一定程度上提高性能表现。
|
|
*/
|
|
export const DYNAMIC_RESERVE = 16;
|
|
/**
|
|
* 移动图块容忍度,不明白含义的话不要动。如果移动图块的数量长期小于当前预留数量,那么将会降低预留数量,提升性能表现。
|
|
* 调整此值可以调整频率,值越大,越不容易因为数量小于预留数量而减小预留。
|
|
*/
|
|
export const MOVING_TOLERANCE = 60;
|
|
/** 开关门动画的动画时长 */
|
|
export const DOOR_ANIMATE_INTERVAL = 50;
|
|
|
|
//#endregion
|
|
|
|
//#region 状态栏配置
|
|
|
|
/** 状态栏像素宽度 */
|
|
export const STATUS_BAR_WIDTH = 180;
|
|
/** 状态栏像素高度 */
|
|
export const STATUS_BAR_HEIGHT = 32 * MAP_BLOCK_HEIGHT;
|
|
/** 右侧状态栏的横坐标 */
|
|
export const RIGHT_STATUS_POS = STATUS_BAR_WIDTH + MAP_WIDTH;
|
|
/** 是否启用右侧状态栏 */
|
|
export const ENABLE_RIGHT_STATUS_BAR = false;
|
|
/** 状态栏数量,启用右侧状态栏为两个,不启用为一个 */
|
|
export const STATUS_BAR_COUNT = ENABLE_RIGHT_STATUS_BAR ? 2 : 1;
|
|
/** 状态栏宽度的一半 */
|
|
export const HALF_STATUS_WIDTH = STATUS_BAR_WIDTH / 2;
|
|
|
|
//#endregion
|
|
|
|
//#region 游戏画面
|
|
|
|
/** 游戏画面像素宽度,宽=地图宽度+状态栏宽度*状态栏数量 */
|
|
export const MAIN_WIDTH = MAP_WIDTH + STATUS_BAR_WIDTH * STATUS_BAR_COUNT;
|
|
/** 游戏画面像素高度 */
|
|
export const MAIN_HEIGHT = MAP_HEIGHT;
|
|
/** 游戏画面宽度的一半 */
|
|
export const HALF_WIDTH = MAIN_WIDTH / 2;
|
|
/** 游戏画面高度的一半 */
|
|
export const HALF_HEIGHT = MAIN_HEIGHT / 2;
|
|
/** 全屏显示的 loc */
|
|
export const FULL_LOC: ElementLocator = [0, 0, MAIN_WIDTH, MAIN_HEIGHT];
|
|
/** 居中显示的 loc */
|
|
export const CENTER_LOC: ElementLocator = [
|
|
HALF_WIDTH,
|
|
HALF_HEIGHT,
|
|
void 0,
|
|
void 0,
|
|
0.5,
|
|
0.5
|
|
];
|
|
|
|
//#endregion
|
|
|
|
//#region 通用配置
|
|
|
|
/** 弹框的宽度,使用在内置 UI 与组件中,包括确认框、选择框、等待框等 */
|
|
export const POP_BOX_WIDTH = MAP_WIDTH / 2;
|
|
/** 默认字体 */
|
|
export const DEFAULT_FONT = new Font('Verdana', 16);
|
|
|
|
//#endregion
|