UNPKG

lr-core

Version:
41 lines (29 loc) 874 B
'use strict'; 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;