mirror of
https://github.com/asphyxia-core/plugins.git
synced 2026-03-22 09:54:43 -05:00
46 lines
1.2 KiB
TypeScript
46 lines
1.2 KiB
TypeScript
export interface PlayerStickerResponse {
|
|
id: KITEM<'s32'>,
|
|
pos_x: KITEM<'float'> ,
|
|
pos_y: KITEM<'float'>,
|
|
scale_x: KITEM<'float'> ,
|
|
scale_y: KITEM<'float'>,
|
|
rotate: KITEM<'float'>
|
|
}
|
|
|
|
export function getPlayerStickerResponse(playerCard : any[]) : PlayerStickerResponse[] {
|
|
let stickers : PlayerStickerResponse[] = []
|
|
if (!_.isArray(playerCard)) {
|
|
return stickers
|
|
}
|
|
|
|
for (const item of playerCard) {
|
|
const id = _.get(item, 'id');
|
|
const posX = _.get(item, 'position.0');
|
|
const posY = _.get(item, 'position.1');
|
|
const scaleX = _.get(item, 'scale.0');
|
|
const scaleY = _.get(item, 'scale.1');
|
|
const rotation = _.get(item, 'rotation');
|
|
|
|
if (
|
|
!isFinite(id) ||
|
|
!isFinite(posX) ||
|
|
!isFinite(posY) ||
|
|
!isFinite(scaleX) ||
|
|
!isFinite(scaleY) ||
|
|
!isFinite(rotation)
|
|
) {
|
|
continue;
|
|
}
|
|
|
|
stickers.push({
|
|
id: K.ITEM('s32', id),
|
|
pos_x: K.ITEM('float', posX),
|
|
pos_y: K.ITEM('float', posY),
|
|
scale_x: K.ITEM('float', scaleX),
|
|
scale_y: K.ITEM('float', scaleY),
|
|
rotate: K.ITEM('float', rotation),
|
|
});
|
|
}
|
|
|
|
return stickers
|
|
} |