From ef50b985cbaae8a67cfaa5456aa5ecee42d24c42 Mon Sep 17 00:00:00 2001 From: unanmed <1319491857@qq.com> Date: Thu, 29 Aug 2024 02:18:41 +0800 Subject: [PATCH] =?UTF-8?q?type:=20=E6=B3=A8=E6=98=8E=E5=BC=83=E7=94=A8api?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/types/control.d.ts | 22 ++- src/types/enemy.d.ts | 81 ---------- src/types/event.d.ts | 1 + src/types/function.d.ts | 2 + src/types/loader.d.ts | 7 + src/types/map.d.ts | 21 ++- src/types/plugin.d.ts | 344 +--------------------------------------- src/types/ui.d.ts | 41 +++++ src/types/util.d.ts | 7 + 9 files changed, 100 insertions(+), 426 deletions(-) diff --git a/src/types/control.d.ts b/src/types/control.d.ts index 28ce760..f656d52 100644 --- a/src/types/control.d.ts +++ b/src/types/control.d.ts @@ -218,6 +218,7 @@ interface Control { readonly controlData: ControlData; /** + * @deprecated * 注册一个animationFrame * @param name 名称,可用来作为注销使用 * @param needPlaying 是否只在游戏运行时才执行(在标题界面不执行) @@ -230,6 +231,7 @@ interface Control { ): void; /** + * @deprecated * 注销一个animationFrame * @param name 要注销的函数名称 */ @@ -313,7 +315,7 @@ interface Control { /** * @deprecated 尽量不要使用!!如果需要无视地形使用代码来移动勇士,请使用 `eventMoveHero` - * 如果需要向前前进一格或撞击,请使用 `moveHero` + * 如果需要向前前进一格或撞击,再使用本函数 * 尝试前进一步,如果面前不可被踏入就会直接触发该点事件 * @example core.moveAction(core.doAction); // 尝试前进一步,然后继续事件处理 * @param callback 走一步后的回调函数 @@ -397,6 +399,7 @@ interface Control { ): void; /** + * @deprecated * 设置游戏系统画布的偏移量 * @param canvasId 字符串或数字,根据ts的说法应该只能填数字,但是浏览器会提高字符串的方式。 * 但是还是建议填数字,排列顺序一般是纵深从低到高排列 @@ -410,6 +413,7 @@ interface Control { ): void; /** + * @deprecated * 加减所有游戏系统画布的偏移 * @param x 增加的横坐标 * @param y 增加的纵坐标 @@ -471,11 +475,13 @@ interface Control { nearHero(x: number, y: number, n?: number): boolean; /** + * @deprecated * 立刻聚集所有的跟随者 */ gatherFollowers(): void; /** + * @deprecated * 更新跟随者坐标 */ updateFollowers(): void; @@ -942,6 +948,7 @@ interface Control { unregisterWeather(name: string): void; /** + * @deprecated * 更改画面色调,不计入存档。如需长期生效请使用core.events._action_setCurtain()函数 * @example core.setCurtain(); // 恢复画面色调,用时四分之三秒 * @param color 颜色数组,不填视为[0, 0, 0, 0] @@ -957,6 +964,7 @@ interface Control { ): void; /** + * @deprecated * 画面闪烁 * @example core.screenFlash([255, 0, 0, 1], 3); // 红屏一闪而过 * @param color 颜色数组 @@ -974,6 +982,7 @@ interface Control { ): void; /** + * @deprecated * 播放背景音乐,中途开播但不计入存档且只会持续到下次场景切换。如需长期生效请将背景音乐的文件名赋值给flags.__bgm__ * @example core.playBgm('bgm.mp3', 30); // 播放bgm.mp3,并跳过前半分钟 * @param bgm 背景音乐的文件名,支持全塔属性中映射前的中文名 @@ -982,26 +991,31 @@ interface Control { playBgm(bgm: BgmIds | NameMapIn, startTime?: number): void; /** + * @deprecated * 暂停背景音乐的播放 */ pauseBgm(): void; /** + * @deprecated * 恢复背景音乐的播放 */ resumeBgm(resumeTime?: number): void; /** + * @deprecated * 设置音乐图标的开启关闭状态 */ setMusicBtn(): void; /** + * @deprecated * 开启或关闭背景音乐的播放 */ triggerBgm(): void; /** + * @deprecated * 播放一个音效 * @param sound 音效名 * @param pitch 音调,同时会修改播放速度,100为原速 @@ -1015,18 +1029,21 @@ interface Control { ): number; /** + * @deprecated * 停止音频 * @param id 停止的音频标识符,不填则停止所有 */ stopSound(id?: number): void; /** + * @deprecated * 获得正在播放的所有音效的id列表 * @param name 要获得的音效名 */ getPlayingSounds(name?: SoundIds | NameMapIn): number[]; /** + * @deprecated * 检查bgm状态,没有播放的话就播放 */ checkBgm(): void; @@ -1067,6 +1084,7 @@ interface Control { setToolbarButton(useButton?: boolean): void; /** + * @deprecated * 注册一个resize函数 * @param name 名称,可供注销使用 * @param func 游戏画面发生变化时执行的函数 @@ -1074,11 +1092,13 @@ interface Control { registerResize(name: string, func: ResizeFunc): void; /** + * @deprecated * 注销一个resize函数 */ unregisterResize(name: string): void; /** + * @deprecated * 屏幕分辨率改变后执行的函数 */ resize(): void; diff --git a/src/types/enemy.d.ts b/src/types/enemy.d.ts index 799b0a2..094658f 100644 --- a/src/types/enemy.d.ts +++ b/src/types/enemy.d.ts @@ -128,87 +128,6 @@ interface EnemySpecialBase { special: number[]; } -interface EnemyInfoBase extends EnemySpecialBase { - /** - * 生命值 - */ - hp: number; - - /** - * 攻击力 - */ - atk: number; - - /** - * 防御力 - */ - def: number; - - /** - * 金币 - */ - money: number; - - /** - * 经验 - */ - exp: number; - - /** - * 加点量 - */ - point: number; -} - -interface EnemyInfo extends EnemyInfoBase { - /** - * 支援信息 - */ - guards: [x: number, y: number, id: EnemyIds]; -} - -interface DamageInfo { - /** - * 怪物生命值 - */ - mon_hp: number; - - /** - * 怪物攻击力 - */ - mon_atk: number; - - /** - * 怪物防御力 - */ - mon_def: number; - - /** - * 先攻伤害 - */ - init_damage: number; - - /** - * 怪物的每回合伤害 - */ - per_damage: number; - - /** - * 勇士的每回合伤害 - */ - hero_per_damage: number; - - /** - * 战斗的回合数 - */ - turn: number; - - /** - * 勇士损失的生命值 - */ - damage: number; -} - interface BookEnemyInfo extends Enemy, EnemyInfo { /** * 怪物的坐标列表 diff --git a/src/types/event.d.ts b/src/types/event.d.ts index 7263ff5..69577e0 100644 --- a/src/types/event.d.ts +++ b/src/types/event.d.ts @@ -714,6 +714,7 @@ interface Events extends EventData { eventMoveHero(steps: Step[], time?: number, callback?: () => void): void; /** + * @deprecated * 主角跳跃,跳跃勇士。ex和ey为目标点的坐标,可以为null表示原地跳跃。time为总跳跃时间。 * @example core.jumpHero(); // 主角原地跳跃半秒 * @param ex 跳跃后的横坐标 diff --git a/src/types/function.d.ts b/src/types/function.d.ts index 43548fa..9d07f86 100644 --- a/src/types/function.d.ts +++ b/src/types/function.d.ts @@ -1,5 +1,6 @@ interface ActionData { /** + * @deprecated * 当按键弹起时 * @param keyCode 按键的keyCode * @param altKey 当前是否按下了alt键 @@ -40,6 +41,7 @@ interface ControlData { moveDirectly(x: number, y: number, ignoreSteps?: number): boolean; /** + * @deprecated * 并行脚本 * @param time 距离游戏加载完毕经过的时间 */ diff --git a/src/types/loader.d.ts b/src/types/loader.d.ts index cd9f365..2d54393 100644 --- a/src/types/loader.d.ts +++ b/src/types/loader.d.ts @@ -3,6 +3,7 @@ */ interface Loader { /** + * @deprecated * 加载一系列图片 * @param dir 图片所在目录 * @param names 图片名称列表 @@ -17,6 +18,7 @@ interface Loader { ): void; /** + * @deprecated * 加载某一张图片 * @param dir 图片所在目录 * @param imgName 图片名称 @@ -29,6 +31,7 @@ interface Loader { ): void; /** + * @deprecated * 从zip中加载一系列图片 * @param url 图片所在目录 * @param names 图片名称列表 @@ -42,24 +45,28 @@ interface Loader { ): void; /** + * @deprecated * 加载一个音乐 * @param name 要加载的音乐的名称 */ loadOneMusic(name: BgmIds): void; /** + * @deprecated * 加载一个音效 * @param name 要加载的音效的名称 */ loadOneSound(name: SoundIds): void; /** + * @deprecated * 加载一个bgm * @param name 加载的bgm的id或名称 */ loadBgm(name: BgmIds | NameMapIn): void; /** + * @deprecated * 释放一个bgm的缓存 * @param name 要释放的bgm的id或名称 */ diff --git a/src/types/map.d.ts b/src/types/map.d.ts index 5f58f0d..a3d8fc7 100644 --- a/src/types/map.d.ts +++ b/src/types/map.d.ts @@ -570,6 +570,7 @@ interface Maps { compressMap(mapArr?: number[][], floorId?: FloorIds): number[][]; /** + * @deprecated * 设置图块的不透明度 * @param opacity 不透明度 * @param x 横坐标 @@ -584,6 +585,7 @@ interface Maps { ): void; /** + * @deprecated * 设置图块的滤镜 * @param filter 滤镜信息 * @param x 横坐标 @@ -793,6 +795,7 @@ interface Maps { automaticRoute(destX: number, destY: number): DiredLoc[]; /** + * @deprecated * 绘制一个图块 * @param block 要绘制的图块 * @param animate 绘制图块的第几帧 @@ -801,12 +804,14 @@ interface Maps { drawBlock(block?: Block, animate?: number, ctx?: CtxRefer): void; /** + * @deprecated * 生成groundPattern * @param floorId 楼层id */ generateGroundPattern(floorId?: FloorIds): void; /** + * @deprecated * 地图绘制 * @example core.drawMap(); // 绘制当前地图 * @param floorId 地图id,不填表示当前楼层 @@ -814,11 +819,13 @@ interface Maps { drawMap(floorId?: FloorIds): void; /** + * @deprecated * 重绘地图 */ redrawMap(): void; /** + * @deprecated * 绘制背景层(含贴图,其与背景层矩阵的绘制顺序可通过复写此函数来改变) * @example core.drawBg(); // 绘制当前地图的背景层 * @param floorId 地图id,不填视为当前地图 @@ -827,6 +834,7 @@ interface Maps { drawBg(floorId?: FloorIds, config?: Partial): void; /** + * @deprecated * 绘制事件层 * @example core.drawEvents(); // 绘制当前地图的事件层 * @param floorId 地图id,不填视为当前地图 @@ -840,6 +848,7 @@ interface Maps { ): void; /** + * @deprecated * 绘制前景层(含贴图,其与前景层矩阵的绘制顺序可通过复写此函数来改变) * @example core.drawFg(); // 绘制当前地图的前景层 * @param floorId 地图id,不填视为当前地图 @@ -848,6 +857,7 @@ interface Maps { drawFg(floorId?: FloorIds, config?: Partial): void; /** + * @deprecated * 绘制缩略图 * @example core.drawThumbnail(); // 绘制当前地图的缩略图 * @param floorId 地图id,不填视为当前地图 @@ -1266,6 +1276,7 @@ interface Maps { resetMap(floorId?: FloorIds | FloorIds[]): void; /** + * @deprecated * 移动图块 * @example core.moveBlock(0, 0, ['down']); // 令地图左上角的图块下移一格,用时半秒,再花半秒淡出 * @param x 起点的横坐标 @@ -1285,6 +1296,7 @@ interface Maps { ): void; /** + * @deprecated * 跳跃图块;从V2.7开始不再有音效 * @example core.jumpBlock(0, 0, 0, 0); // 令地图左上角的图块原地跳跃半秒,再花半秒淡出 * @param sx 起点的横坐标 @@ -1342,6 +1354,7 @@ interface Maps { drawBoxAnimate(): void; /** + * @deprecated * 播放动画,注意即使指定了主角的坐标也不会跟随主角移动,如有需要请使用core.drawHeroAnimate(name, callback)函数 * @example core.drawAnimate('attack', core.nextX(), core.nextY(), false, core.vibrate); // 在主角面前一格播放普攻动画,动画停止后视野左右抖动1秒 * @param name 动画文件名,不含后缀 @@ -1357,9 +1370,10 @@ interface Maps { y: number, alignWindow?: boolean, callback?: () => void - ): number; + ): void; /** + * @deprecated * 播放跟随勇士的动画 * @param name 动画名 * @param callback 动画停止后的回调函数 @@ -1368,7 +1382,7 @@ interface Maps { drawHeroAnimate( name: AnimationIds | NameMapIn, callback?: () => void - ): number; + ): void; /** * 获得当前正在播放的所有(指定)动画的id列表 @@ -1377,7 +1391,8 @@ interface Maps { getPlayingAnimates(name?: AnimationIds): number[]; /** - * 立刻停止一个动画播放 + * @deprecated + * 立刻停止一个动画播放(已失效) * @param id 播放动画的编号,即drawAnimate或drawHeroAnimate返回值,不填则停止所有的 * @param doCallback 是否执行该动画的回调函数 */ diff --git a/src/types/plugin.d.ts b/src/types/plugin.d.ts index 2370125..276fb70 100644 --- a/src/types/plugin.d.ts +++ b/src/types/plugin.d.ts @@ -1,11 +1,5 @@ // 这里包含所有插件导出的函数及变量声明,声明的函数会在类型标注中标注到core上 -type Ref = { - value: T; -}; - -type DragFn = (x: number, y: number, e: MouseEvent | TouchEvent) => void; - type CanParseCss = keyof { [P in keyof CSSStyleDeclaration as CSSStyleDeclaration[P] extends string ? P extends string @@ -14,341 +8,9 @@ type CanParseCss = keyof { : never]: CSSStyleDeclaration[P]; }; -interface PluginDeclaration - extends PluginUtils, - PluginUis, - PluginUse, - MiniMap, - PluginAchievement { - /** - * - */ - utils: GamePluginUtils; - loopMap: GamePluginLoopMap; - skillTree: GamePluginSkillTree; - study: GamePluginStudy; - hero: GamePluginHeroRealStatus; - replay: PluginReplay; - chase: PluginChase; - - skills: Record; - skillEffects: SkillEffects; - - /** - * 添加函数 例:添加弹出文字,像这个就可以使用core.addPop或core.plugin.addPop调用 - * @param px 弹出的横坐标 - * @param py 弹出的纵坐标 - * @param value 弹出的文字 - */ - addPop(px: number, py: number, value: string): void; - - /** 添加变量 例:所有的正在弹出的文字,像这个就可以使用core.plugin.pop获取 */ - pop: any[]; - - /** 状态栏信息,取反后刷新状态栏 */ - readonly statusBarStatus: Ref; - - /** - * 添加一个动画 - * @param fn 要添加的函数 - */ - addAnimate(fn: (time: number) => void); - - /** - * 移除一个动画 - * @param fn 要移除的函数 - */ - removeAnimate(fn: (time: number) => void); - - /** - * 判定一个值是否不是undefined或null - * @param value 要判断的值 - */ - has(value: T): value is NonNullable; - - applyFragWith( - canvas: HTMLCanvasElement, - length?: number, - time?: number - ): { - canvas: HTMLCanvasElement; - onEnd: Promise; - animation: import('mutate-animate').Animation; - }; -} - -interface GamePluginUtils { - /** - * 判定一个值是否不是undefined或null - * @param value 要判断的值 - */ - has(value: T): value is NonNullable; - - /** - * 滑动数组 - * @param arr 数组 - * @param delta 偏移量,正数表示向右滑动,负数表示向左滑动 - */ - slide(arr: T[], delta: number): T[]; - - /** - * 获取方向的反方向 - * @param dir 方向 - */ - backDir(dir: Dir): Dir; - - /** - * 最大化游戏缩放 - * @param n 最大缩放再少多少个缩放 - */ - maxGameScale(n?: number): void; -} - -interface GamePluginLoopMap { - checkLoopMap(): void; -} - -interface PluginUtils { - /** - * 判定一个值是否不是undefined或null - * @param value 要判断的值 - */ - has(value: T): value is NonNullable; - - /** - * 根据伤害大小获取颜色 - * @param damage 伤害大小 - */ - getDamageColor(damage: number): string; - - /** - * 解析css字符串为CSSStyleDeclaration对象 - * @param css 要解析的css字符串 - */ - parseCss(css: string): Partial>; - - /** - * 弹出一段提示 - * @param text 提示信息 - */ - tip( - type: 'warn' | 'info' | 'success' | 'error' | 'warning' | 'loading', - text: string - ): void; - - /** - * 开始一个追逐战 - * @param index 追逐战索引 - */ - startChase(index: number): Promise; -} - -interface PluginUis { - /** 是否正在进行章节显示 */ - readonly chapterShowed: Ref; - - /** 章节显示的内容 */ - readonly chapterContent: Ref; - - /** 是否展示标记的怪物 */ - readonly showMarkedEnemy: Ref; - - /** - * 打开技能查看界面 - */ - openSkill(): void; -} - -interface PluginUse { - /** 是否是移动设备 */ - readonly isMobile: boolean; - - /** - * 向一个元素添加拖拽事件 - * @param ele 目标元素 - * @param fn 推拽时触发的函数,传入x y和鼠标事件或点击事件 - * @param ondown 鼠标按下时执行的函数 - * @param global 是否全局拖拽,即拖拽后鼠标或手指离开元素后是否依然视为正在拖拽 - */ - useDrag( - ele: HTMLElement, - fn: DragFn, - ondown?: DragFn, - onUp?: (e: MouseEvent | TouchEvent) => void, - global?: boolean - ): void; - - /** - * 去除一个全局拖拽函数 - * @param fn 要去除的函数 - */ - cancelGlobalDrag(fn: DragFn): void; - - /** - * 当触发滚轮时执行函数 - * @param ele 目标元素 - * @param fn 当滚轮触发时执行的函数 - */ - useWheel( - ele: HTMLElement, - fn: (x: number, y: number, z: number, e: WheelEvent) => void - ): void; - - /** - * 当鼠标或手指松开时执行函数 - * @param ele 目标元素 - * @param fn 当鼠标或手指松开时执行的函数 - */ - useUp(ele: HTMLElement, fn: DragFn): void; -} - -interface GamePluginSkillTree { - /** - * 获取技能等级 - * @param skill 技能索引 - */ - getSkillLevel(skill: number): number; - - /** - * 根据索引获取技能 - * @param index 索引 - */ - getSkillFromIndex(index: number): Skill; - - /** - * 获取技能的消耗 - * @param skill 技能 - */ - getSkillConsume(skill: number): number; - - /** - * 升级技能 - * @param skill 技能索引 - */ - upgradeSkill(skill: number): boolean; - - /** - * 保存技能树等级 - */ - saveSkillTree(): number[]; - - /** - * 加载技能树等级 - * @param data 等级信息 - */ - loadSkillTree(data: number[]): void; -} - -interface MiniMap { - /** - * 切分区域 - */ - splitArea(): void; -} - -interface GamePluginStudy { - /** - * 学习一个怪物技能 - * @param enemy 被学习的怪物 - * @param num 技能的索引 - */ - studySkill(enemy: Enemy, num: number): void; -} - -interface GamePluginHeroRealStatus { - /** - * 获取勇士在某一点的属性 - * @param name 要获取的勇士属性 - * @param x 勇士所在横坐标 - * @param y 勇士所在纵坐标 - * @param floorId 勇士所在楼层 - */ - getHeroStatusOn(name: 'all', floorId?: FloorIds): HeroStatus; - getHeroStatusOn( - name: (keyof HeroStatus)[], - floorId?: FloorIds - ): Partial; - getHeroStatusOn( - name: K, - floorId?: FloorIds - ): HeroStatus[K]; - - /** - * 获取一定状态下的勇士在某一点的属性 - * @param status 勇士的状态 - * @param name 要获取的勇士属性 - * @param x 勇士所在横坐标 - * @param y 勇士所在纵坐标 - * @param floorId 勇士所在楼层 - */ - getHeroStatusOf( - status: Partial, - name: 'all', - floorId?: FloorIds - ): HeroStatus; - getHeroStatusOf( - status: Partial, - name: (keyof HeroStatus)[], - floorId?: FloorIds - ): Partial; - getHeroStatusOf( - status: Partial, - name: K, - floorId?: FloorIds - ): HeroStatus[K]; -} - -interface PluginAchievement { - /** - * 完成一个成就 - * @param type 成就类型 - * @param index 成就索引 - */ - completeAchievement(type: AchievementType, index: number): void; - - /** - * 是否完成了某个成就 - * @param type 成就类型 - * @param index 成就索引 - */ - hasCompletedAchievement(type: AchievementType, index: number): boolean; - - /** - * 获取当前成就点数 - */ - getNowPoint(): number; - - /** - * 检查所有到达过的楼层,用于成就的计算 - */ - checkVisitedFloor(): void; -} - -interface PluginReplay { - ready(): void; - readyClip(): number; - clip(...replace: string[]): void; -} - -interface PluginChase { - chaseInit1(): void; -} - -interface SkillEffects { - jumpIgnoreFloor: FloorIds[]; -} - -type Chapter = 'chapter1' | 'chapter2'; - -interface Skill { - index: number; - title: string; - desc: string[]; - consume: string; - front: LocArr[]; - loc: LocArr; - max: number; - effect: string[]; +interface PluginDeclaration { + init(): void; + _afterLoadResouce(): void; } type Forward = { diff --git a/src/types/ui.d.ts b/src/types/ui.d.ts index 03dd2d9..4b31dea 100644 --- a/src/types/ui.d.ts +++ b/src/types/ui.d.ts @@ -213,12 +213,14 @@ interface Ui { uidata: UiData; /** + * @deprecated * 根据画布名找到一个画布的context;支持系统画布和自定义画布。如果不存在画布返回null。 * 也可以传画布的context自身,则返回自己。 */ getContextByName(canvas: CtxRefer): CanvasRenderingContext2D | null; /** + * @deprecated * 清空某个画布图层 * name为画布名,可以是系统画布之一,也可以是任意自定义动态创建的画布名;还可以直接传画布的context本身。(下同) * 如果name也可以是'all',若为all则为清空所有系统画布。 @@ -232,6 +234,7 @@ interface Ui { ): void; /** + * @deprecated * 在某个画布上绘制一段文字 * @param text 要绘制的文本 * @param style 绘制的样式 @@ -249,6 +252,7 @@ interface Ui { ): void; /** + * @deprecated * 根据最大宽度自动缩小字体 * @param name 画布 * @param text 文字 @@ -263,6 +267,7 @@ interface Ui { ): void; /** + * @deprecated * 在某个画布上绘制一个描边文字 * @param text 要绘制的文本 * @param style 绘制的样式 @@ -283,6 +288,7 @@ interface Ui { ): void; /** + * @deprecated * 绘制一个矩形 * @param style 绘制的样式 * @param angle 旋转角度,弧度制 @@ -298,6 +304,7 @@ interface Ui { ): void; /** + * @deprecated * 绘制一个矩形的边框 * @param style 绘制的样式 * @param angle 旋转角度,单位弧度 @@ -314,6 +321,7 @@ interface Ui { ): void; /** + * @deprecated * 在某个canvas上绘制一个圆角矩形 */ fillRoundRect( @@ -328,6 +336,7 @@ interface Ui { ): void; /** + * @deprecated * 在某个canvas上绘制一个圆角矩形的边框 */ strokeRoundRect( @@ -343,6 +352,7 @@ interface Ui { ): void; /** + * @deprecated * 在某个canvas上绘制一个多边形 */ fillPolygon( @@ -352,6 +362,7 @@ interface Ui { ): void; /** + * @deprecated * 在某个canvas上绘制一个多边形的边框 */ strokePolygon( @@ -362,6 +373,7 @@ interface Ui { ): void; /** + * @deprecated * 在某个canvas上绘制一个椭圆 * @param a 横轴长度的一半 * @param b 纵轴长度的一半 @@ -378,6 +390,7 @@ interface Ui { ): void; /** + * @deprecated * 在某个canvas上绘制一个圆 */ fillCircle( @@ -389,6 +402,7 @@ interface Ui { ): void; /** + * @deprecated * 在某个canvas上绘制一个椭圆的边框 * @param a 横轴长度的一半 * @param b 纵轴长度的一半 @@ -406,6 +420,7 @@ interface Ui { ): void; /** + * @deprecated * 在某个canvas上绘制一个圆的边框 */ strokeCircle( @@ -418,6 +433,7 @@ interface Ui { ): void; /** + * @deprecated * 在某个canvas上绘制一个扇形 */ fillArc( @@ -431,6 +447,7 @@ interface Ui { ): void; /** + * @deprecated * 在某个canvas上绘制一段弧 */ strokeArc( @@ -445,6 +462,7 @@ interface Ui { ): void; /** + * @deprecated * 在某个canvas上绘制一条线 */ drawLine( @@ -458,6 +476,7 @@ interface Ui { ): void; /** + * @deprecated * 在某个canvas上绘制一个箭头 */ drawArrow( @@ -471,67 +490,80 @@ interface Ui { ): void; /** + * @deprecated * 设置某个canvas的文字字体 */ setFont(name: CtxRefer, font: string): void; /** + * @deprecated * 设置某个canvas的线宽度 */ setLineWidth(name: CtxRefer, lineWidth: number): void; /** + * @deprecated * 保存某个canvas状态 */ saveCanvas(name: CtxRefer): void; /** + * @deprecated * 回退某个canvas状态 */ loadCanvas(name: CtxRefer): void; /** + * @deprecated * 设置某个canvas的绘制不透明度 * @returns 之前画布的不透明度 */ setAlpha(name: CtxRefer, alpha: number): number; /** + * @deprecated * 设置画布元素的不透明度 */ setOpacity(name: CtxRefer, opacity: number): void; /** + * @deprecated * 设置某个canvas的滤镜 */ setFilter(name: CtxRefer, filter?: string): void; /** + * @deprecated * 设置某个canvas的填充样式 */ setFillStyle(name: CtxRefer, style: CanvasStyle): void; /** + * @deprecated * 设置某个canvas描边样式 */ setStrokeStyle(name: CtxRefer, style: CanvasStyle): void; /** + * @deprecated * 设置某个canvas的文字左右对齐方式 */ setTextAlign(name: CtxRefer, align: CanvasTextAlign): void; /** + * @deprecated * 设置某个canvas的文字上下对齐方式 */ setTextBaseline(name: CtxRefer, baseline: CanvasTextBaseline): void; /** + * @deprecated * 计算某段文字的宽度,注意该函数会设置画布的字体 */ calWidth(name: CtxRefer, text: string, font?: string): number; /** + * @deprecated * 字符串自动换行的分割 */ splitLines( @@ -542,12 +574,14 @@ interface Ui { ): string[]; /** + * @deprecated * 绘制图片 * @param dx 绘制的横坐标 * @param dy 绘制的纵坐标 */ drawImage(name: CtxRefer, image: ImageSource, dx: number, dy: number): void; /** + * @deprecated * 绘制图片 * @param dx 绘制的横坐标 * @param dy 绘制的纵坐标 @@ -563,6 +597,7 @@ interface Ui { dh: number ): void; /** + * @deprecated * 绘制图片 * @param sx 裁剪的横坐标 * @param sy 裁剪的纵坐标 @@ -756,6 +791,7 @@ interface Ui { getToolboxItems>(cls: T): ItemIdOf[]; /** + * @deprecated * 动态创建一个画布 * @param name 画布名称,如果已存在则会直接取用当前存在的 * @param x 横坐标 @@ -776,6 +812,7 @@ interface Ui { ): CanvasRenderingContext2D; /** + * @deprecated * 重新定位一个自定义画布 */ relocateCanvas( @@ -786,6 +823,7 @@ interface Ui { ): void; /** + * @deprecated * 设置一个自定义画布的旋转角度 */ rotateCanvas( @@ -796,6 +834,7 @@ interface Ui { ): void; /** + * @deprecated * 重新设置一个自定义画布的大小 * @param styleOnly 是否只修改style,而不修改元素上的长宽,如果是true,会出现模糊现象 * @param isTempCanvas 是否是临时画布,如果填true,会将临时画布修改为高清画布 @@ -809,11 +848,13 @@ interface Ui { ): void; /** + * @deprecated * 删除一个自定义画布 */ deleteCanvas(name: string | ((name: string) => boolean)): void; /** + * @deprecated * 清空所有的自定义画布 */ deleteAllCanvas(): void; diff --git a/src/types/util.d.ts b/src/types/util.d.ts index e1f2f73..cdd5297 100644 --- a/src/types/util.d.ts +++ b/src/types/util.d.ts @@ -68,6 +68,7 @@ interface Utils { decompress(value: string): any; /** + * @deprecated * 设置本地存储 * @param key 本地存储的名称 * @param value 本地存储的值,不填代表删除 @@ -75,6 +76,7 @@ interface Utils { setLocalStorage(key: string, value?: any): void; /** + * @deprecated * 获得本地存储 * @param key 获取的本地存储的名称 * @param defaultValue 当不存在的时候的默认值 @@ -82,6 +84,7 @@ interface Utils { getLocalStorage(key: string, defaultValue?: T): T; /** + * @deprecated * 移除本地存储 * @param key 要移除的本地存储的值 */ @@ -168,6 +171,7 @@ interface Utils { getGlobal(key: string, defaultValue?: T): T; /** + * @deprecated * 深拷贝一个对象(函数将原样返回) * @example core.clone(core.status.hero, (name, value) => (name == 'items' || typeof value == 'number'), false); // 深拷贝主角的属性和道具 * @param data 待拷贝对象 @@ -182,6 +186,7 @@ interface Utils { ): T; /** + * @deprecated * 深拷贝一个1D或2D的数组 * @param data 要拷贝的数据 */ @@ -294,6 +299,7 @@ interface Utils { decodeRoute(route: string): string[]; /** + * @deprecated * 判断一个值是否不为null,undefined和NaN * @example core.isset(0/0); // false,因为0/0等于NaN * @param v 待测值 @@ -334,6 +340,7 @@ interface Utils { getCookie(name: string): string; /** + * @deprecated * 填写非自绘状态栏 * @example * // 更新状态栏中的主角生命,使用加载画面的宣传色