第二次果實生成沒有變大過程!
和老師的執(zhí)行效果不一樣。。第二次生成果實的時候沒有變大這一過程,直接上升。。。。 在if(this.y[i]<10){ this.alive[i]=false; this.l[i]=0; ? ? ? ? ? ? ? ? //加上這句才有變大的過程 } 難道是我漏打老師代碼了?
和老師的執(zhí)行效果不一樣。。第二次生成果實的時候沒有變大這一過程,直接上升。。。。 在if(this.y[i]<10){ this.alive[i]=false; this.l[i]=0; ? ? ? ? ? ? ? ? //加上這句才有變大的過程 } 難道是我漏打老師代碼了?
2016-04-19
舉報
2016-04-19
var fruit=function(){
this.x=[];
this.y=[];
this.l=[];
this.spd=[];
this.alive=[];
this.orange=new Image();
this.blue=new Image();
}
fruit.prototype.num=30;
fruit.prototype.init=function(){
for(var i=0;i<this.num;i++){
this.alive[i]=false;
this.x[i]=0;
this.y[i]=0;
this.l[i]=0;
this.spd[i]=Math.random()*0.01+0.005; ? ? ? ? //果實上升速度變化區(qū)間
this.born(i);
}
this.orange.src="img/fruit.png"; ? ? ? ? ? ?//果實圖片
this.blue.src="img/blue.png"; //果實圖片
}
fruit.prototype.draw=function(){
for(var i=0;i<this.num;i++){
if(this.alive[i]){
if(this.l[i]<=14){
this.l[i]+=this.spd[i]*deltaTime; ? ? ? ? ? ? ?//果實跟隨時間變化度而變化多少,如果在谷歌切換了頁面,則此頁面js不執(zhí)行,deltaTime會變的很大
}else{
this.y[i]-=this.spd[i]*7*deltaTime;
}
ctx2.drawImage(this.orange,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]<10){
this.alive[i]=false;
this.l[i]=0; ? ? ? ? ? ? ? ? ? ? ? ? ? ?//我自己加上的,不加在第二次生成果實的時候沒有變大這個過程,果實就會直接上升
}
}
}
}
fruit.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.alive[i]=true;
}
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); ? ? ? //判斷果實是否出現(xiàn)
return;
}
}
}