CandyFall

This commit is contained in:
2015-09-12 17:02:10 +02:00
parent e18ada8eb9
commit 4b6ed084bb

View File

@@ -113,6 +113,9 @@ CandyFucker.prototype = {
this.Changed = true; this.Changed = true;
return candy; return candy;
}, },
RandomCandy: function(){
return this.CandyTypes[Math.floor(Math.random() * this.CandyTypes.length)];
},
BuildGrid: function(width, height){ BuildGrid: function(width, height){
var x,y; var x,y;
this.GridSize = {X: width, Y: height}; this.GridSize = {X: width, Y: height};
@@ -122,9 +125,8 @@ CandyFucker.prototype = {
for(y=0;y<height;y++){ for(y=0;y<height;y++){
this.Grid.push([]); this.Grid.push([]);
for(x=0;x<width;x++){ for(x=0;x<width;x++){
var candyType = this.CandyTypes[Math.floor(Math.random() * this.CandyTypes.length)];
var entCandy = new CandyEntity(this, var entCandy = new CandyEntity(this,
candyType, this.RandomCandy(),
{X: x, Y: y}); {X: x, Y: y});
this.Grid[y].push(entCandy); this.Grid[y].push(entCandy);
this.GameScreen.AddEntity(entCandy); this.GameScreen.AddEntity(entCandy);
@@ -236,7 +238,7 @@ CandyFucker.prototype = {
if(candy){ if(candy){
candy.Delete(); candy.Delete();
points += pointsMultiplier; points += pointsMultiplier;
pointsMultiplier = pointsMultiplier*2; pointsMultiplier = pointsMultiplier + 10;
} }
} }
}else{ }else{
@@ -246,7 +248,7 @@ CandyFucker.prototype = {
if(candy){ if(candy){
candy.Delete(); candy.Delete();
points += pointsMultiplier; points += pointsMultiplier;
pointsMultiplier = pointsMultiplier*2; pointsMultiplier = pointsMultiplier + 10;
} }
} }
} }
@@ -262,7 +264,31 @@ CandyFucker.prototype = {
return (runs.length>0); return (runs.length>0);
}, },
CandyFall: function(){ CandyFall: function(){
// FIXME: Implement this var falling = false;
var x,y;
for(y=(this.GridSize.Y-1);y>=0;y--){
for(x=0;x<this.GridSize.X;x++){
var candy = this.GetCandy(x, y);
if(candy==null){
if(y==0){
var entCandy = new CandyEntity(this,
this.RandomCandy(),
{X: x, Y: y-1});
this.GameScreen.AddEntity(entCandy);
this.SetCandy(x, y, entCandy);
falling = true;
}else{
var candyUp = this.RemoveCandy(x, y-1);
if(candyUp){
this.SetCandy(x, y, candyUp);
falling = true;
}
}
}
}
}
return falling;
}, },
Debug: false Debug: false
}; };