avocado-old/packages/entity/list/view.js

33 lines
721 B
JavaScript
Raw Normal View History

2019-04-13 20:48:52 -05:00
import {Container, Sprite} from '@avocado/graphics';
export class EntityListView extends Container {
constructor(entityList) {
super();
this.entityList = entityList;
entityList.on('entityAdded', this.onListEntityAdded, this);
entityList.on('entityRemoved', this.onListEntityRemoved, this);
for (const entity of entityList) {
this.onListEntityAdded(entity);
}
}
onListEntityAdded(entity) {
2019-04-20 14:26:12 -05:00
entity.hydrate();
2019-04-14 18:42:13 -05:00
if (entity.is('visible')) {
2019-04-13 20:48:52 -05:00
this.addChild(entity.container);
}
}
onListEntityRemoved(entity) {
2019-04-14 18:42:13 -05:00
if (entity.is('visible')) {
2019-04-13 20:48:52 -05:00
this.removeChild(entity.container);
}
}
2019-04-23 16:56:47 -05:00
renderTick(elapsed) {
this.entityList.renderTick(elapsed);
}
2019-04-13 20:48:52 -05:00
}