Advertisement
Pearls

Breaker Branch

Apr 18th, 2019
135
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // server.js (motion types)
  2. case 'decelfast':
  3.     this.maxSpeed = this.topSpeed;
  4.     this.damp = 0.2;
  5.     break;
  6. case 'colorthingy3':
  7.     this.color = 24;
  8.     this.SIZE += 1.5;
  9.     if (this.SIZE >= 40) {
  10.         this.SIZE = 40;
  11.     }
  12.     this.maxSpeed = this.topSpeed;
  13.     break;
  14. case 'epicness':
  15.     this.maxSpeed = this.topSpeed;
  16.     this.color = 27;
  17.     break;
  18.  
  19. // server.js (controllers)
  20. class io_rlyfastspin extends IO {
  21.   constructor(b) {
  22.     super(b);
  23.     this.a = 360 * Math.random();
  24.   }
  25.  
  26.   think(input) {
  27.     this.a += 0.55;
  28.     let offset = 0;
  29.     if (this.body.bond != null) {
  30.       offset = 0;
  31.     }
  32.     return {
  33.       target: {
  34.         x: Math.cos(this.a + offset),
  35.         y: Math.sin(this.a + offset),
  36.       },
  37.       main: true,
  38.     };
  39.   }
  40. }
  41. class io_rlyfastspin2 extends IO {
  42.   constructor(b) {
  43.     super(b);
  44.     this.a = 360 * Math.random();
  45.     this.b = 31 * (Math.sin(Math.PI * Math.round(-1 + Math.random()) + Math.PI / 2));
  46.   }
  47.  
  48.   think(input) {
  49.     this.a += this.b * Math.PI / 180;
  50.     let offset = 0;
  51.     if (this.body.bond != null) {
  52.       offset = 0;
  53.     }
  54.     return {
  55.       target: {
  56.         x: Math.cos(this.a + offset),
  57.         y: Math.sin(this.a + offset),
  58.       },
  59.       main: true,
  60.     };
  61.   }
  62. }
  63.  
  64. // definitions.js
  65. exports.arrowhead = {
  66.     LABEL: 'Arrowhead',
  67.     TYPE: 'bullet',
  68.   HAS_NO_RECOIL: true,
  69.   //SHAPE: 1779,
  70.   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',
  71.     ACCEPTS_SCORE: false,
  72.     BODY: {
  73.         PENETRATION: 1,
  74.         SPEED: 3.75,
  75.         RANGE: 90,
  76.         DENSITY: 1.25,
  77.         HEALTH: 0.33 * wepHealthFactor,
  78.         DAMAGE: 4 * wepDamageFactor,
  79.         PUSHABILITY: 0.3,
  80.     },
  81.     FACING_TYPE: 'smoothWithMotion',
  82.     CAN_GO_OUTSIDE_ROOM: true,
  83.     HITS_OWN_TYPE: 'never',
  84.     // DIE_AT_LOW_SPEED: true,
  85.     DIE_AT_RANGE: true,
  86. };
  87.  
  88. let burstBulletGuns = blob => {
  89.   return [{
  90.     POSITION: [0, 10.5, 1.2, 7, 0, blob, 1e99],
  91.     PROPERTIES: {
  92.       SHOOT_SETTINGS: combineStats([
  93.         [40, 0, 0.001, 1, 0.5, 0.75, 0.3, 4, 1, 3, 1, 0.00001, 1]
  94.       ]),
  95.       TYPE: [exports.bullet, {
  96.         PERSISTS_AFTER_DEATH: true,
  97.         MOTION_TYPE: 'epicness',
  98.       }],
  99.       SHOOT_ON_DEATH: true,
  100.       STAT_CALCULATOR: gunCalcNames.swarm,
  101.       AUTOFIRE: true
  102.     }
  103.   }];
  104. };
  105. let burstBulletGuns2 = blob => {
  106.   return [{
  107.     POSITION: [0, 10.5, 1.2, 7, 0, blob, 1e99],
  108.     PROPERTIES: {
  109.       SHOOT_SETTINGS: combineStats([
  110.         [40, 0, 0.001, 0.5, 0.5, 0.75, 0.3, 7, 1, 3, 1, 0.00001, 1]
  111.       ]),
  112.       TYPE: [exports.bullet, {
  113.         PERSISTS_AFTER_DEATH: true,
  114.         MOTION_TYPE: 'epicness',
  115.       }],
  116.       SHOOT_ON_DEATH: true,
  117.       STAT_CALCULATOR: gunCalcNames.swarm,
  118.       AUTOFIRE: true
  119.     }
  120.   }];
  121. };
  122. var div = 3;
  123. //fuck the eu 3.5
  124. /* RELOAD RECOIL SHUDDER  SIZE   HEALTH  DAMAGE   PEN    SPEED    MAX    RANGE  DENSITY  SPRAY   RESIST
  125. blank: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 10],*/
  126. let burstBulletGuns3 = blob => {
  127.   return [{
  128.     POSITION: [0, 10.5, 1.2, 7, 0, blob, 1e99],
  129.     PROPERTIES: {
  130.       SHOOT_SETTINGS: combineStats([
  131.         [40, 0, 0.001, 2, 0.5, 2, 0.3, 15, 1, 3, 1, 0.00001, 1]
  132.       ]),
  133.       TYPE: [exports.arrowhead, {
  134.         PERSISTS_AFTER_DEATH: true,
  135.         MOTION_TYPE: 'epicness',
  136.       }],
  137.       SHOOT_ON_DEATH: true,
  138.       STAT_CALCULATOR: gunCalcNames.swarm,
  139.       AUTOFIRE: true
  140.     }
  141.   }];
  142. };
  143. /* RELOAD RECOIL SHUDDER  SIZE   HEALTH  DAMAGE   PEN    SPEED    MAX    RANGE  DENSITY  SPRAY   RESIST
  144.     blank: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 10],*/
  145. let burstBulletGuns4 = blob => {
  146.   return [{
  147.     POSITION: [0, 10.5, 1.2, 7, 0, blob, 1e99],
  148.     PROPERTIES: {
  149.       SHOOT_SETTINGS: combineStats([
  150.         [40, 0, 0.001, 0.5, 0.2, 0.2, 1.5, 10, 3, 2, 1, 0.00001, 1]
  151.       ]),
  152.       TYPE: [exports.bullet, {
  153.         PERSISTS_AFTER_DEATH: true,
  154.         MOTION_TYPE: 'epicness',
  155.       }],
  156.       SHOOT_ON_DEATH: true,
  157.       STAT_CALCULATOR: gunCalcNames.swarm,
  158.       AUTOFIRE: true
  159.     }
  160.   }];
  161. };
  162.  
  163. exports.burstBullet = {
  164.   PARENT: [exports.bullet],
  165.   LABEL: 'Bursting Bullet',
  166.   FACING_TYPE: 'toTarget',
  167.   BODY: {
  168.     RANGE: 90,
  169.     SPEED: 0
  170.   },
  171.   CONTROLLERS: ['rlyfastspin'],
  172.   MOTION_TYPE: 'decelfast',
  173.   GUNS: [{
  174.     /*** LENGTH  WIDTH   ASPECT    X       Y     ANGLE   DELAY */
  175.     POSITION: [5, 5, 1, 10, 0, 0, 0, ],
  176.   }, {
  177.     /*** LENGTH  WIDTH   ASPECT    X       Y     ANGLE   DELAY */
  178.     POSITION: [5, 10, 1, 15, 0, 0, 0, ],
  179.   }, ],
  180. };
  181. var amount = 1;
  182. for (let i = 0; i < 360; i += 360 / 5) {
  183.   exports.burstBullet.GUNS = exports.burstBullet.GUNS.concat(burstBulletGuns(i));
  184. }
  185. exports.copter = {
  186.   PARENT: [exports.genericTank],
  187.   LABEL: 'Copter blade',
  188.   BODY: {
  189.     RANGE: 90,
  190.     SPEED: 0
  191.   },
  192.   GUNS: [{
  193.     /*** LENGTH  WIDTH   ASPECT    X       Y     ANGLE   DELAY */
  194.     POSITION: [5, 5, 1, 10, 0, 0, 0, ],
  195.   }, {
  196.     /*** LENGTH  WIDTH   ASPECT    X       Y     ANGLE   DELAY */
  197.     POSITION: [5, 10, 1, 15, 0, 0, 0, ],
  198.   }, {
  199.     /*** LENGTH  WIDTH   ASPECT    X       Y     ANGLE   DELAY */
  200.     POSITION: [5, 5, 1, 10, 0, 120, 0, ],
  201.   }, {
  202.     /*** LENGTH  WIDTH   ASPECT    X       Y     ANGLE   DELAY */
  203.     POSITION: [5, 10, 1, 15, 0, 120, 0, ],
  204.   }, {
  205.     /*** LENGTH  WIDTH   ASPECT    X       Y     ANGLE   DELAY */
  206.     POSITION: [5, 5, 1, 10, 0, -120, 0, ],
  207.   }, {
  208.     /*** LENGTH  WIDTH   ASPECT    X       Y     ANGLE   DELAY */
  209.     POSITION: [5, 10, 1, 15, 0, -120, 0, ],
  210.   }, ],
  211. };
  212. var bAmount = 0.5;
  213. exports.burstBullet2 = {
  214.   PARENT: [exports.bullet],
  215.   FACING_TYPE: 'toTarget',
  216.   CONTROLLERS: ['rlyfastspin'],
  217.   LABEL: 'Area Denial Bullet',
  218.   BODY: {
  219.     RANGE: 90,
  220.     SPEED: 0
  221.   },
  222.   MOTION_TYPE: 'decelfast',
  223.   GUNS: [{
  224.     /*** LENGTH  WIDTH   ASPECT    X       Y     ANGLE   DELAY */
  225.     POSITION: [5, 5, 1, 10, 0, 90, 0, ],
  226.   }, {
  227.     /*** LENGTH  WIDTH   ASPECT    X       Y     ANGLE   DELAY */
  228.     POSITION: [5, 10, 1, 15, 0, 90, 0, ],
  229.   }, {
  230.     /*** LENGTH  WIDTH   ASPECT    X       Y     ANGLE   DELAY */
  231.     POSITION: [5, 5, 1, 10, 0, 270, 0, ],
  232.   }, {
  233.     /*** LENGTH  WIDTH   ASPECT    X       Y     ANGLE   DELAY */
  234.     POSITION: [5, 10, 1, 15, 0, 270, 0, ],
  235.   }, ],
  236.   TURRETS: [{
  237.     POSITION: [10, 0, 0, 0, 360, 1, ],
  238.     TYPE: [exports.copter, {
  239.       COLOR: 16,
  240.       CONTROLLERS: ['rlyfastspin'],
  241.     }]
  242.   }],
  243. };
  244. let eq = 4;
  245. for (let i = -eq; i < eq + 1; i++) {
  246.   for (let j = 0; j < 360; j += 180) {
  247.     exports.burstBullet2.GUNS = exports.burstBullet2.GUNS.concat(burstBulletGuns2(10 * i + j));
  248.   }
  249. }
  250. exports.burstBullet3 = {
  251.   PARENT: [exports.bullet],
  252.   LABEL: 'Bursting Bullet',
  253.   FACING_TYPE: 'toTarget',
  254.   MOTION_TYPE: 'decelfast',
  255.   CONTROLLERS: ['rlyfastspin'],
  256.   BODY: {
  257.     RANGE: 90,
  258.     SPEED: 0
  259.   },
  260.   GUNS: [{
  261.     /*** LENGTH  WIDTH   ASPECT    X       Y     ANGLE   DELAY */
  262.     POSITION: [5, 5, 1, 10, 0, 0, 0, ],
  263.   }, {
  264.     /*** LENGTH  WIDTH   ASPECT    X       Y     ANGLE   DELAY */
  265.     POSITION: [5, 10, 1, 15, 0, 0, 0, ],
  266.   }, ],
  267. };
  268. let p = 1;
  269. for (let i = 0; i < 360; i += 360 / 20) {
  270.   exports.burstBullet3.GUNS = exports.burstBullet3.GUNS.concat(burstBulletGuns3(i));
  271. }
  272. exports.burstBullet3n = {
  273.   PARENT: [exports.bullet],
  274.   LABEL: 'Bursting Bullet',
  275.   FACING_TYPE: 'toTarget',
  276.   MOTION_TYPE: 'decelfast',
  277.   CONTROLLERS: ['rlyfastspin'],
  278.   BODY: {
  279.     RANGE: 90,
  280.     SPEED: 0
  281.   },
  282.   GUNS: [{
  283.     /*** LENGTH  WIDTH   ASPECT    X       Y     ANGLE   DELAY */
  284.     POSITION: [5, 5, 1, 10, 0, 0, 0, ],
  285.   }, {
  286.     /*** LENGTH  WIDTH   ASPECT    X       Y     ANGLE   DELAY */
  287.     POSITION: [5, 10, 1, 15, 0, 0, 0, ],
  288.   }, ],
  289. };
  290. for (let i = 0; i < 360; i += 360 / 8) {
  291.   exports.burstBullet3n.GUNS = exports.burstBullet3n.GUNS.concat(burstBulletGuns4(i));
  292. }
  293. let burstBulletGuns3rec = blob => {
  294.   return [{
  295.     POSITION: [0, 10.5, 1.2, 7, 0, blob, 1e99],
  296.     PROPERTIES: {
  297.       SHOOT_SETTINGS: combineStats([
  298.         [20, 0, 0.1, 1.5, 1, 0.75, 1, 13.4, 0, 0.3, 1, 0.00001, 1]
  299.       ]),
  300.       TYPE: [exports.burstBullet3n, {
  301.         PERSISTS_AFTER_DEATH: true,
  302.         MOTION_TYPE: 'decelfast',
  303.       }],
  304.       SHOOT_ON_DEATH: true,
  305.       STAT_CALCULATOR: gunCalcNames.swarm,
  306.       AUTOFIRE: true
  307.     }
  308.   }];
  309. };
  310. /* RELOAD RECOIL SHUDDER  SIZE   HEALTH  DAMAGE   PEN    SPEED    MAX    RANGE  DENSITY  SPRAY   RESIST
  311.     blank: [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 10],*/
  312. let burstBulletGuns5 = (blob, blob2) => {
  313.   return [{
  314.     POSITION: [0, 1.5, 1.2, 7, 0, blob, 10],
  315.     PROPERTIES: {
  316.       SHOOT_SETTINGS: combineStats([
  317.         [2, 0, 0.3, 0.1, 1, 5, 1, blob2, blob2, 0.2, 1, 0.0001, 1]
  318.       ]),
  319.       TYPE: [exports.bullet, {
  320.         PERSISTS_AFTER_DEATH: true,
  321.         MOTION_TYPE: 'colorthingy3',
  322.         HAS_NO_RECOIL: true,
  323.       }],
  324.       SHOOT_ON_DEATH: true,
  325.       STAT_CALCULATOR: gunCalcNames.swarm,
  326.       AUTOFIRE: true
  327.     }
  328.   }];
  329. };
  330. exports.burstBullet4 = {
  331.   PARENT: [exports.bullet],
  332.   LABEL: 'Bursting Bullet',
  333.   FACING_TYPE: 'toTarget',
  334.   MOTION_TYPE: 'decelfast',
  335.   CONTROLLERS: ['rlyfastspin'],
  336.   BODY: {
  337.     RANGE: 90,
  338.     SPEED: 0
  339.   },
  340.   GUNS: [{
  341.     /*** LENGTH  WIDTH   ASPECT    X       Y     ANGLE   DELAY */
  342.     POSITION: [5, 5, 1, 10, 0, 0, 0, ],
  343.   }, {
  344.     /*** LENGTH  WIDTH   ASPECT    X       Y     ANGLE   DELAY */
  345.     POSITION: [5, 10, 1, 15, 0, 0, 0, ],
  346.   }, {
  347.     /*** LENGTH  WIDTH   ASPECT    X       Y     ANGLE   DELAY */
  348.     POSITION: [5, 5, 1, 10, 0, 180, 0, ],
  349.   }, {
  350.     /*** LENGTH  WIDTH   ASPECT    X       Y     ANGLE   DELAY */
  351.     POSITION: [5, 10, 1, 15, 0, 180, 0, ],
  352.   }, ],
  353. };
  354. for (let i = 0; i < 360; i += 360 / 14) {
  355.   exports.burstBullet4.GUNS = exports.burstBullet4.GUNS.concat(burstBulletGuns3rec(i));
  356. }
  357. exports.burstAutoTurret = {
  358.   PARENT: [exports.genericTank],
  359.   LABEL: 'Turret',
  360.   BODY: {
  361.     FOV: 0.8
  362.   },
  363.   COLOR: 16,
  364.   INDEPENDENT: true,
  365.   CONTROLLERS: ['nearestDifferentMaster'],
  366.   GUNS: [{
  367.     /*** LENGTH  WIDTH   ASPECT    X       Y     ANGLE   DELAY */
  368.     POSITION: [22, 10, 1, 0, 0, 0, 0, ],
  369.     PROPERTIES: {
  370.       SHOOT_SETTINGS: combineStats([g.basic, g.gunner, g.power, g.doublereload, g.morerecoil, g.turret]),
  371.       TYPE: exports.bullet,
  372.     },
  373.   }, ],
  374. };
  375. exports.burstBullet5 = {
  376.   PARENT: [exports.bullet],
  377.   LABEL: 'Bursting Bullet',
  378.   FACING_TYPE: 'toTarget',
  379.   BODY: {
  380.     RANGE: 90,
  381.     SPEED: 0
  382.   },
  383.   CONTROLLERS: ['rlyfastspin'],
  384.   MOTION_TYPE: 'decelfast',
  385.   GUNS: [{
  386.     /*** LENGTH  WIDTH   ASPECT    X       Y     ANGLE   DELAY */
  387.     POSITION: [5, 5, 1, 10, 0, 0, 0, ],
  388.   }, {
  389.     /*** LENGTH  WIDTH   ASPECT    X       Y     ANGLE   DELAY */
  390.     POSITION: [5, 10, 1, 15, 0, 0, 0, ],
  391.   }, ],
  392.   TURRETS: [{
  393.     POSITION: [10, 0, 0, 0, 360, 1, ],
  394.     TYPE: exports.burstAutoTurret,
  395.   }],
  396. };
  397. var amount = 1;
  398. for (let i = 0; i < 360; i += 360 / 5) {
  399.   for (let j = 0; j < 2; j++) {
  400.     exports.burstBullet5.GUNS = exports.burstBullet5.GUNS.concat(burstBulletGuns(i));
  401.   }
  402. }
  403. exports.burstBullet6 = {
  404.   PARENT: [exports.bullet],
  405.   LABEL: 'Bursting Bullet',
  406.   FACING_TYPE: 'toTarget',
  407.   BODY: {
  408.     RANGE: 90,
  409.     SPEED: 0
  410.   },
  411.   CONTROLLERS: ['rlyfastspin2'],
  412.   MOTION_TYPE: 'decelfast',
  413.   GUNS: [{
  414.     /*** LENGTH  WIDTH   ASPECT    X       Y     ANGLE   DELAY */
  415.     POSITION: [5, 5, 1, 10, 0, 0, 0, ],
  416.   }, {
  417.     /*** LENGTH  WIDTH   ASPECT    X       Y     ANGLE   DELAY */
  418.     POSITION: [5, 10, 1, 15, 0, 0, 0, ],
  419.   }, ],
  420.   TURRETS: [{
  421.     POSITION: [10, 0, 0, 0, 360, 1, ],
  422.     TYPE: exports.genericTank,
  423.   }],
  424. };
  425. var amount = 1;
  426. for (let i = 0; i < 360; i += 360 / 2) {
  427.   for (let j = 0; j < 3; j++) {
  428.     exports.burstBullet6.GUNS = exports.burstBullet6.GUNS.concat(burstBulletGuns5(i + 10 * j, 3 + j));
  429.   }
  430. }
  431. exports.breaker = {
  432.   PARENT: [exports.genericTank],
  433.   LABEL: 'Breaker',
  434.   DANGER: 7,
  435.   BODY: {
  436.     SPEED: base.SPEED * 0.8,
  437.     FOV: 1.15
  438.   },
  439.   GUNS: [{
  440.     POSITION: [18, 15, 1, 0, 0, 0, 0],
  441.     PROPERTIES: {
  442.       SHOOT_SETTINGS: combineStats([
  443.         [10, 0, 0.3, 1, 1, 0.75, 1, 13.4, 0, 0.3, 1, 0.00001, 1]
  444.       ]),
  445.       TYPE: [exports.burstBullet, {
  446.         CONTROLLERS: ['rlyfastspin'],
  447.       }],
  448.     }
  449.   }, {
  450.     POSITION: [15, 2, -8, 0, 0, 0, 0]
  451.   }]
  452. };
  453. exports.firestarter = {
  454.   PARENT: [exports.genericTank],
  455.   LABEL: 'Firestarter',
  456.   DANGER: 7,
  457.   BODY: {
  458.     SPEED: base.SPEED * 0.8,
  459.     FOV: 1.15
  460.   },
  461.   GUNS: [{
  462.     POSITION: [18, 15, 1, 0, 0, 0, 0],
  463.   }, {
  464.     POSITION: [5, 18, -0.9, 18, 0, 0, 0],
  465.     PROPERTIES: {
  466.       SHOOT_SETTINGS: combineStats([
  467.         [50, 0, 0.1, 1, 1, 0.75, 1, 13.4, 0, 1, 1, 0.00001, 1]
  468.       ]),
  469.       TYPE: [exports.burstBullet6, {
  470.         CONTROLLERS: ['rlyfastspin'],
  471.       }],
  472.     }
  473.   }, {
  474.     POSITION: [15, 2, -8, 0, 0, 0, 0]
  475.   }]
  476. };
  477. exports.longlong = {
  478.   PARENT: [exports.genericTank],
  479.   LABEL: 'Longlong',
  480.   DANGER: 7,
  481.   BODY: {
  482.     SPEED: base.SPEED * 0.8,
  483.     FOV: 1.15
  484.   },
  485.   GUNS: [{
  486.     POSITION: [18, 7.5, 1, 0, 5, 0, 0],
  487.     PROPERTIES: {
  488.       SHOOT_SETTINGS: combineStats([
  489.         [10, 0, 0.3, 1, 1, 0.75, 1, 13.4, 0, 0.3, 1, 0.00001, 1]
  490.       ]),
  491.       TYPE: [exports.burstBullet, {
  492.         CONTROLLERS: ['rlyfastspin'],
  493.       }],
  494.     }
  495.   }, {
  496.     POSITION: [12, 1, -3, 0, 5, 0, 0]
  497.   }, {
  498.     POSITION: [18, 7.5, 1, 0, -5, 0, 0.5],
  499.     PROPERTIES: {
  500.       SHOOT_SETTINGS: combineStats([
  501.         [10, 0, 0.3, 1, 1, 0.75, 1, 13.4, 0, 0.3, 1, 0.00001, 1]
  502.       ]),
  503.       TYPE: [exports.burstBullet, {
  504.         CONTROLLERS: ['rlyfastspin'],
  505.       }],
  506.     }
  507.   }, {
  508.     POSITION: [12, 1, -3, 0, -5, 0, 0]
  509.   }]
  510. };
  511. exports.parentheses = {
  512.   PARENT: [exports.genericTank],
  513.   LABEL: 'Parentheses',
  514.   DANGER: 7,
  515.   BODY: {
  516.     SPEED: base.SPEED * 0.8,
  517.     FOV: 1.15
  518.   },
  519.   GUNS: [{
  520.     POSITION: [18, 15, 1, 0, 0, 0, 0],
  521.     PROPERTIES: {
  522.       SHOOT_SETTINGS: combineStats([
  523.         [20, 0, 0.3, 1, 1, 0.75, 1, 13.4, 0, 0.3, 1, 0.00001, 1]
  524.       ]),
  525.       TYPE: exports.burstBullet2
  526.     }
  527.   }, {
  528.     POSITION: [22, 14, -0.3, 0, 0, 0, 0]
  529.   }]
  530. };
  531. exports.thornbush = {
  532.   PARENT: [exports.genericTank],
  533.   LABEL: 'Thornbush',
  534.   DANGER: 7,
  535.   BODY: {
  536.     SPEED: base.SPEED * 0.8,
  537.     FOV: 1.15
  538.   },
  539.   GUNS: [{
  540.     POSITION: [18, 15, 1, 0, 0, 0, 0],
  541.     PROPERTIES: {
  542.       SHOOT_SETTINGS: combineStats([
  543.         [40, 0, 0.3, 1, 1, 0.75, 1, 13.4, 0, 0.3, 1, 0.00001, 1]
  544.       ]),
  545.       TYPE: exports.burstBullet3
  546.     }
  547.   }, {
  548.     POSITION: [12, 1, -8, 2, -4, 0, 0]
  549.   }, {
  550.     POSITION: [12, 1, -8, 2, 4, 0, 0]
  551.   }]
  552. };
  553. exports.packhunt = {
  554.   PARENT: [exports.genericTank],
  555.   LABEL: 'Packhunt',
  556.   DANGER: 7,
  557.   BODY: {
  558.     SPEED: base.SPEED * 0.8,
  559.     FOV: 1.15
  560.   },
  561.   GUNS: [{
  562.     POSITION: [18, 15, 1, 0, 0, 0, 0],
  563.     PROPERTIES: {
  564.       SHOOT_SETTINGS: combineStats([
  565.         [45, 0, 0.3, 1, 1, 0.75, 1, 13.4, 0, 0.3, 1, 0.00001, 1]
  566.       ]),
  567.       TYPE: exports.burstBullet4
  568.     }
  569.   }, {
  570.     POSITION: [7.5, 1, -8, 5, -2.5, -20, 0]
  571.   }, {
  572.     POSITION: [8.5, 1.5, -8, 7, 0, 0, 0]
  573.   }, {
  574.     POSITION: [7.5, 1, -8, 5, 2.5, 20, 0]
  575.   }]
  576. };
  577. exports.autobreak = {
  578.   PARENT: [exports.genericTank],
  579.   LABEL: 'Automatizer',
  580.   DANGER: 7,
  581.   BODY: {
  582.     SPEED: base.SPEED * 0.8,
  583.     FOV: 1.15
  584.   },
  585.   GUNS: [{
  586.     POSITION: [18, 15, 1, 0, 0, 0, 0],
  587.     PROPERTIES: {
  588.       SHOOT_SETTINGS: combineStats([
  589.         [15, 0, 0.3, 1, 1, 0.75, 1, 13.4, 0, 1, 1, 0.00001, 1]
  590.       ]),
  591.       TYPE: exports.burstBullet5
  592.     }
  593.   }, {
  594.     POSITION: [15, 2, -8, 0, 0, 0, 0]
  595.   }],
  596.   TURRETS: [{
  597.     /*  SIZE     X       Y     ANGLE    ARC */
  598.     POSITION: [11, 0, 0, 0, 190, 1],
  599.     TYPE: exports.genericTank,
  600.   }, ],
  601. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement