wingbase/server/game/room/world/body/turret/fixture.js
2016-03-30 15:58:06 +01:00

46 lines
678 B
JavaScript

'use strict';
class Fixture {
constructor(mount, data) {
this.type = data.type;
this.id = data.id;
this.rof = data.rateOfFire;
this.state = 0;
this.projectiles = new Set();
this._angle = mount.traversal ? mount.traversal.cw : 0;
this.mount = mount;
}
destruct() {
this.projectiles.forEach(p => p.world.removeBody(p));
}
fire() {
}
packFull() {
return {
traversal: this.traversal,
angle: this.angle
}
}
packDelta() {
}
get angle() {
return this._angle;
}
set angle(angle) {
// TODO: Check if within traversal limit if on mount.
if (this.mount.type == 'fixed') return;
this._angle = angle;
}
}
module.exports = Fixture;