fruit敲了n遍還是不行?。。∫压?/h1>
已跪,看了n遍視頻,還看了所有評論,都沒有問題啊,fruit還是畫不出來,真心不好意思,麻煩懂的同學指點一下,萬分感謝!以下是fruit.js源碼--------------------
var fruitObj = function()
{
?? ?this.alive = [];//bool
?? ?this.x = [];
?? ?this.y = [];
?? ?this.l = [];
?? ?this.spd = [];
?? ?this.fruitType = [];
?? ?this.orange = new Image();
?? ?this.blue = new Image();
}
fruitObj.prototype.num = 30;
fruitObj.prototype.init = function()
{
?? ?for(var i = 0; i<this.num;i++)
?? ?{
?? ??? ?this.alive[i] = false;
?? ??? ?this.x[i] = 0;
?? ??? ?this.y[i] = 0;
?? ??? ?this.spd[i] = Math.random() * 0.01 + 0.005;
?? ??? ?this.fruitType[i] = "";
?? ??? ?this.born(i);
?? ?}
?? ?this.orange.src = "./src/fruit.png";
?? ?this.blue.src = "./src/blue.png";
}
fruitObj.prototype.draw = function()
{
?? ?for(var i = 0;i< this.num;i++)
?? ?{
?? ??? ?//draw
?? ??? ?//find an ane, grow, fly up
?? ??? ?if(this.alive[i])
?? ??? ?{
?? ??? ??? ?if(this.fruitType[i] == "blue")
?? ??? ??? ?{
?? ??? ??? ??? ?var pic = this.blue;
?? ??? ??? ?}
?? ??? ??? ?else
?? ??? ??? ?{
?? ??? ??? ??? ?var pic = this.orange;
?? ??? ??? ?}
?? ??? ??? ?if(this.l[i] <=14)
?? ??? ??? ?{
?? ??? ??? ??? ?this.l[i] += this.spd[i] * deltaTime;
?? ??? ??? ?}
?? ??? ??? ?else{
?? ??? ??? ??? ?this.y[i] -= this.spd[i] * 5 *deltaTime;
?? ??? ??? ?}
?? ??? ??? ?ctx2.drawImage(pic, this.x[i] - this.l[i] * 0.5, this.y[i] - this.l[i]*0.5, this.l[i], this.l[i]);
?? ??? ??? ?if(this.y[i] < (Math.random()*50 + 20))
?? ??? ??? ?{
?? ??? ??? ??? ?this.alive[i] = false;
?? ??? ??? ?}
?? ??? ?}
?? ?}
}
fruitObj.prototype.update = function()
{
?? ?var num = 0;
?? ?for (var i =0; i< this.num;i++)
?? ?{
?? ??? ?if(this.alive[i])
?? ??? ??? ?num++;
?? ?}
}
fruitObj.prototype.born = function(i)
{
?? ?var aneID = Math.floor(Math.random()*ane.num);
?? ?this.x[i] = ane.x[aneID];
?? ?this.y[i] = canHeight - ane.len[aneID];
?? ?this.l[i] = 0;
?? ?this.alive[i] = true;
?? ?var run = Math.random();
?? ?if(run<=0.3)
?? ?{
?? ??? ?this.fruiType[i] = "blue";
?? ?}
?? ?else
?? ?{
?? ??? ?this.fruitType[i] = "orange";
?? ?}
}
fruitObj.prototype.dead = function()
{
?? ?this.alive[i] = false;
}
function fruitMonitor()
{
?? ?var num = 0;
?? ?for(var i = 0; i < fruit.num; i++)
?? ?{
?? ??? ?if( fruit.alive[i])
?? ??? ?{
?? ??? ??? ?num++;
?? ??? ?}
?? ?}
?? ?if( num<15)
?? ?{
?? ??? ?sendFruit();
?? ??? ?return;
?? ?}
}
function sendFruit()
{
?? ?for(var i = 0; i< fruit.num;i++)
?? ?{
?? ??? ?if(!fruit.alive[i])
?? ??? ?{
?? ??? ??? ?fruit.born(i);
?? ??? ??? ?return;
?? ??? ?}
?? ?}
}
已跪,看了n遍視頻,還看了所有評論,都沒有問題啊,fruit還是畫不出來,真心不好意思,麻煩懂的同學指點一下,萬分感謝!以下是fruit.js源碼--------------------
var fruitObj = function()
{
?? ?this.alive = [];//bool
?? ?this.x = [];
?? ?this.y = [];
?? ?this.l = [];
?? ?this.spd = [];
?? ?this.fruitType = [];
?? ?this.orange = new Image();
?? ?this.blue = new Image();
}
fruitObj.prototype.num = 30;
fruitObj.prototype.init = function()
{
?? ?for(var i = 0; i<this.num;i++)
?? ?{
?? ??? ?this.alive[i] = false;
?? ??? ?this.x[i] = 0;
?? ??? ?this.y[i] = 0;
?? ??? ?this.spd[i] = Math.random() * 0.01 + 0.005;
?? ??? ?this.fruitType[i] = "";
?? ??? ?this.born(i);
?? ?}
?? ?this.orange.src = "./src/fruit.png";
?? ?this.blue.src = "./src/blue.png";
}
fruitObj.prototype.draw = function()
{
?? ?for(var i = 0;i< this.num;i++)
?? ?{
?? ??? ?//draw
?? ??? ?//find an ane, grow, fly up
?? ??? ?if(this.alive[i])
?? ??? ?{
?? ??? ??? ?if(this.fruitType[i] == "blue")
?? ??? ??? ?{
?? ??? ??? ??? ?var pic = this.blue;
?? ??? ??? ?}
?? ??? ??? ?else
?? ??? ??? ?{
?? ??? ??? ??? ?var pic = this.orange;
?? ??? ??? ?}
?? ??? ??? ?if(this.l[i] <=14)
?? ??? ??? ?{
?? ??? ??? ??? ?this.l[i] += this.spd[i] * deltaTime;
?? ??? ??? ?}
?? ??? ??? ?else{
?? ??? ??? ??? ?this.y[i] -= this.spd[i] * 5 *deltaTime;
?? ??? ??? ?}
?? ??? ??? ?ctx2.drawImage(pic, this.x[i] - this.l[i] * 0.5, this.y[i] - this.l[i]*0.5, this.l[i], this.l[i]);
?? ??? ??? ?if(this.y[i] < (Math.random()*50 + 20))
?? ??? ??? ?{
?? ??? ??? ??? ?this.alive[i] = false;
?? ??? ??? ?}
?? ??? ?}
?? ?}
}
fruitObj.prototype.update = function()
{
?? ?var num = 0;
?? ?for (var i =0; i< this.num;i++)
?? ?{
?? ??? ?if(this.alive[i])
?? ??? ??? ?num++;
?? ?}
}
fruitObj.prototype.born = function(i)
{
?? ?var aneID = Math.floor(Math.random()*ane.num);
?? ?this.x[i] = ane.x[aneID];
?? ?this.y[i] = canHeight - ane.len[aneID];
?? ?this.l[i] = 0;
?? ?this.alive[i] = true;
?? ?var run = Math.random();
?? ?if(run<=0.3)
?? ?{
?? ??? ?this.fruiType[i] = "blue";
?? ?}
?? ?else
?? ?{
?? ??? ?this.fruitType[i] = "orange";
?? ?}
}
fruitObj.prototype.dead = function()
{
?? ?this.alive[i] = false;
}
function fruitMonitor()
{
?? ?var num = 0;
?? ?for(var i = 0; i < fruit.num; i++)
?? ?{
?? ??? ?if( fruit.alive[i])
?? ??? ?{
?? ??? ??? ?num++;
?? ??? ?}
?? ?}
?? ?if( num<15)
?? ?{
?? ??? ?sendFruit();
?? ??? ?return;
?? ?}
}
function sendFruit()
{
?? ?for(var i = 0; i< fruit.num;i++)
?? ?{
?? ??? ?if(!fruit.alive[i])
?? ??? ?{
?? ??? ??? ?fruit.born(i);
?? ??? ??? ?return;
?? ??? ?}
?? ?}
}
2017-06-14
求解決辦法
2016-07-13
。。。呃呃呃,不好意思,我已解決,哈哈!
2016-07-13
并無報錯,??嫵鰜砹?,果實糾結兩天了,已崩潰,實在沒辦法才麻煩各位看一下的,不好意思…