This commit is contained in:
Dennis Postma 2024-12-27 02:44:32 +01:00
parent 5d6cb478cd
commit 343c67a110
2 changed files with 12 additions and 23 deletions

View File

@ -37,7 +37,7 @@ export type AssetData = {
originX?: number
originY?: number
isAnimated?: boolean
frameCount?: number
frameRate?: number
frameWidth?: number
frameHeight?: number
frameRate?: number

View File

@ -6,8 +6,7 @@ import { getPublicPath } from '#application/storage'
import TileRepository from '#repositories/tileRepository'
import ZoneRepository from '#repositories/zoneRepository'
import SpriteRepository from '#repositories/spriteRepository'
import { AssetData } from '#application/types'
import { FilterValue } from '@mikro-orm/core'
import { AssetData, UUID } from '#application/types'
export class AssetsController extends BaseController {
/**
@ -20,12 +19,7 @@ export class AssetsController extends BaseController {
const tiles = await TileRepository.getAll()
for (const tile of tiles) {
assets.push({
key: tile.id,
data: '/assets/tiles/' + tile.getId() + '.png',
group: 'tiles',
updatedAt: tile.getUpdatedAt()
} as AssetData)
assets.push({ key: tile.getId(), data: '/assets/tiles/' + tile.getId() + '.png', group: 'tiles', updatedAt: tile.getUpdatedAt() } as AssetData)
}
return this.sendSuccess(res, assets)
@ -52,12 +46,7 @@ export class AssetsController extends BaseController {
const tiles = await TileRepository.getByZoneId(zoneId)
for (const tile of tiles) {
assets.push({
key: tile.getId(),
data: '/assets/tiles/' + tile.getId() + '.png',
group: 'tiles',
updatedAt: tile.getUpdatedAt()
} as AssetData)
assets.push({ key: tile.getId(), data: '/assets/tiles/' + tile.getId() + '.png', group: 'tiles', updatedAt: tile.getUpdatedAt() } as AssetData)
}
return this.sendSuccess(res, assets)
@ -69,7 +58,7 @@ export class AssetsController extends BaseController {
* @param res
*/
public async listSpriteActions(req: Request, res: Response) {
const spriteId = req.params.spriteId as FilterValue<`${string}-${string}-${string}-${string}-${string}`>
const spriteId = req.params.spriteId as UUID
if (!spriteId) {
return this.sendError(res, 'Invalid sprite ID', 400)
@ -82,16 +71,16 @@ export class AssetsController extends BaseController {
const assets: AssetData[] = sprite.spriteActions.getItems().map((spriteAction) => ({
key: sprite.id + '-' + spriteAction.action,
data: '/assets/sprites/' + sprite.id + '/' + spriteAction.action + '.png',
data: '/assets/sprites/' + sprite.getId() + '/' + spriteAction.getAction() + '.png',
group: spriteAction.isAnimated ? 'sprite_animations' : 'sprites',
updatedAt: sprite.updatedAt,
updatedAt: sprite.getUpdatedAt(),
originX: Number(spriteAction.originX.toString()),
originY: Number(spriteAction.originY.toString()),
isAnimated: spriteAction.isAnimated,
frameCount: JSON.parse(JSON.stringify(spriteAction.sprites)).length,
frameWidth: spriteAction.frameWidth,
frameHeight: spriteAction.frameHeight,
frameRate: spriteAction.frameRate
isAnimated: spriteAction.getIsAnimated(),
frameRate: spriteAction.getFrameRate(),
frameWidth: spriteAction.getFrameWidth(),
frameHeight: spriteAction.getFrameHeight(),
frameCount: JSON.parse(JSON.stringify(spriteAction.getSprites())).length
}))
return this.sendSuccess(res, assets)