diff --git a/js/bullets.js b/js/bullets.js index 3dd775d..e5043f1 100644 --- a/js/bullets.js +++ b/js/bullets.js @@ -64,10 +64,10 @@ const b = { b.isModMassEnergy = false; b.modLaserBotCount = 0; b.modNailBotCount = 0; - b.modCollisionImmuneCycles = 30; b.modBlockDmg = 0; b.isModPiezo = false; b.isModStomp = false; + b.modCollisionImmuneCycles = 30; mech.Fx = 0.015; mech.jumpForce = 0.38; mech.maxHealth = 1; @@ -152,7 +152,7 @@ const b = { maxCount: 3, count: 0, allowed() { - return true + return b.haveGunCheck("missiles") || b.haveGunCheck("flak") || b.haveGunCheck("grenades") || b.haveGunCheck("vacuum bomb") || b.haveGunCheck("pulse"); }, effect: () => { b.modExplosionRadius += 0.2; @@ -164,7 +164,7 @@ const b = { maxCount: 1, count: 0, allowed() { - return (b.modExplosionRadius > 1) ? true : false; + return (b.modExplosionRadius > 1) }, effect: () => { b.isModImmuneExplosion = true; @@ -300,21 +300,21 @@ const b = { mech.jumpForce = 0.38 * 1.1; } }, - // { - // name: "ground stomp", - // description: "hard landings release spores", - // maxCount: 1, - // count: 0, - // allowed() { - // return b.modSquirrelFx === 1.2 ? true : false; - // }, - // effect() { - // b.isModStomp = true - // } - // }, + { + name: "ground stomp", + description: "hard landings release spores", + maxCount: 1, + count: 0, + allowed() { + return b.modSquirrelFx === 1.2 + }, + effect() { + b.isModStomp = true + } + }, { name: "Pauli exclusion", - description: "unable to collide with enemies for +2 second
activates after being harmed from a collision", + description: `unable to collide with enemies for +120 seconds
activates after being harmed from a collision`, maxCount: 9, count: 0, allowed() { @@ -331,7 +331,7 @@ const b = { maxCount: 1, count: 0, allowed() { - return true + return b.modCollisionImmuneCycles > 120 || b.isModPiezo }, effect() { b.isModAnnihilation = true diff --git a/js/level.js b/js/level.js index c935286..096671c 100644 --- a/js/level.js +++ b/js/level.js @@ -16,10 +16,11 @@ const level = { // level.difficultyIncrease(15) // b.giveGuns("minigun") // mech.setField("phase decoherence field") - // b.giveMod("ground stomp"); + b.giveMod("squirrel-cage rotor"); + b.giveMod("ground stomp"); - level.intro(); //starting level - // level.testingMap(); + // level.intro(); //starting level + level.testingMap(); // level.bosses(); // level.satellite(); // level.skyscrapers(); @@ -50,7 +51,7 @@ const level = { // if (level.isBuildRun) num++ for (let i = 0; i < num; i++) { game.difficulty++ - game.dmgScale += 0.11; //damage done by mobs increases each level + game.dmgScale += 0.13; //damage done by mobs increases each level b.dmgScale *= 0.93; //damage done by player decreases each level game.accelScale *= 1.02 //mob acceleration increases each level game.lookFreqScale *= 0.98 //mob cycles between looks decreases each level @@ -61,7 +62,7 @@ const level = { difficultyDecrease(num = 1) { //used in easy mode for game.reset() for (let i = 0; i < num; i++) { game.difficulty-- - game.dmgScale -= 0.11; //damage done by mobs increases each level + game.dmgScale -= 0.13; //damage done by mobs increases each level if (game.dmgScale < 0.1) game.dmgScale = 0.1; b.dmgScale /= 0.93; //damage done by player decreases each level game.accelScale /= 1.02 //mob acceleration increases each level @@ -129,7 +130,7 @@ const level = { // spawn.bomberBoss(800, -450); // spawn.cellBoss(400, -750); - spawn.randomLevelBoss(400, -750) + // spawn.randomLevelBoss(400, -750) // spawn.laser(400, -550); // spawn.starter(1200, -1050); @@ -1180,8 +1181,8 @@ const level = { //building 2 spawn.mapRect(-4450, -600, 2300, 750); spawn.mapRect(-2225, -500, 175, 550); - spawn.mapRect(-2600, -975, 450, 50); - // spawn.boost(-2800, -600, 1150); + // spawn.mapRect(-2600, -975, 450, 50); + spawn.boost(-2800, -600, 1150); spawn.mapRect(-3450, -1325, 550, 50); spawn.mapRect(-3425, -2200, 525, 50); spawn.mapRect(-2600, -1700, 450, 50); diff --git a/js/player.js b/js/player.js index 6f3910e..ebef536 100644 --- a/js/player.js +++ b/js/player.js @@ -206,11 +206,14 @@ const mech = { mech.yOff = mech.yOffWhen.jump; mech.hardLandCD = mech.cycle + Math.min(momentum / 6 - 6, 40) + if (b.isModStompPauli) { + mech.collisionImmune = mech.cycle + b.modCollisionImmuneCycles; //player is immune to collision damage for 30 cycles + } if (b.isModStomp) { - // const len = Math.min(10, momentum * 0.03) - // for (let i = 0; i < 10; i++) { - // b.spore(player) //spawn drone - // } + const len = Math.min(20, (momentum - 110) * 0.07) + for (let i = 0; i < len; i++) { + b.spore(player) //spawn drone + } } else if (game.isBodyDamage && player.velocity.y > 26 && momentum > 165 * b.modSquirrelFx) { //falling damage let dmg = Math.sqrt(momentum - 165) * 0.01 dmg = Math.min(Math.max(dmg, 0.02), 0.20);