From d1733a915390dfc0ce6c8c81929fe9fdd45cec99 Mon Sep 17 00:00:00 2001 From: landgreen Date: Sat, 14 Nov 2020 08:44:26 -0800 Subject: [PATCH] incendiary ammunition bug fix- spider boss moves at full speed again (watch out) bots that uses energy, stop when you hit 50% energy if you have mass-energy mod you get a warning before you overwrite your current gun due to integrated armament gun - flak is removed mod: incendiary ammunition - bullets explode shotgun, nail gun, drones, super balls --- js/bullet.js | 19 ++++++++++++++----- js/level.js | 7 ++++--- js/mods.js | 14 +++++++------- todo.txt | 12 ++++-------- 4 files changed, 29 insertions(+), 23 deletions(-) diff --git a/js/bullet.js b/js/bullet.js index b5ebfff..899e4f8 100644 --- a/js/bullet.js +++ b/js/bullet.js @@ -604,7 +604,6 @@ const b = { const that = this setTimeout(function() { if (Matter.Query.collides(that, map).length === 0 || Matter.Query.point(map, that.position).length > 0) { - // console.log(that) that.endCycle = 0 // if not touching map explode that.isArmed = false b.mine(that.position, that.velocity, that.angle) @@ -929,8 +928,9 @@ const b = { isImproved: false, beforeDmg(who) { if (mod.isIncendiary) { - b.explosion(this.position, 120 + (Math.random() - 0.5) * 60); //makes bullet do explosive damage at end - this.endCycle = 0 + const max = Math.min(this.endCycle - game.cycle, 1500) + b.explosion(this.position, max * 0.08 + this.isImproved * 100 + 60 * Math.random()); //makes bullet do explosive damage at end + this.endCycle -= max } else { //move away from target after hitting const unit = Vector.mult(Vector.normalise(Vector.sub(this.position, who.position)), -20) @@ -938,7 +938,6 @@ const b = { x: unit.x, y: unit.y }); - this.lockedOn = null if (this.endCycle > game.cycle + this.deathCycles) { this.endCycle -= 60 @@ -2072,10 +2071,14 @@ const b = { bullet[me].restitution = 1; bullet[me].friction = 0; bullet[me].do = function() { - this.force.y += this.mass * 0.001; + this.force.y += this.mass * 0.0012; }; bullet[me].beforeDmg = function(who) { mobs.statusStun(who, 180) // (2.3) * 2 / 14 ticks (2x damage over 7 seconds) + if (mod.isIncendiary) { + b.explosion(this.position, this.mass * 250); //makes bullet do explosive damage at end + this.endCycle = 0 + } }; } else { b.muzzleFlash(20); @@ -2097,6 +2100,12 @@ const b = { bullet[me].do = function() { this.force.y += this.mass * 0.001; }; + bullet[me].beforeDmg = function() { + if (mod.isIncendiary) { + b.explosion(this.position, this.mass * 330 + 40 * Math.random()); //makes bullet do explosive damage at end + this.endCycle = 0 + } + }; dir += SPREAD; } } diff --git a/js/level.js b/js/level.js index 69c359d..cd94566 100644 --- a/js/level.js +++ b/js/level.js @@ -17,12 +17,13 @@ const level = { // game.zoomScale = 1000; // game.setZoom(); // mech.setField("wormhole") - // b.giveGuns("drones") + // b.giveGuns("super balls") // mod.giveMod("incendiary ammunition") + // mod.giveMod("super ball") - // level.intro(); //starting level - level.testing(); //not in rotation + level.intro(); //starting level + // level.testing(); //not in rotation // level.finalBoss() //final boss level // level.gauntlet(); //before final boss level // level.testChamber() //less mobs, more puzzle diff --git a/js/mods.js b/js/mods.js index be9030a..b3f3801 100644 --- a/js/mods.js +++ b/js/mods.js @@ -1576,7 +1576,7 @@ const mod = { //************************************************** { name: "incendiary ammunition", - description: "your bullets explode after a short time
(nail gun, shotgun, super balls, drones)", + description: "bullets are loaded with explosives
nail gun, shotgun, super balls, drones", maxCount: 1, count: 0, allowed() { @@ -1592,7 +1592,7 @@ const mod = { }, { name: "Lorentzian topology", - description: "your bullets last 33% longer
drones, spores, super balls, foam, wave, ice IX, neutron", + description: "bullets last 33% longer
drones, spores, super balls, foam, wave, ice IX, neutron", maxCount: 3, count: 0, allowed() { @@ -1775,7 +1775,7 @@ const mod = { }, { name: "super duper", - description: "fire 2 additional super balls", + description: "fire 1 additional super ball", maxCount: 9, count: 0, allowed() { @@ -1783,7 +1783,7 @@ const mod = { }, requires: "super balls, but not the mod super ball", effect() { - mod.superBallNumber += 2 + mod.superBallNumber++ }, remove() { mod.superBallNumber = 4; @@ -1791,7 +1791,7 @@ const mod = { }, { name: "super ball", - description: "fire one large super ball
that stuns mobs for 3 second", + description: "fire just 1 large super ball
that stuns mobs for 3 second", maxCount: 1, count: 0, allowed() { @@ -1807,7 +1807,7 @@ const mod = { }, { name: "super sized", - description: `your super balls are 22% larger
increases mass and physical damage`, + description: `your super balls are 20% larger
increases mass and physical damage`, count: 0, maxCount: 9, allowed() { @@ -1815,7 +1815,7 @@ const mod = { }, requires: "super balls", effect() { - mod.bulletSize += 0.2 + mod.bulletSize += 0.15 }, remove() { mod.bulletSize = 1; diff --git a/todo.txt b/todo.txt index 27b237b..75e8faf 100644 --- a/todo.txt +++ b/todo.txt @@ -1,16 +1,12 @@ *********** NEXT PATCH *********** -bug - spider boss move at full speed again (watch out) -bots that uses energy stop when you hit 50% energy if you have mass-energy mod - +bug fix- spider boss moves at full speed again (watch out) +bots that uses energy, stop when you hit 50% energy if you have mass-energy mod you get a warning before you overwrite your current gun due to integrated armament gun - flak is removed -mod: High-explosive incendiary, or incendiary rounds - shotgun: several large explosions - nail gun: rapid fire explosions - drones: drones explode on impact - super balls: explode on contact +mod: incendiary ammunition - bullets explode + shotgun, nail gun, drones, super balls ************** BUGS **************