bug fix
This commit is contained in:
@@ -157,7 +157,7 @@
|
||||
<td class='key-used'>ArrowUp</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>CROUCH </th>
|
||||
<th>CROUCH</th>
|
||||
<td id='key-down' class='key-input'>S</td>
|
||||
<td class='key-used'>ArrowDown</td>
|
||||
</tr>
|
||||
|
||||
@@ -1159,7 +1159,7 @@ const b = {
|
||||
World.add(engine.world, bullet[me]); //add bullet to world
|
||||
bullet[me].endCycle = game.cycle + 60 + 18 * Math.random();
|
||||
bullet[me].dmg = dmg
|
||||
bullet[me].beforeDmg = function (who) {
|
||||
bullet[me].beforeDmg = function (who) { //beforeDmg is rewritten with ice crystal mod
|
||||
if (mod.isNailPoison) mobs.statusDoT(who, dmg * 0.22, 120) // one tick every 30 cycles
|
||||
if (mod.isNailCrit && !who.shield && Vector.dot(Vector.normalise(Vector.sub(who.position, this.position)), Vector.normalise(this.velocity)) > 0.99) this.dmg *= 5 //crit if hit near center
|
||||
};
|
||||
@@ -1852,6 +1852,7 @@ const b = {
|
||||
bullet[bullet.length - 1].beforeDmg = function (who) {
|
||||
mobs.statusSlow(who, 30)
|
||||
if (mod.isNailPoison) mobs.statusDoT(who, dmg * 0.22, 120) // one tick every 30 cycles
|
||||
if (mod.isNailCrit && !who.shield && Vector.dot(Vector.normalise(Vector.sub(who.position, this.position)), Vector.normalise(this.velocity)) > 0.99) this.dmg *= 5 //crit if hit near center
|
||||
};
|
||||
mech.energy -= mech.fieldRegen + 0.008
|
||||
if (mech.energy < 0.02) mech.fireCDcycle = mech.cycle + 60; // cool down
|
||||
|
||||
80
js/mods.js
80
js/mods.js
@@ -791,7 +791,7 @@ const mod = {
|
||||
},
|
||||
{
|
||||
name: "squirrel-cage rotor",
|
||||
description: "<strong>jump</strong> higher and <strong>move</strong> faster",
|
||||
description: "<strong>move</strong> and <strong>jump</strong> about <strong>25%</strong> faster",
|
||||
maxCount: 9,
|
||||
count: 0,
|
||||
allowed() {
|
||||
@@ -1208,7 +1208,7 @@ const mod = {
|
||||
},
|
||||
{
|
||||
name: "Bayesian statistics",
|
||||
description: "<strong>18%</strong> chance to <strong>duplicate</strong> spawned <strong>power ups</strong><br>after a <strong>collision</strong>, <strong>eject</strong> one of your <strong class='color-m'>mods</strong>",
|
||||
description: "<strong>16%</strong> chance to <strong>duplicate</strong> spawned <strong>power ups</strong><br>after a <strong>collision</strong>, <strong>eject</strong> one of your <strong class='color-m'>mods</strong>",
|
||||
maxCount: 1,
|
||||
count: 0,
|
||||
allowed() {
|
||||
@@ -1217,13 +1217,13 @@ const mod = {
|
||||
requires: "",
|
||||
effect: () => {
|
||||
mod.isBayesian = true
|
||||
mod.duplicateChance += 0.18
|
||||
mod.duplicateChance += 0.16
|
||||
game.draw.powerUp = game.draw.powerUpBonus //change power up draw
|
||||
|
||||
},
|
||||
remove() {
|
||||
if (mod.isBayesian) {
|
||||
mod.duplicateChance -= 0.18
|
||||
mod.duplicateChance -= 0.16
|
||||
if (mod.duplicateChance < 0) mod.duplicateChance = 0
|
||||
}
|
||||
mod.isBayesian = false
|
||||
@@ -1596,6 +1596,39 @@ const mod = {
|
||||
mod.isDamageFromBulletCount = false
|
||||
}
|
||||
},
|
||||
{
|
||||
name: "ice crystal nucleation",
|
||||
description: "the <strong>nail gun</strong> uses <strong class='color-f'>energy</strong> to condense<br>unlimited <strong class='color-s'>freezing</strong> <strong>ice shards</strong>",
|
||||
maxCount: 1,
|
||||
count: 0,
|
||||
allowed() {
|
||||
return mod.haveGunCheck("nail gun") && !mod.nailInstantFireRate
|
||||
},
|
||||
requires: "nail gun",
|
||||
effect() {
|
||||
mod.isIceCrystals = true;
|
||||
for (i = 0, len = b.guns.length; i < len; i++) { //find which gun
|
||||
if (b.guns[i].name === "nail gun") {
|
||||
b.guns[i].ammoPack = Infinity
|
||||
b.guns[i].recordedAmmo = b.guns[i].ammo
|
||||
b.guns[i].ammo = Infinity
|
||||
game.updateGunHUD();
|
||||
break;
|
||||
}
|
||||
}
|
||||
},
|
||||
remove() {
|
||||
mod.isIceCrystals = false;
|
||||
for (i = 0, len = b.guns.length; i < len; i++) { //find which gun
|
||||
if (b.guns[i].name === "nail gun") {
|
||||
b.guns[i].ammoPack = b.guns[i].defaultAmmoPack;
|
||||
b.guns[i].ammo = b.guns[i].recordedAmmo
|
||||
game.updateGunHUD();
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
name: "critical bifurcation",
|
||||
description: "<strong>nails</strong> do <strong>400%</strong> more <strong class='color-d'>damage</strong><br>when they strike near the <strong>center</strong> of a mob",
|
||||
@@ -1644,39 +1677,6 @@ const mod = {
|
||||
mod.nailInstantFireRate = false
|
||||
}
|
||||
},
|
||||
{
|
||||
name: "ice crystal nucleation",
|
||||
description: "the <strong>nail gun</strong> uses <strong class='color-f'>energy</strong> to condense<br>unlimited <strong class='color-s'>freezing</strong> <strong>ice shards</strong>",
|
||||
maxCount: 1,
|
||||
count: 0,
|
||||
allowed() {
|
||||
return mod.haveGunCheck("nail gun") && !mod.nailInstantFireRate
|
||||
},
|
||||
requires: "nail gun",
|
||||
effect() {
|
||||
mod.isIceCrystals = true;
|
||||
for (i = 0, len = b.guns.length; i < len; i++) { //find which gun
|
||||
if (b.guns[i].name === "nail gun") {
|
||||
b.guns[i].ammoPack = Infinity
|
||||
b.guns[i].recordedAmmo = b.guns[i].ammo
|
||||
b.guns[i].ammo = Infinity
|
||||
game.updateGunHUD();
|
||||
break;
|
||||
}
|
||||
}
|
||||
},
|
||||
remove() {
|
||||
mod.isIceCrystals = false;
|
||||
for (i = 0, len = b.guns.length; i < len; i++) { //find which gun
|
||||
if (b.guns[i].name === "nail gun") {
|
||||
b.guns[i].ammoPack = b.guns[i].defaultAmmoPack;
|
||||
b.guns[i].ammo = b.guns[i].recordedAmmo
|
||||
game.updateGunHUD();
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
name: "shotgun spin-statistics",
|
||||
description: "<strong>immune</strong> to <strong class='color-harm'>harm</strong> while firing the <strong>shotgun</strong><br><strong class='color-g'>ammo</strong> costs are <strong>doubled</strong>",
|
||||
@@ -2570,7 +2570,7 @@ const mod = {
|
||||
},
|
||||
{
|
||||
name: "Lorentz transformation",
|
||||
description: "permanently increase your relative time rate<br><strong>move</strong>, <strong>jump</strong>, and <strong>shoot</strong> <strong>33%</strong> faster",
|
||||
description: "permanently increase your relative time rate<br><strong>move</strong>, <strong>jump</strong>, and <strong>shoot</strong> <strong>40%</strong> faster",
|
||||
maxCount: 1,
|
||||
count: 0,
|
||||
allowed() {
|
||||
@@ -2578,8 +2578,8 @@ const mod = {
|
||||
},
|
||||
requires: "time dilation field",
|
||||
effect() {
|
||||
mod.fastTime = 1.33;
|
||||
mod.fastTimeJump = 1.09;
|
||||
mod.fastTime = 1.40;
|
||||
mod.fastTimeJump = 1.11;
|
||||
mech.setMovement();
|
||||
b.setFireCD();
|
||||
},
|
||||
|
||||
@@ -1728,7 +1728,7 @@ const mech = {
|
||||
mech.grabPowerUp();
|
||||
mech.lookForPickUp(180);
|
||||
|
||||
const DRAIN = 0.0008
|
||||
const DRAIN = 0.0007
|
||||
if (mech.energy > DRAIN) {
|
||||
mech.energy -= DRAIN;
|
||||
if (mech.energy < DRAIN) {
|
||||
@@ -2413,7 +2413,7 @@ const mech = {
|
||||
x: velocity.x,
|
||||
y: velocity.y - 4 //an extra vertical kick so the player hangs in place longer
|
||||
});
|
||||
mech.immuneCycle = mech.cycle + 15; //player is immune to collision damage for 30 cycles
|
||||
mech.immuneCycle = mech.cycle + 15; //player is immune to collision damage
|
||||
// move bots to follow player
|
||||
for (let i = 0; i < bullet.length; i++) {
|
||||
if (bullet[i].botType) {
|
||||
|
||||
29
todo.txt
29
todo.txt
@@ -1,16 +1,20 @@
|
||||
|
||||
mod: critical bifurcation - nail gun does 400% more damage if it hits very close to the center of a mob
|
||||
mod: supercritical fission - flechettes explode if they hit very close to the center of a mob
|
||||
|
||||
mod: transdimensional spores - after wormholes eat blocks, they disturb spores
|
||||
mod: traversable geodesics - your bullets can go through worm holes
|
||||
|
||||
scrap bots now only last only 30 seconds, but they have a 20% chance to spawn from a kill (was 11%)
|
||||
the difficulty should feel a bit harder after clearing the boss level
|
||||
(a bit more more damage taken, and fewer mod drops)
|
||||
|
||||
************** TODO - n-gon **************
|
||||
|
||||
foam bullet on dmg shrink effect
|
||||
it might mess with the foam position of other bullets on the mob
|
||||
shrink when foam bullets end while attached, or shrink on collision?
|
||||
|
||||
effect - shrink or grow things
|
||||
|
||||
time dilation mod rework / buff (time dilation is cool, but it can feel like a chore)
|
||||
redistribute effects
|
||||
take no damage
|
||||
can fire
|
||||
2x move jump fire while field is active
|
||||
33% move jump fire always
|
||||
|
||||
mod - after a mob or shield dies, remaining dots look for a new nearby host
|
||||
|
||||
add an ending to the game
|
||||
@@ -28,13 +32,6 @@ mod self destruct - drones explode when they die, but they last 1/2 as long
|
||||
|
||||
mouse event e.which is deprecated
|
||||
|
||||
time dilation mod rework (time dilation is cool, but it can feel like a chore)
|
||||
redistribute effects
|
||||
take no damage
|
||||
can fire
|
||||
2x move jump fire while field is active
|
||||
33% move jump fire always
|
||||
|
||||
vacuum bomb applies status effect to mobs that makes blocks attracted to them
|
||||
|
||||
mod: take less harm if you are moving fast
|
||||
|
||||
Reference in New Issue
Block a user