Added padding to character
This commit is contained in:
parent
bf58fc4944
commit
6e3c97d7d1
@ -29,14 +29,24 @@ async function generateAvatar(res: Response, options: AvatarOptions) {
|
|||||||
return res.status(404).json({ message: 'Body sprite file not found' })
|
return res.status(404).json({ message: 'Body sprite file not found' })
|
||||||
}
|
}
|
||||||
|
|
||||||
let avatar = sharp(bodySpritePath)
|
let avatar = sharp(bodySpritePath).extend({
|
||||||
|
top: 2,
|
||||||
|
bottom: 2,
|
||||||
|
background: { r: 0, g: 0, b: 0, alpha: 0 }
|
||||||
|
})
|
||||||
|
|
||||||
if (options.characterHairId) {
|
if (options.characterHairId) {
|
||||||
const characterHair = await CharacterHairRepository.getById(options.characterHairId)
|
const characterHair = await CharacterHairRepository.getById(options.characterHairId)
|
||||||
if (characterHair?.spriteId) {
|
if (characterHair?.spriteId) {
|
||||||
const hairSpritePath = getPublicPath('sprites', characterHair.spriteId, 'front.png')
|
const hairSpritePath = getPublicPath('sprites', characterHair.spriteId, 'front.png')
|
||||||
if (fs.existsSync(hairSpritePath)) {
|
if (fs.existsSync(hairSpritePath)) {
|
||||||
avatar = avatar.composite([{ input: hairSpritePath, gravity: 'north' }])
|
avatar = avatar.composite([{
|
||||||
|
input: hairSpritePath,
|
||||||
|
gravity: 'north',
|
||||||
|
// Top is originY in min
|
||||||
|
// top: Math.round(Number(characterHair.sprite!.spriteActions.find((action) => action.action === 'front')?.originY ?? 0)),
|
||||||
|
// left: 0
|
||||||
|
}])
|
||||||
} else {
|
} else {
|
||||||
console.error(`Hair sprite file not found: ${hairSpritePath}`)
|
console.error(`Hair sprite file not found: ${hairSpritePath}`)
|
||||||
}
|
}
|
||||||
|
@ -12,9 +12,16 @@ class CharacterHairRepository {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
async getById(id: number): Promise<CharacterHair | null> {
|
async getById(id: number) {
|
||||||
return prisma.characterHair.findUnique({
|
return prisma.characterHair.findUnique({
|
||||||
where: { id }
|
where: { id },
|
||||||
|
include: {
|
||||||
|
sprite: {
|
||||||
|
include: {
|
||||||
|
spriteActions: true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user