From 3c6e67f77c4331d51a8e78c845dbebc724004b9b Mon Sep 17 00:00:00 2001 From: landgreen Date: Tue, 5 Nov 2019 06:53:07 -0800 Subject: [PATCH] mod drop balance --- js/bullets.js | 3 +++ js/game.js | 2 +- js/powerups.js | 6 ++---- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/js/bullets.js b/js/bullets.js index d829c03..7c843d2 100644 --- a/js/bullets.js +++ b/js/bullets.js @@ -4,6 +4,7 @@ const b = { dmgScale: null, //scales all gun damage from momentum, but not raw .dmg //this is reset in game.reset gravity: 0.0006, //most other bodies have gravity = 0.001 //variables use for gun mod upgrades + modCount: null, modFireRate: null, modExplosionRadius: null, modBulletSize: null, @@ -14,6 +15,7 @@ const b = { modIsImmortal: null, modSpores: null, setModDefaults() { + b.modCount = 0; b.modFireRate = 1; b.modExplosionRadius = 1; b.modBulletSize = 1; @@ -119,6 +121,7 @@ const b = { ], giveMod(i) { b.mods[i].effect(); //give specific mod + b.modCount++ b.mods[i].have = true game.updateModHUD(); }, diff --git a/js/game.js b/js/game.js index 9efffbd..90a2ed7 100644 --- a/js/game.js +++ b/js/game.js @@ -308,7 +308,7 @@ const game = { powerUps.spawn(game.mouseInGame.x, game.mouseInGame.y, "field"); powerUps.spawn(game.mouseInGame.x, game.mouseInGame.y, "heal"); powerUps.spawn(game.mouseInGame.x, game.mouseInGame.y, "heal"); - if (!powerUps.haveAllMods) powerUps.spawn(game.mouseInGame.x, game.mouseInGame.y, "mod"); + powerUps.spawn(game.mouseInGame.x, game.mouseInGame.y, "mod"); } if (keys[89]) { //add all mods with y for (let i = 0; i < b.mods.length; i++) { diff --git a/js/powerups.js b/js/powerups.js index 5212b12..f530424 100644 --- a/js/powerups.js +++ b/js/powerups.js @@ -76,7 +76,6 @@ const powerUps = { } } }, - haveAllMods: false, mod: { name: "mod", color: "#a8f", @@ -91,7 +90,6 @@ const powerUps = { } //give a random mod from the mods I don't have if (options.length > 0) { - if (options.length === 1) powerUps.haveAllMods = true let newMod = options[Math.floor(Math.random() * options.length)] b.giveMod(newMod) game.makeTextLog(`
 ${b.mods[newMod].name}

${b.mods[newMod].description}`, 1000); @@ -146,7 +144,7 @@ const powerUps = { powerUps.spawn(x, y, "gun"); return; } - if (Math.random() < 0.007 && !powerUps.haveAllMods) { + if (Math.random() < 0.0015 * (b.mods.length - b.modCount)) { powerUps.spawn(x, y, "mod"); return; } @@ -158,7 +156,7 @@ const powerUps = { spawnBossPowerUp(x, y) { //boss spawns field and gun mod upgrades if (mech.fieldMode === 0) { powerUps.spawn(x, y, "field") - } else if (Math.random() < 0.35 && !powerUps.haveAllMods) { + } else if (Math.random() < 0.047 * (b.mods.length - b.modCount)) { powerUps.spawn(x, y, "mod") } else if (Math.random() < 0.25) { powerUps.spawn(x, y, "field");