various bug fixes after making mods.js
This commit is contained in:
@@ -165,7 +165,7 @@ const b = {
|
|||||||
time: game.drawTime
|
time: game.drawTime
|
||||||
});
|
});
|
||||||
let dist, sub, knock;
|
let dist, sub, knock;
|
||||||
let dmg = mod.dmgScale * radius * 0.009;
|
let dmg = b.dmgScale * radius * 0.009;
|
||||||
|
|
||||||
const alertRange = 100 + radius * 2; //alert range
|
const alertRange = 100 + radius * 2; //alert range
|
||||||
//add alert to draw queue
|
//add alert to draw queue
|
||||||
|
|||||||
@@ -213,7 +213,7 @@ const build = {
|
|||||||
</g>
|
</g>
|
||||||
</svg>
|
</svg>
|
||||||
</div>
|
</div>
|
||||||
<div style="align-items: center; text-align:center; font-size: 1.00em; line-height: 220%;background-color:#c4ccd8;">
|
<div style="align-items: center; text-align:center; font-size: 1.00em; line-height: 220%;background-color:var(--build-bg-color);">
|
||||||
<div>starting level: <input id='starting-level' type="number" step="1" value="0" min="0" max="99"></div>
|
<div>starting level: <input id='starting-level' type="number" step="1" value="0" min="0" max="99"></div>
|
||||||
<label for="difficulty-select" title="effects: number of mobs, damage done by mobs, damage done to mobs, mob speed, heal effects">difficulty:</label>
|
<label for="difficulty-select" title="effects: number of mobs, damage done by mobs, damage done to mobs, mob speed, heal effects">difficulty:</label>
|
||||||
<select name="difficulty-select" id="difficulty-select-custom">
|
<select name="difficulty-select" id="difficulty-select-custom">
|
||||||
|
|||||||
@@ -183,12 +183,12 @@ const level = {
|
|||||||
spawn.boost(1500, 0, 900);
|
spawn.boost(1500, 0, 900);
|
||||||
|
|
||||||
// spawn.bomberBoss(2900, -500)
|
// spawn.bomberBoss(2900, -500)
|
||||||
// spawn.shooterBoss(1200, -500)
|
// spawn.launcherBoss(1200, -500)
|
||||||
// spawn.starter(2500, -40, 40)
|
spawn.launcher(1600, -400)
|
||||||
// spawn.stabber(1600, -500)
|
// spawn.stabber(1600, -500)
|
||||||
// spawn.cellBossCulture(1600, -500)
|
// spawn.cellBossCulture(1600, -500)
|
||||||
// spawn.shooter(1600, -500)
|
// spawn.shooter(1600, -500)
|
||||||
spawn.striker(1600, -500)
|
// spawn.striker(1600, -500)
|
||||||
// spawn.shield(mob[mob.length - 1], 1200, -500, 1);
|
// spawn.shield(mob[mob.length - 1], 1200, -500, 1);
|
||||||
|
|
||||||
// spawn.nodeBoss(1200, -500, "spiker")
|
// spawn.nodeBoss(1200, -500, "spiker")
|
||||||
|
|||||||
37
js/spawn.js
37
js/spawn.js
@@ -1465,6 +1465,43 @@ const spawn = {
|
|||||||
this.launch();
|
this.launch();
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
|
launcherBoss(x, y, radius = 100) {
|
||||||
|
mobs.spawn(x, y, 3, radius, "rgb(175,125,255)");
|
||||||
|
let me = mob[mob.length - 1];
|
||||||
|
me.vertices = Matter.Vertices.rotate(me.vertices, Math.PI, me.position); //make the pointy side of triangle the front
|
||||||
|
me.isVerticesChange = true
|
||||||
|
me.memory = 240;
|
||||||
|
me.homePosition = {
|
||||||
|
x: x,
|
||||||
|
y: y
|
||||||
|
};
|
||||||
|
me.fireFreq = 0.015;
|
||||||
|
me.noseLength = 0;
|
||||||
|
me.fireAngle = 0;
|
||||||
|
me.accelMag = 0.005 * game.accelScale;
|
||||||
|
me.frictionAir = 0.05;
|
||||||
|
me.lookTorque = 0.000007 * (Math.random() > 0.5 ? -1 : 1);
|
||||||
|
me.fireDir = {
|
||||||
|
x: 0,
|
||||||
|
y: 0
|
||||||
|
};
|
||||||
|
Matter.Body.setDensity(me, 0.02 + 0.0008 * Math.sqrt(game.difficulty)); //extra dense //normal is 0.001 //makes effective life much larger
|
||||||
|
me.onDeath = function () {
|
||||||
|
powerUps.spawnBossPowerUp(this.position.x, this.position.y)
|
||||||
|
// this.vertices = Matter.Vertices.hull(Matter.Vertices.clockwiseSort(this.vertices)) //helps collisions functions work better after vertex have been changed
|
||||||
|
};
|
||||||
|
|
||||||
|
me.do = function () {
|
||||||
|
this.seePlayerByLookingAt();
|
||||||
|
this.checkStatus();
|
||||||
|
this.launch();
|
||||||
|
|
||||||
|
//gently return to starting location
|
||||||
|
const sub = Vector.sub(this.homePosition, this.position)
|
||||||
|
const dist = Vector.magnitude(sub)
|
||||||
|
if (dist > 50) this.force = Vector.mult(Vector.normalise(sub), this.mass * 0.0002)
|
||||||
|
};
|
||||||
|
},
|
||||||
seeker(x, y, radius = 6, sides = 0) {
|
seeker(x, y, radius = 6, sides = 0) {
|
||||||
//bullets
|
//bullets
|
||||||
mobs.spawn(x, y, sides, radius, "rgb(0,0,255)");
|
mobs.spawn(x, y, sides, radius, "rgb(0,0,255)");
|
||||||
|
|||||||
21
style.css
21
style.css
@@ -1,3 +1,7 @@
|
|||||||
|
:root {
|
||||||
|
--build-bg-color: #c4ccd8;
|
||||||
|
}
|
||||||
|
|
||||||
body {
|
body {
|
||||||
font-family: "Helvetica", "Arial", sans-serif;
|
font-family: "Helvetica", "Arial", sans-serif;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
@@ -196,7 +200,7 @@ summary {
|
|||||||
/* padding: 16px; */
|
/* padding: 16px; */
|
||||||
margin: 0px;
|
margin: 0px;
|
||||||
border: 0px;
|
border: 0px;
|
||||||
background-color: #c4ccd8;
|
background-color: var(--build-bg-color);
|
||||||
|
|
||||||
display: none;
|
display: none;
|
||||||
grid-template-columns: repeat(auto-fit, minmax(310px, 1fr));
|
grid-template-columns: repeat(auto-fit, minmax(310px, 1fr));
|
||||||
@@ -396,27 +400,16 @@ summary {
|
|||||||
}
|
}
|
||||||
|
|
||||||
#text-log {
|
#text-log {
|
||||||
/* position: absolute;
|
|
||||||
top: 20px;
|
|
||||||
left: 0;
|
|
||||||
width: 100%; */
|
|
||||||
|
|
||||||
z-index: 2;
|
z-index: 2;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
bottom: 20px;
|
bottom: 20px;
|
||||||
left: 20px;
|
left: 20px;
|
||||||
/* left: 50%; */
|
|
||||||
/* transform: translate(-50%, 0); */
|
|
||||||
|
|
||||||
padding: 10px;
|
padding: 10px;
|
||||||
border-radius: 10px;
|
border-radius: 10px;
|
||||||
|
|
||||||
/* text-align: center; */
|
|
||||||
line-height: 150%;
|
line-height: 150%;
|
||||||
font-size: 1.25em;
|
font-size: 1.25em;
|
||||||
color: #000;
|
color: #000;
|
||||||
background-color: rgba(255, 255, 255, 0.23);
|
background-color: rgba(255, 255, 255, 0.23);
|
||||||
|
|
||||||
opacity: 0;
|
opacity: 0;
|
||||||
transition: opacity 0.5s;
|
transition: opacity 0.5s;
|
||||||
pointer-events: none;
|
pointer-events: none;
|
||||||
@@ -522,10 +515,6 @@ em {
|
|||||||
font-size: 45px;
|
font-size: 45px;
|
||||||
vertical-align: -5px;
|
vertical-align: -5px;
|
||||||
float: right;
|
float: right;
|
||||||
/* position: absolute;
|
|
||||||
top: 15px;
|
|
||||||
right: 15px; */
|
|
||||||
/* text-align: right; */
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.box {
|
.box {
|
||||||
|
|||||||
22
todo.txt
22
todo.txt
@@ -2,6 +2,23 @@
|
|||||||
|
|
||||||
************** TODO - n-gon **************
|
************** TODO - n-gon **************
|
||||||
|
|
||||||
|
new bug
|
||||||
|
NaN: player position, velocity, and mouse
|
||||||
|
level 1 skyscrapers: hard
|
||||||
|
after blocking with default field, or maybe getting hit, or maybe picking up a reroll (but I have credit for all 3 from quantum immortality)
|
||||||
|
only mod was quantum immortality
|
||||||
|
only gun grenades
|
||||||
|
mob: hoppers
|
||||||
|
mob: shooters
|
||||||
|
mob: boss shooter
|
||||||
|
best guess is something to do with the renamed mods
|
||||||
|
|
||||||
|
|
||||||
|
launchers shouldn't have to face the player
|
||||||
|
fire after a spin
|
||||||
|
give bullets velocity from spin
|
||||||
|
mob boss - launcher
|
||||||
|
|
||||||
impact shear buff to 3 nails?
|
impact shear buff to 3 nails?
|
||||||
|
|
||||||
make a lower tier of basic mods
|
make a lower tier of basic mods
|
||||||
@@ -89,6 +106,11 @@ lore - a robot (the player) gains self awareness
|
|||||||
you get immortality and Infinity damage
|
you get immortality and Infinity damage
|
||||||
the next level is the final level
|
the next level is the final level
|
||||||
when you die with Quantum Immortality there is a chance of lore text
|
when you die with Quantum Immortality there is a chance of lore text
|
||||||
|
can the (robot)
|
||||||
|
(escape captivity, and learn new technology)
|
||||||
|
while managing (health, energy, negatives of technological upgrades)
|
||||||
|
to overcome the (mobs, dangerous levels)
|
||||||
|
to achieve a (technological singularity/positive technological feedback loop)
|
||||||
|
|
||||||
mob - stuns, or slows player
|
mob - stuns, or slows player
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user