Compare commits

..

1 Commits

Author SHA1 Message Date
AncTe
fe9c4f26ba
Merge 8fe12634b0 into 820dc5bf4c 2025-11-22 15:49:15 +00:00
3 changed files with 4 additions and 34 deletions

View File

@ -2,7 +2,6 @@ import {
degradeFace,
FaceDirection,
getFaceMovement,
HeroAnimateDirection,
IHeroState,
IHeroStateHooks,
IMapLayer,
@ -49,8 +48,6 @@ interface HeroRenderEntity {
animateFrame: number;
/** 移动的 `Promise`,移动完成时兑现,如果停止,则一直是兑现状态 */
promise: Promise<void>;
/** 勇士移动的动画方向 */
animateDirection: HeroAnimateDirection;
}
export class MapHeroRenderer implements IMapHeroRenderer {
@ -93,8 +90,7 @@ export class MapHeroRenderer implements IMapHeroRenderer {
animateInterval: 0,
lastAnimateTime: 0,
animateFrame: 0,
promise: Promise.resolve(),
animateDirection: HeroAnimateDirection.Forward
promise: Promise.resolve()
};
this.heroEntity = heroEntity;
this.entities.push(heroEntity);
@ -167,15 +163,7 @@ export class MapHeroRenderer implements IMapHeroRenderer {
}
const dt = time - v.lastAnimateTime;
if (dt > v.animateInterval) {
if (v.animateDirection === HeroAnimateDirection.Forward) {
v.animateFrame++;
} else {
v.animateFrame--;
if (v.animateFrame < 0) {
// 小于 0则加上帧数的整数倍就写个 10000 倍吧
v.animateFrame += v.block.texture.frames * 10000;
}
}
v.animateFrame++;
v.lastAnimateTime = time;
v.block.useSpecifiedFrame(v.animateFrame);
}
@ -363,8 +351,7 @@ export class MapHeroRenderer implements IMapHeroRenderer {
animateInterval: 0,
lastAnimateTime: 0,
animateFrame: 0,
promise: Promise.resolve(),
animateDirection: HeroAnimateDirection.Forward
promise: Promise.resolve()
};
this.entities.push(entity);
}
@ -422,10 +409,6 @@ export class MapHeroRenderer implements IMapHeroRenderer {
follower.block.setAlpha(alpha);
}
setHeroAnimateDirection(direction: HeroAnimateDirection): void {
this.heroEntity.animateDirection = direction;
}
destroy() {
this.controller.unload();
}

View File

@ -1,5 +1,5 @@
import { ITexture } from '@motajs/render-assets';
import { FaceDirection, HeroAnimateDirection } from '@user/data-state';
import { FaceDirection } from '@user/data-state';
export interface IMapHeroRenderer {
/**
@ -82,12 +82,6 @@ export interface IMapHeroRenderer {
*/
setFollowerAlpha(identifier: string, alpha: number): void;
/**
* 退使使
* @param direction
*/
setHeroAnimateDirection(direction: HeroAnimateDirection): void;
/**
*
*/

View File

@ -1,13 +1,6 @@
import { IHookBase, IHookable } from '@motajs/common';
import { FaceDirection } from '../common/types';
export const enum HeroAnimateDirection {
/** 正向播放动画 */
Forward,
/** 反向播放动画 */
Backward
}
export interface IHeroFollower {
/** 跟随者的图块数字 */
readonly num: number;