avocado-old/packages/entity/traits/positioned.js

23 lines
365 B
JavaScript
Raw Normal View History

2019-03-17 23:45:48 -05:00
import {compose} from '@avocado/core';
2019-03-21 23:13:46 -05:00
import {simpleStateVector, Trait} from '../trait';
2019-03-17 23:45:48 -05:00
const decorate = compose(
2019-03-21 23:13:46 -05:00
simpleStateVector('position', 'x', 'y', {
2019-03-18 20:05:00 -05:00
track: true,
}),
2019-03-17 23:45:48 -05:00
);
class PositionedBase extends Trait {
static defaultState() {
return {
x: 0,
y: 0,
};
}
}
export class Positioned extends decorate(PositionedBase) {}