问答详情
源自:2-4 果实绘制(静态果实)

fruit敲了n遍还是不行啊!!已跪

已跪,看了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;
        }
    }
}

提问者:狄子魔童 2016-07-13 10:50

个回答

  • qq__9044
    2017-06-14 20:03:09

    求解决办法

  • 狄子魔童
    2016-07-13 11:00:45

    。。。呃呃呃,不好意思,我已解决,哈哈!

  • 狄子魔童
    2016-07-13 10:52:43

    并无报错,海葵画出来了,果实纠结两天了,已崩溃,实在没办法才麻烦各位看一下的,不好意思…