Partial fix, still missing functionality (like a lot)
This commit is contained in:
@ -10,6 +10,8 @@ import objectRepository from '../repositories/objectRepository'
|
||||
import spriteRepository from '../repositories/spriteRepository'
|
||||
import fs from 'fs'
|
||||
import logger from './logger'
|
||||
import zoneRepository from '../repositories/zoneRepository'
|
||||
import zoneManager from '../managers/zoneManager'
|
||||
|
||||
async function addHttpRoutes(app: Application) {
|
||||
app.get('/assets', async (req: Request, res: Response) => {
|
||||
@ -49,6 +51,44 @@ async function addHttpRoutes(app: Application) {
|
||||
res.json(assets)
|
||||
})
|
||||
|
||||
app.get('/assets/:zoneId', async (req: Request, res: Response) => {
|
||||
const zoneId = req.params.zoneId
|
||||
if(zoneId && parseInt(zoneId)) {
|
||||
const zone = await zoneRepository.getById(parseInt(zoneId))
|
||||
if(zone) {
|
||||
const assets = await zoneManager.getNeededAssets(zone);
|
||||
const sprites = await spriteRepository.getAll()
|
||||
const spritesArray: TAsset[] = [];
|
||||
sprites.forEach((sprite) => {
|
||||
sprite.spriteActions.forEach((spriteAction) => {
|
||||
spritesArray.push({
|
||||
key: sprite.id + '-' + spriteAction.action,
|
||||
url: '/assets/sprites/' + sprite.id + '/' + spriteAction.action + '.png',
|
||||
group: spriteAction.isAnimated ? 'sprite_animations' : 'sprites',
|
||||
frameWidth: spriteAction.frameWidth,
|
||||
frameHeight: spriteAction.frameHeight
|
||||
})
|
||||
})
|
||||
})
|
||||
|
||||
res.json([
|
||||
...spritesArray,
|
||||
...assets.tiles.map(x => { return {
|
||||
key: x,
|
||||
url: '/assets/tiles/' + x + '.png',
|
||||
group: 'tiles'
|
||||
}}),
|
||||
...assets.objects.map(x => { return {
|
||||
key: x,
|
||||
url: '/assets/objects/' + x + '.png',
|
||||
group: 'objects'
|
||||
}})
|
||||
]);
|
||||
// res.json( );
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
app.get('/assets/:type/:spriteId?/:file', (req: Request, res: Response) => {
|
||||
const assetType = req.params.type
|
||||
const spriteId = req.params.spriteId
|
||||
|
Reference in New Issue
Block a user