Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // server.js (motion types)
- case 'decelfast':
- this.maxSpeed = this.topSpeed;
- this.damp = 0.2;
- break;
- case 'colorthingy3':
- this.color = 24;
- this.SIZE += 1.5;
- if (this.SIZE >= 40) {
- this.SIZE = 40;
- }
- this.maxSpeed = this.topSpeed;
- break;
- case 'epicness':
- this.maxSpeed = this.topSpeed;
- this.color = 27;
- break;
- // server.js (controllers)
- class io_rlyfastspin extends IO {
- constructor(b) {
- super(b);
- this.a = 360 * Math.random();
- }
- think(input) {
- this.a += 0.55;
- let offset = 0;
- if (this.body.bond != null) {
- offset = 0;
- }
- return {
- target: {
- x: Math.cos(this.a + offset),
- y: Math.sin(this.a + offset),
- },
- main: true,
- };
- }
- }
- class io_rlyfastspin2 extends IO {
- constructor(b) {
- super(b);
- this.a = 360 * Math.random();
- this.b = 31 * (Math.sin(Math.PI * Math.round(-1 + Math.random()) + Math.PI / 2));
- }
- think(input) {
- this.a += this.b * Math.PI / 180;
- let offset = 0;
- if (this.body.bond != null) {
- offset = 0;
- }
- return {
- target: {
- x: Math.cos(this.a + offset),
- y: Math.sin(this.a + offset),
- },
- main: true,
- };
- }
- }
- // definitions.js
- exports.arrowhead = {
- LABEL: 'Arrowhead',
- TYPE: 'bullet',
- HAS_NO_RECOIL: true,
- //SHAPE: 1779,
- SHAPE: 'm -0.83560792,-0.16484729 -0.14934489,0.08164876 0.14934489,0.08164877 V -5.16764e-4 L -0.98495281,0.08113253 -0.83560792,0.16278128 0.98546956,-0.001033 Z',
- ACCEPTS_SCORE: false,
- BODY: {
- PENETRATION: 1,
- SPEED: 3.75,
- RANGE: 90,
- DENSITY: 1.25,
- HEALTH: 0.33 * wepHealthFactor,
- DAMAGE: 4 * wepDamageFactor,
- PUSHABILITY: 0.3,
- },
- FACING_TYPE: 'smoothWithMotion',
- CAN_GO_OUTSIDE_ROOM: true,
- HITS_OWN_TYPE: 'never',
- // DIE_AT_LOW_SPEED: true,
- DIE_AT_RANGE: true,
- };
- let burstBulletGuns = blob => {
- return [{
- POSITION: [0, 10.5, 1.2, 7, 0, blob, 1e99],
- PROPERTIES: {
- SHOOT_SETTINGS: combineStats([
- [40, 0, 0.001, 1, 0.5, 0.75, 0.3, 4, 1, 3, 1, 0.00001, 1]
- ]),
- TYPE: [exports.bullet, {
- PERSISTS_AFTER_DEATH: true,
- MOTION_TYPE: 'epicness',
- }],
- SHOOT_ON_DEATH: true,
- STAT_CALCULATOR: gunCalcNames.swarm,
- AUTOFIRE: true
- }
- }];
- };
- let burstBulletGuns2 = blob => {
- return [{
- POSITION: [0, 10.5, 1.2, 7, 0, blob, 1e99],
- PROPERTIES: {
- SHOOT_SETTINGS: combineStats([
- [40, 0, 0.001, 0.5, 0.5, 0.75, 0.3, 7, 1, 3, 1, 0.00001, 1]
- ]),
- TYPE: [exports.bullet, {
- PERSISTS_AFTER_DEATH: true,
- MOTION_TYPE: 'epicness',
- }],
- SHOOT_ON_DEATH: true,
- STAT_CALCULATOR: gunCalcNames.swarm,
- AUTOFIRE: true
- }
- }];
- };
- var div = 3;
- //fuck the eu 3.5
- /* RELOAD RECOIL SHUDDER SIZE HEALTH DAMAGE PEN SPEED MAX RANGE DENSITY SPRAY RESIST
- blank: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 10],*/
- let burstBulletGuns3 = blob => {
- return [{
- POSITION: [0, 10.5, 1.2, 7, 0, blob, 1e99],
- PROPERTIES: {
- SHOOT_SETTINGS: combineStats([
- [40, 0, 0.001, 2, 0.5, 2, 0.3, 15, 1, 3, 1, 0.00001, 1]
- ]),
- TYPE: [exports.arrowhead, {
- PERSISTS_AFTER_DEATH: true,
- MOTION_TYPE: 'epicness',
- }],
- SHOOT_ON_DEATH: true,
- STAT_CALCULATOR: gunCalcNames.swarm,
- AUTOFIRE: true
- }
- }];
- };
- /* RELOAD RECOIL SHUDDER SIZE HEALTH DAMAGE PEN SPEED MAX RANGE DENSITY SPRAY RESIST
- blank: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 10],*/
- let burstBulletGuns4 = blob => {
- return [{
- POSITION: [0, 10.5, 1.2, 7, 0, blob, 1e99],
- PROPERTIES: {
- SHOOT_SETTINGS: combineStats([
- [40, 0, 0.001, 0.5, 0.2, 0.2, 1.5, 10, 3, 2, 1, 0.00001, 1]
- ]),
- TYPE: [exports.bullet, {
- PERSISTS_AFTER_DEATH: true,
- MOTION_TYPE: 'epicness',
- }],
- SHOOT_ON_DEATH: true,
- STAT_CALCULATOR: gunCalcNames.swarm,
- AUTOFIRE: true
- }
- }];
- };
- exports.burstBullet = {
- PARENT: [exports.bullet],
- LABEL: 'Bursting Bullet',
- FACING_TYPE: 'toTarget',
- BODY: {
- RANGE: 90,
- SPEED: 0
- },
- CONTROLLERS: ['rlyfastspin'],
- MOTION_TYPE: 'decelfast',
- GUNS: [{
- /*** LENGTH WIDTH ASPECT X Y ANGLE DELAY */
- POSITION: [5, 5, 1, 10, 0, 0, 0, ],
- }, {
- /*** LENGTH WIDTH ASPECT X Y ANGLE DELAY */
- POSITION: [5, 10, 1, 15, 0, 0, 0, ],
- }, ],
- };
- var amount = 1;
- for (let i = 0; i < 360; i += 360 / 5) {
- exports.burstBullet.GUNS = exports.burstBullet.GUNS.concat(burstBulletGuns(i));
- }
- exports.copter = {
- PARENT: [exports.genericTank],
- LABEL: 'Copter blade',
- BODY: {
- RANGE: 90,
- SPEED: 0
- },
- GUNS: [{
- /*** LENGTH WIDTH ASPECT X Y ANGLE DELAY */
- POSITION: [5, 5, 1, 10, 0, 0, 0, ],
- }, {
- /*** LENGTH WIDTH ASPECT X Y ANGLE DELAY */
- POSITION: [5, 10, 1, 15, 0, 0, 0, ],
- }, {
- /*** LENGTH WIDTH ASPECT X Y ANGLE DELAY */
- POSITION: [5, 5, 1, 10, 0, 120, 0, ],
- }, {
- /*** LENGTH WIDTH ASPECT X Y ANGLE DELAY */
- POSITION: [5, 10, 1, 15, 0, 120, 0, ],
- }, {
- /*** LENGTH WIDTH ASPECT X Y ANGLE DELAY */
- POSITION: [5, 5, 1, 10, 0, -120, 0, ],
- }, {
- /*** LENGTH WIDTH ASPECT X Y ANGLE DELAY */
- POSITION: [5, 10, 1, 15, 0, -120, 0, ],
- }, ],
- };
- var bAmount = 0.5;
- exports.burstBullet2 = {
- PARENT: [exports.bullet],
- FACING_TYPE: 'toTarget',
- CONTROLLERS: ['rlyfastspin'],
- LABEL: 'Area Denial Bullet',
- BODY: {
- RANGE: 90,
- SPEED: 0
- },
- MOTION_TYPE: 'decelfast',
- GUNS: [{
- /*** LENGTH WIDTH ASPECT X Y ANGLE DELAY */
- POSITION: [5, 5, 1, 10, 0, 90, 0, ],
- }, {
- /*** LENGTH WIDTH ASPECT X Y ANGLE DELAY */
- POSITION: [5, 10, 1, 15, 0, 90, 0, ],
- }, {
- /*** LENGTH WIDTH ASPECT X Y ANGLE DELAY */
- POSITION: [5, 5, 1, 10, 0, 270, 0, ],
- }, {
- /*** LENGTH WIDTH ASPECT X Y ANGLE DELAY */
- POSITION: [5, 10, 1, 15, 0, 270, 0, ],
- }, ],
- TURRETS: [{
- POSITION: [10, 0, 0, 0, 360, 1, ],
- TYPE: [exports.copter, {
- COLOR: 16,
- CONTROLLERS: ['rlyfastspin'],
- }]
- }],
- };
- let eq = 4;
- for (let i = -eq; i < eq + 1; i++) {
- for (let j = 0; j < 360; j += 180) {
- exports.burstBullet2.GUNS = exports.burstBullet2.GUNS.concat(burstBulletGuns2(10 * i + j));
- }
- }
- exports.burstBullet3 = {
- PARENT: [exports.bullet],
- LABEL: 'Bursting Bullet',
- FACING_TYPE: 'toTarget',
- MOTION_TYPE: 'decelfast',
- CONTROLLERS: ['rlyfastspin'],
- BODY: {
- RANGE: 90,
- SPEED: 0
- },
- GUNS: [{
- /*** LENGTH WIDTH ASPECT X Y ANGLE DELAY */
- POSITION: [5, 5, 1, 10, 0, 0, 0, ],
- }, {
- /*** LENGTH WIDTH ASPECT X Y ANGLE DELAY */
- POSITION: [5, 10, 1, 15, 0, 0, 0, ],
- }, ],
- };
- let p = 1;
- for (let i = 0; i < 360; i += 360 / 20) {
- exports.burstBullet3.GUNS = exports.burstBullet3.GUNS.concat(burstBulletGuns3(i));
- }
- exports.burstBullet3n = {
- PARENT: [exports.bullet],
- LABEL: 'Bursting Bullet',
- FACING_TYPE: 'toTarget',
- MOTION_TYPE: 'decelfast',
- CONTROLLERS: ['rlyfastspin'],
- BODY: {
- RANGE: 90,
- SPEED: 0
- },
- GUNS: [{
- /*** LENGTH WIDTH ASPECT X Y ANGLE DELAY */
- POSITION: [5, 5, 1, 10, 0, 0, 0, ],
- }, {
- /*** LENGTH WIDTH ASPECT X Y ANGLE DELAY */
- POSITION: [5, 10, 1, 15, 0, 0, 0, ],
- }, ],
- };
- for (let i = 0; i < 360; i += 360 / 8) {
- exports.burstBullet3n.GUNS = exports.burstBullet3n.GUNS.concat(burstBulletGuns4(i));
- }
- let burstBulletGuns3rec = blob => {
- return [{
- POSITION: [0, 10.5, 1.2, 7, 0, blob, 1e99],
- PROPERTIES: {
- SHOOT_SETTINGS: combineStats([
- [20, 0, 0.1, 1.5, 1, 0.75, 1, 13.4, 0, 0.3, 1, 0.00001, 1]
- ]),
- TYPE: [exports.burstBullet3n, {
- PERSISTS_AFTER_DEATH: true,
- MOTION_TYPE: 'decelfast',
- }],
- SHOOT_ON_DEATH: true,
- STAT_CALCULATOR: gunCalcNames.swarm,
- AUTOFIRE: true
- }
- }];
- };
- /* RELOAD RECOIL SHUDDER SIZE HEALTH DAMAGE PEN SPEED MAX RANGE DENSITY SPRAY RESIST
- blank: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 10],*/
- let burstBulletGuns5 = (blob, blob2) => {
- return [{
- POSITION: [0, 1.5, 1.2, 7, 0, blob, 10],
- PROPERTIES: {
- SHOOT_SETTINGS: combineStats([
- [2, 0, 0.3, 0.1, 1, 5, 1, blob2, blob2, 0.2, 1, 0.0001, 1]
- ]),
- TYPE: [exports.bullet, {
- PERSISTS_AFTER_DEATH: true,
- MOTION_TYPE: 'colorthingy3',
- HAS_NO_RECOIL: true,
- }],
- SHOOT_ON_DEATH: true,
- STAT_CALCULATOR: gunCalcNames.swarm,
- AUTOFIRE: true
- }
- }];
- };
- exports.burstBullet4 = {
- PARENT: [exports.bullet],
- LABEL: 'Bursting Bullet',
- FACING_TYPE: 'toTarget',
- MOTION_TYPE: 'decelfast',
- CONTROLLERS: ['rlyfastspin'],
- BODY: {
- RANGE: 90,
- SPEED: 0
- },
- GUNS: [{
- /*** LENGTH WIDTH ASPECT X Y ANGLE DELAY */
- POSITION: [5, 5, 1, 10, 0, 0, 0, ],
- }, {
- /*** LENGTH WIDTH ASPECT X Y ANGLE DELAY */
- POSITION: [5, 10, 1, 15, 0, 0, 0, ],
- }, {
- /*** LENGTH WIDTH ASPECT X Y ANGLE DELAY */
- POSITION: [5, 5, 1, 10, 0, 180, 0, ],
- }, {
- /*** LENGTH WIDTH ASPECT X Y ANGLE DELAY */
- POSITION: [5, 10, 1, 15, 0, 180, 0, ],
- }, ],
- };
- for (let i = 0; i < 360; i += 360 / 14) {
- exports.burstBullet4.GUNS = exports.burstBullet4.GUNS.concat(burstBulletGuns3rec(i));
- }
- exports.burstAutoTurret = {
- PARENT: [exports.genericTank],
- LABEL: 'Turret',
- BODY: {
- FOV: 0.8
- },
- COLOR: 16,
- INDEPENDENT: true,
- CONTROLLERS: ['nearestDifferentMaster'],
- GUNS: [{
- /*** LENGTH WIDTH ASPECT X Y ANGLE DELAY */
- POSITION: [22, 10, 1, 0, 0, 0, 0, ],
- PROPERTIES: {
- SHOOT_SETTINGS: combineStats([g.basic, g.gunner, g.power, g.doublereload, g.morerecoil, g.turret]),
- TYPE: exports.bullet,
- },
- }, ],
- };
- exports.burstBullet5 = {
- PARENT: [exports.bullet],
- LABEL: 'Bursting Bullet',
- FACING_TYPE: 'toTarget',
- BODY: {
- RANGE: 90,
- SPEED: 0
- },
- CONTROLLERS: ['rlyfastspin'],
- MOTION_TYPE: 'decelfast',
- GUNS: [{
- /*** LENGTH WIDTH ASPECT X Y ANGLE DELAY */
- POSITION: [5, 5, 1, 10, 0, 0, 0, ],
- }, {
- /*** LENGTH WIDTH ASPECT X Y ANGLE DELAY */
- POSITION: [5, 10, 1, 15, 0, 0, 0, ],
- }, ],
- TURRETS: [{
- POSITION: [10, 0, 0, 0, 360, 1, ],
- TYPE: exports.burstAutoTurret,
- }],
- };
- var amount = 1;
- for (let i = 0; i < 360; i += 360 / 5) {
- for (let j = 0; j < 2; j++) {
- exports.burstBullet5.GUNS = exports.burstBullet5.GUNS.concat(burstBulletGuns(i));
- }
- }
- exports.burstBullet6 = {
- PARENT: [exports.bullet],
- LABEL: 'Bursting Bullet',
- FACING_TYPE: 'toTarget',
- BODY: {
- RANGE: 90,
- SPEED: 0
- },
- CONTROLLERS: ['rlyfastspin2'],
- MOTION_TYPE: 'decelfast',
- GUNS: [{
- /*** LENGTH WIDTH ASPECT X Y ANGLE DELAY */
- POSITION: [5, 5, 1, 10, 0, 0, 0, ],
- }, {
- /*** LENGTH WIDTH ASPECT X Y ANGLE DELAY */
- POSITION: [5, 10, 1, 15, 0, 0, 0, ],
- }, ],
- TURRETS: [{
- POSITION: [10, 0, 0, 0, 360, 1, ],
- TYPE: exports.genericTank,
- }],
- };
- var amount = 1;
- for (let i = 0; i < 360; i += 360 / 2) {
- for (let j = 0; j < 3; j++) {
- exports.burstBullet6.GUNS = exports.burstBullet6.GUNS.concat(burstBulletGuns5(i + 10 * j, 3 + j));
- }
- }
- exports.breaker = {
- PARENT: [exports.genericTank],
- LABEL: 'Breaker',
- DANGER: 7,
- BODY: {
- SPEED: base.SPEED * 0.8,
- FOV: 1.15
- },
- GUNS: [{
- POSITION: [18, 15, 1, 0, 0, 0, 0],
- PROPERTIES: {
- SHOOT_SETTINGS: combineStats([
- [10, 0, 0.3, 1, 1, 0.75, 1, 13.4, 0, 0.3, 1, 0.00001, 1]
- ]),
- TYPE: [exports.burstBullet, {
- CONTROLLERS: ['rlyfastspin'],
- }],
- }
- }, {
- POSITION: [15, 2, -8, 0, 0, 0, 0]
- }]
- };
- exports.firestarter = {
- PARENT: [exports.genericTank],
- LABEL: 'Firestarter',
- DANGER: 7,
- BODY: {
- SPEED: base.SPEED * 0.8,
- FOV: 1.15
- },
- GUNS: [{
- POSITION: [18, 15, 1, 0, 0, 0, 0],
- }, {
- POSITION: [5, 18, -0.9, 18, 0, 0, 0],
- PROPERTIES: {
- SHOOT_SETTINGS: combineStats([
- [50, 0, 0.1, 1, 1, 0.75, 1, 13.4, 0, 1, 1, 0.00001, 1]
- ]),
- TYPE: [exports.burstBullet6, {
- CONTROLLERS: ['rlyfastspin'],
- }],
- }
- }, {
- POSITION: [15, 2, -8, 0, 0, 0, 0]
- }]
- };
- exports.longlong = {
- PARENT: [exports.genericTank],
- LABEL: 'Longlong',
- DANGER: 7,
- BODY: {
- SPEED: base.SPEED * 0.8,
- FOV: 1.15
- },
- GUNS: [{
- POSITION: [18, 7.5, 1, 0, 5, 0, 0],
- PROPERTIES: {
- SHOOT_SETTINGS: combineStats([
- [10, 0, 0.3, 1, 1, 0.75, 1, 13.4, 0, 0.3, 1, 0.00001, 1]
- ]),
- TYPE: [exports.burstBullet, {
- CONTROLLERS: ['rlyfastspin'],
- }],
- }
- }, {
- POSITION: [12, 1, -3, 0, 5, 0, 0]
- }, {
- POSITION: [18, 7.5, 1, 0, -5, 0, 0.5],
- PROPERTIES: {
- SHOOT_SETTINGS: combineStats([
- [10, 0, 0.3, 1, 1, 0.75, 1, 13.4, 0, 0.3, 1, 0.00001, 1]
- ]),
- TYPE: [exports.burstBullet, {
- CONTROLLERS: ['rlyfastspin'],
- }],
- }
- }, {
- POSITION: [12, 1, -3, 0, -5, 0, 0]
- }]
- };
- exports.parentheses = {
- PARENT: [exports.genericTank],
- LABEL: 'Parentheses',
- DANGER: 7,
- BODY: {
- SPEED: base.SPEED * 0.8,
- FOV: 1.15
- },
- GUNS: [{
- POSITION: [18, 15, 1, 0, 0, 0, 0],
- PROPERTIES: {
- SHOOT_SETTINGS: combineStats([
- [20, 0, 0.3, 1, 1, 0.75, 1, 13.4, 0, 0.3, 1, 0.00001, 1]
- ]),
- TYPE: exports.burstBullet2
- }
- }, {
- POSITION: [22, 14, -0.3, 0, 0, 0, 0]
- }]
- };
- exports.thornbush = {
- PARENT: [exports.genericTank],
- LABEL: 'Thornbush',
- DANGER: 7,
- BODY: {
- SPEED: base.SPEED * 0.8,
- FOV: 1.15
- },
- GUNS: [{
- POSITION: [18, 15, 1, 0, 0, 0, 0],
- PROPERTIES: {
- SHOOT_SETTINGS: combineStats([
- [40, 0, 0.3, 1, 1, 0.75, 1, 13.4, 0, 0.3, 1, 0.00001, 1]
- ]),
- TYPE: exports.burstBullet3
- }
- }, {
- POSITION: [12, 1, -8, 2, -4, 0, 0]
- }, {
- POSITION: [12, 1, -8, 2, 4, 0, 0]
- }]
- };
- exports.packhunt = {
- PARENT: [exports.genericTank],
- LABEL: 'Packhunt',
- DANGER: 7,
- BODY: {
- SPEED: base.SPEED * 0.8,
- FOV: 1.15
- },
- GUNS: [{
- POSITION: [18, 15, 1, 0, 0, 0, 0],
- PROPERTIES: {
- SHOOT_SETTINGS: combineStats([
- [45, 0, 0.3, 1, 1, 0.75, 1, 13.4, 0, 0.3, 1, 0.00001, 1]
- ]),
- TYPE: exports.burstBullet4
- }
- }, {
- POSITION: [7.5, 1, -8, 5, -2.5, -20, 0]
- }, {
- POSITION: [8.5, 1.5, -8, 7, 0, 0, 0]
- }, {
- POSITION: [7.5, 1, -8, 5, 2.5, 20, 0]
- }]
- };
- exports.autobreak = {
- PARENT: [exports.genericTank],
- LABEL: 'Automatizer',
- DANGER: 7,
- BODY: {
- SPEED: base.SPEED * 0.8,
- FOV: 1.15
- },
- GUNS: [{
- POSITION: [18, 15, 1, 0, 0, 0, 0],
- PROPERTIES: {
- SHOOT_SETTINGS: combineStats([
- [15, 0, 0.3, 1, 1, 0.75, 1, 13.4, 0, 1, 1, 0.00001, 1]
- ]),
- TYPE: exports.burstBullet5
- }
- }, {
- POSITION: [15, 2, -8, 0, 0, 0, 0]
- }],
- TURRETS: [{
- /* SIZE X Y ANGLE ARC */
- POSITION: [11, 0, 0, 0, 190, 1],
- TYPE: exports.genericTank,
- }, ],
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement