User prompt
cube_collapse must not occur in neighboring columns
User prompt
hitting a hero in a column where there is cube_collapse leads to an immediate collapse of this column and the two adjacent ones on the left and right
User prompt
Fix Bug: 'TypeError: poles[i].makeCubesFall is not a function' in or related to this line: 'poles[i].makeCubesFall();' Line Number: 190
User prompt
hitting a hero in a column where there is cube_collapse leads to the immediate collapse of this column and the two adjacent ones on the left and right
User prompt
Fix Bug: 'Uncaught ReferenceError: i is not defined' in or related to this line: 'var cube = (self.cubes.length + 1) % 10 === 0 && i % 2 === 0 ? new CollapsibleCube() : new Cube();' Line Number: 40
User prompt
cube_collapse should not be in neighbouring columns
User prompt
cube_collapse must not be in adjacent columns
User prompt
cube_collapse must not be in adjacent columns
User prompt
cube_collapse should not be one after the other
User prompt
cube_collapse should not be one after the other
User prompt
cube_collapse should not be one after the other
User prompt
cube_collapse should not be consecutive
User prompt
every 10th column should contain one cube_collapse instead of cube
User prompt
cube_collapse should occur more often and regularly
User prompt
cube_collapse should not be consecutive
User prompt
every 10th column should contain one cube_collapse instead of cube
User prompt
every 10th column on average should contain cube_collapse instead of cube
User prompt
cube_collapse should not be consecutive, but should occur regularly
User prompt
cube_collapse should not be consecutive, but should occur regularly
User prompt
cube_collapse should not be consecutive, but should occur regularly
User prompt
Instead of cube, place cube_collapse randomly at the top of some columns
User prompt
Fix Bug: 'TypeError: poles[i].cubes[j].update is not a function' in or related to this line: 'poles[i].cubes[j].update();' Line Number: 179
User prompt
Fix Bug: 'TypeError: poles[i].cubes[j].update is not a function' in or related to this line: 'poles[i].cubes[j].update();' Line Number: 179
User prompt
Fix Bug: 'TypeError: poles[i].cubes[j].update is not a function' in or related to this line: 'poles[i].cubes[j].update();' Line Number: 179
User prompt
Fix Bug: 'TypeError: poles[i].cubes[j].update is not a function' in or related to this line: 'poles[i].cubes[j].update();' Line Number: 180
===================================================================
--- original.js
+++ change.js
@@ -36,22 +36,23 @@
var Pole = Container.expand(function () {
var self = Container.call(this);
self.cubes = [];
self.addCube = function () {
- var cube = (self.cubes.length + 1) % 10 === 0 ? new CollapsibleCube() : new Cube();
+ var isPreviousPoleCollapsible = poles.length > 0 && poles[poles.length - 1].cubes.length > 0 && poles[poles.length - 1].cubes[poles[poles.length - 1].cubes.length - 1] instanceof CollapsibleCube;
+ var shouldCreateCollapsible = (self.cubes.length + 1) % 10 === 0 && !isPreviousPoleCollapsible;
+ var cube = shouldCreateCollapsible ? new CollapsibleCube() : new Cube();
cube.y = -(self.cubes.length * 100) - (self.cubes.length - 1) * 2;
self.addChild(cube);
self.cubes.push(cube);
};
- self.collapse = function (poles) {
- self.makeCubesFall();
- var currentIndex = poles.indexOf(self);
- var adjacentIndices = [currentIndex - 1, currentIndex + 1];
- adjacentIndices.forEach(function (index) {
- if (index >= 0 && index < poles.length) {
- poles[index].makeCubesFall();
- }
- });
+ self.makeCubesFall = function () {
+ for (var i = self.cubes.length - 1; i >= 0; i--) {
+ (function (index) {
+ LK.setTimeout(function () {
+ self.cubes[index].isFalling = true;
+ }, index * 250); // Delay between each cube falling
+ })(i);
+ }
};
self.isSliding = false;
self.slideDownUp = function () {
if (!self.isSliding) {
@@ -148,15 +149,9 @@
if (hero.intersects(pole) && hero.velocityY > 0 && hero.y + hero.height / 2 < pole.y) {
hero.y = pole.y - pole.getHeight() - hero.height / 2;
hero.isOnGround = true;
hero.velocityY = 0;
- if (pole.cubes.some(function (cube) {
- return cube instanceof CollapsibleCube;
- })) {
- pole.collapse(poles);
- } else {
- pole.slideDownUp();
- }
+ pole.slideDownUp();
}
}
// Remove off-screen poles and create new ones
var poleSpacing = 2;
girl sitting on Wrecking Ball, cartoon style.. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
construction cranes on the sides of the frame, depth of field blur, cartoon style, black and white. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
"ALARM" text bubble, comic style. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
the surface is gray, concrete with a black square in the center. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
Wrecking Ball with eyes, cartoon style.. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
the surface is red, concrete with a black square in the center.. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
"ALARM" text bubble yellow, comic book style.. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.
the surface is yellow, concrete with a black square in the center. Single Game Texture. In-Game asset. 2d. Blank background. High contrast. No shadows.