diff --git a/js/bullets.js b/js/bullets.js
index 9e2c552..94220e5 100644
--- a/js/bullets.js
+++ b/js/bullets.js
@@ -485,7 +485,7 @@ const b = {
},
effect: () => {
b.isModNoAmmo = true;
- for (let i = 0; i < 6; i++) { // spawn new mods
+ for (let i = 0; i < 6; i++) { //if you change the six also change it in Born rule
powerUps.spawn(mech.pos.x, mech.pos.y, "mod");
if (Math.random() < b.isModBayesian) powerUps.spawn(mech.pos.x, mech.pos.y, "mod");
}
@@ -516,7 +516,9 @@ const b = {
return (b.modCount > 6)
},
effect: () => {
- for (let i = 0; i < b.modCount; i++) { // spawn new mods
+ let count = b.modCount
+ if (b.isModNoAmmo) count - 6 //remove the 6 bonus mods when getting rid of leveraged investment
+ for (let i = 0; i < count; i++) { // spawn new mods
powerUps.spawn(mech.pos.x, mech.pos.y, "mod");
}
b.setModDefaults(); // remove all mods
@@ -1549,7 +1551,7 @@ const b = {
});
World.add(engine.world, bullet[me]); //add bullet to world
mech.fireCDcycle = mech.cycle + Math.floor((mech.crouch ? 8 : 4) * b.modFireRate); // cool down
- const SPEED = mech.crouch ? 5.2 : 4.5;
+ const SPEED = 8.5;
Matter.Body.setVelocity(bullet[me], {
x: SPEED * Math.cos(dir),
y: SPEED * Math.sin(dir)
@@ -1561,7 +1563,6 @@ const b = {
// bullet[me].direction = Vector.perp(bullet[me].velocity)
// }
- World.add(engine.world, bullet[me]); //add bullet to world
}
},
{
@@ -1662,7 +1663,8 @@ const b = {
}
}
}
- }, {
+ },
+ {
name: "flak",
description: "fire a cluster of short range projectiles
explodes on contact or after half a second",
ammo: 0,
@@ -1706,7 +1708,8 @@ const b = {
}
}
}
- }, {
+ },
+ {
name: "grenades", //7
description: "lob a single bouncy projectile
explodes on contact or after one second",
ammo: 0,
@@ -1735,7 +1738,8 @@ const b = {
this.force.y += this.mass * 0.0025;
};
}
- }, {
+ },
+ {
name: "vacuum bomb", //8
description: "fire a bomb that sucks before exploding
click left mouse again to detonate",
ammo: 0,
@@ -1841,7 +1845,8 @@ const b = {
}
}
}
- }, {
+ },
+ {
name: "mine", //9
description: "toss a proximity mine that sticks to walls
fires nails at enemies within range",
ammo: 0,
diff --git a/js/index.js b/js/index.js
index 5fbe33e..53d4925 100644
--- a/js/index.js
+++ b/js/index.js
@@ -2,6 +2,30 @@
/* TODO: *******************************************
*****************************************************
+mod - energy recharges fast when not moving
+
+lore - a mech gains self awareness
+ each mod/gun/field is a new tech
+ all the technology leads to the singularity
+ each game run is actually the mech simulating a possible escape
+ this is why the graphics are so bad, its just a simulation
+ final mod is "this is just a simulation"
+ you get immortality and Infinity damage
+ the next level is the final level
+ atmosphere levels that explore lore
+ give the user a rest, between combat
+ low combat more graphics
+ large rotating fan that the player has to move through
+ nonaggressive mobs one mob attacking the passive mobs
+ in the final level you see your self at the starting level, with the wires
+ you shoot your self to wake up?
+
+wave beam - needs a serious buff, its not fun, and it needs more damage
+ shorter range, higher dmg, faster wiggle
+mod: wave beam - speed up the wave beam and reduce the wave amplitude to improve targeting at range
+
+shotgun - even more short range effects
+
mod: flechettes - each burst fires an extra flechette
mod: flechettes - stick into mobs and do poison damage, like foam
@@ -14,9 +38,6 @@ mod: shield harmonics - large field radius
mod: shotgun - fire extra shot
but also increase spread?
-mod: wave beam - speed up the wave beam and reduce the wave amplitude to improve targeting at range
-
-
speed up movement
higher gravity, larger jump force
faster horizontal acceleration
@@ -34,8 +55,6 @@ key required to open the exit to some levels
css transition for pause menu
-mod: like Born rule, but for guns
-
field that pushes everything back, and can destroy smaller blocks
converts blocks into ammo power ups
@@ -87,14 +106,6 @@ gun: Spirit Bomb (singularity)
uses energy
hold above the player's head
-atmosphere levels
- large rotating fan that the player has to move through
- give the user a rest, between combat
- low combat
- nonaggressive mobs
- one mob attacking the passive mobs
- more graphics
-
Boss levels
sensor that locks you in after you enter the boss room
boss that eats other mobs and gains stats from them
diff --git a/js/level.js b/js/level.js
index e38ddc6..cf53d8c 100644
--- a/js/level.js
+++ b/js/level.js
@@ -14,7 +14,7 @@ const level = {
start() {
if (level.levelsCleared === 0) {
// level.difficultyIncrease(5)
- // b.giveGuns("laser")
+ b.giveGuns("wave beam")
// mech.setField("phase decoherence field")
// b.giveMod("mass-energy equivalence");
diff --git a/js/player.js b/js/player.js
index b84b4e8..3aa1300 100644
--- a/js/player.js
+++ b/js/player.js
@@ -330,9 +330,9 @@ const mech = {
//find what mods I don't have
let options = [];
for (let i = 0, len = b.mods.length; i < len; i++) {
- //can't get quantum immortality or multiverse
if (b.mods[i].name !== "quantum immortality" &&
b.mods[i].name !== "Born rule" &&
+ b.mods[i].name !== "leveraged investment" &&
b.mods[i].count < b.mods[i].maxCount) options.push(i);
}
//add a new mod
@@ -659,7 +659,7 @@ const mech = {
mech.fieldThreshold = Math.cos(mech.fieldArc * Math.PI)
},
setHoldDefaults() {
- mech.fieldMeter = mech.fieldEnergyMax;
+ if (mech.fieldMeter < mech.fieldEnergyMax) mech.fieldMeter = mech.fieldEnergyMax;
mech.fieldRegen = 0.001;
mech.fieldFire = false;
mech.fieldCDcycle = 0;