lr-core
Version:
Line Rider core library
41 lines (29 loc) • 874 B
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _v = require('../../v2');
var _v2 = _interopRequireDefault(_v);
var _SolidLine = require('./SolidLine.js');
var _SolidLine2 = _interopRequireDefault(_SolidLine);
var _LineTypes = require('./LineTypes.js');
var _LineTypes2 = _interopRequireDefault(_LineTypes);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const ACC = 0.1;
class AccLine extends _SolidLine2.default {
constructor(data) {
super(data);
this.c.acc = this.acc;
}
get type() {
return _LineTypes2.default.ACC;
}
get acc() {
return (0, _v2.default)(this.norm).rotCW().mul(ACC * (this.flipped ? -1 : 1));
}
doCollide(p, pos, prevPos) {
prevPos.add(this.c.acc);
return p.updateState({ pos, prevPos });
}
}
exports.default = AccLine;