亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

果實運動的速度越來越快,求解,已初始化

果實運動的速度越來越快,求解,已初始化

正在回答

4 回答

fruitObj.prototype.born?=?function(i)?{

????var?aneId?=?Math.floor(Math.random()?*?ane.num);

????this.x[i]?=?ane.x[aneId];

????this.y[i]?=?canH?-?ane.len[aneId];

????this.l[i]?=?0;

其實我覺得這里把ane的實例化對象寫進去是不妥的。,

? ? var?aneId?=?Math.floor(Math.random()?*?ane.num); ane是實例化對象,寫在fruitObj對象里是不對的


0 回復 有任何疑惑可以回復我~
#1

java家洼

你好,你說“ ane是實例化對象,寫在fruitObj對象里是不對的”,我覺得你說的不對,因為ane是??膶嵗龑ο螅皇枪麑嵉膶嵗龑ο?,在果實類定義中用到其他類的實例對象怎么就不行呢?要是用到自己類的實例對象才不行呢。你說是不是?
2016-06-23 回復 有任何疑惑可以回復我~
var?fruitObj?=?function()?{
	this.x?=?[];
	this.y?=?[];
	this.l?=?[];
	this.alive?=?[];
	this.speed?=?[];
	this.orange?=?new?Image();
	this.blue?=?new?Image();
	this.fruitType?=?[];
}
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.l[i]?=?0;
?		this.fruitType[i]?=?'';
?		this.speed[i]?=?Math.random()?*?0.0003?+?0.00001;?//[?0.00001?,?0.00051)
?		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++)?{
		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.speed[i]?*?deltaTime;
			}else{
				this.y[i]?-=?this.speed[i]?*?deltaTime;
			}
			ctx2.drawImage(?pic?,?this.x[i]?-?this.l[i]?,?this.y[i]?-?this.l[i]?,?this.l[i]?,?this.l[i]?)
			if(?this.y[i]?<?10?){
				this.alive[i]?=?false;
			}
		}
		
	};
}
fruitObj.prototype.born?=?function(i)?{
	var?aneId?=?Math.floor(Math.random()?*?ane.num);
	this.x[i]?=?ane.x[aneId];
	this.y[i]?=?canH?-?ane.len[aneId];
	this.l[i]?=?0;
	this.alive[i]?=?true;
	var?ran?=?Math.random();
	if(?ran?<?0.3?){
		this.fruitType[i]?=?'blue'
	}else{
		this.fruitType[i]?=?'orange';
	}
}
fruitObj.prototype.fruitManger?=?function()?{
	var?num?=?0;
	for?(var?i?=?0;?i?<?fruit.num;?i++)?{
		if(fruit.alive[i]){
			num++;
		}
	}
	if(?num?<?15?){
		fruit.rebornFruit();
		return;
	}
}
fruitObj.prototype.rebornFruit?=?function()?{
	for?(var?i?=?0;?i?<?fruit.num;?i++)?{
		if(!fruit.alive[i]){
			fruit.born(i);
			return;
		}
	};
};


0 回復 有任何疑惑可以回復我~

是啊,而且在出生的時候,也給this.l[i]=0了

var fruitObj = function() {

this.x = [];

this.y = [];

this.l = [];

this.alive = [];

this.speed = [];

this.orange = new Image();

this.blue = new Image();

this.fruitType = [];

}

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.l[i] = 0;

? this.fruitType[i] = '';

? this.speed[i] = Math.random() * 0.0003 + 0.00001; //[ 0.00001 , 0.00051)

? 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++) {

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.speed[i] * deltaTime;

}else{

this.y[i] -= this.speed[i] * deltaTime;

}

ctx2.drawImage( pic , this.x[i] - this.l[i] , this.y[i] - this.l[i] , this.l[i] , this.l[i] )

if( this.y[i] < 10 ){

this.alive[i] = false;

}

}

};

}

fruitObj.prototype.born = function(i) {

var aneId = Math.floor(Math.random() * ane.num);

this.x[i] = ane.x[aneId];

this.y[i] = canH - ane.len[aneId];

this.l[i] = 0;

this.alive[i] = true;

var ran = Math.random();

if( ran < 0.3 ){

this.fruitType[i] = 'blue'

}else{

this.fruitType[i] = 'orange';

}

}

fruitObj.prototype.fruitManger = function() {

var num = 0;

for (var i = 0; i < fruit.num; i++) {

if(fruit.alive[i]){

num++;

}

}

if( num < 15 ){

fruit.rebornFruit();

return;

}

}

fruitObj.prototype.rebornFruit = function() {

for (var i = 0; i < fruit.num; i++) {

if(!fruit.alive[i]){

fruit.born(i);

return;

}

};

};


0 回復 有任何疑惑可以回復我~

? if (this.alive[i]) {

? ? ? ? ? ?if (this.l[i] <= 14) {

? ? ? ? ? ?this.l[i] += this.spd[i] * deltaTime;

? ? ? ? ? ?}

? ? ? ? ? ?else{

? ? ? ? this.y[i] -= this.spd[i] * 7 * deltaTime;

? ? ? ? ? ?}

你的代碼是這樣嗎,我這樣寫的沒有問題哦


0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

果實運動的速度越來越快,求解,已初始化

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號