From dcb7b2abaf3c97b5ddc46d91829699ce66fe6478 Mon Sep 17 00:00:00 2001 From: kts of kettek Date: Sun, 30 Jan 2022 09:16:41 -0800 Subject: [PATCH] Use origin again; add loop bool --- Engine/src/shared/sprites.ts | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/Engine/src/shared/sprites.ts b/Engine/src/shared/sprites.ts index 5fdd508..ea0e19b 100644 --- a/Engine/src/shared/sprites.ts +++ b/Engine/src/shared/sprites.ts @@ -22,6 +22,7 @@ export class SpriteInstance { frameIndex: number = 0 frameCount: number = 0 animate: boolean = true + loop: boolean = true elapsed: number = 0 constructor(ctor: string) { @@ -48,9 +49,18 @@ export class SpriteInstance { this.subset = this.set.children[subsetKey] // if (this.subset.frames) { + if (this.frameIndex >= this.subset.frames.length) { + this.frameIndex = 0 + } this.frameCount = this.subset.frames.length this.frame = this.subset.frames[this.frameIndex] let s = new PIXI.Sprite(this.frame.texture) + if (this.frame.originX) { + s.pivot.x = this.frame.originX + } + if (this.frame.originY) { + s.pivot.y = this.frame.originY + } this.container.addChild(s) } } @@ -62,6 +72,7 @@ export class SpriteInstance { this.elapsed -= this.frame.time this.frameIndex++ if (this.frameIndex >= this.frameCount) { + if (!this.loop) return this.frameIndex = 0 } this.setCtor(`${this.spriteKey}.${this.animationKey}.${this.setKey}.${this.subsetKey}.${this.frameIndex}`)