我无法获得精灵来绘制到屏幕上

时间:2014-12-31 16:40:48

标签: javascript canvas

我完全用HTML和JS制作Flappy Bird游戏。

我无法将奖牌显示在屏幕上。无论我在哪里画画,它们都根本不会出现。这些奖牌是唯一不会出现的精灵,我在游戏中使用了与其他精灵相同的结构。

function Sprite(img, x, y, width, height) {
this.img = img;
this.x = x * 2;
this.y = y * 2;
this.width = width * 2;
this.height = height * 2;
};
Sprite.prototype.draw = function(ctx, x, y) {
    ctx.drawImage(this.img, this.x, this.y, this.width, this.height,
    x, y, this.width, this.height);
};

初始化.draw()的地方。

if (currentstate === states.Score) {
    s_text.GameOver.draw(ctx, width2 - s_text.GameOver.width/2, height - 400);
    s_score.draw(ctx, width2 - s_score.width/2, height - 340);
    s_buttons.Ok.draw(ctx, okbtn.x, okbtn.y);

    s_numberS.draw(ctx, width2-47, height - 304, score, null, 10);
    s_numberS.draw(ctx, width2-47, height - 262, best, null, 10);

    switch (score) {
        case > 50 :
            s_medals.gold.draw(ctx, 73, 181);
            break;
        case > 20 :
            s_medals.silver.draw(ctx, 73, 181);
            break;
        case >  5 :
            s_medals.bronze.draw(ctx, 73, 181);
            break;
    }

}

它的绘制地点

非常感谢任何调试帮助。

编辑:你们肯定对此有所了解。道歉。

1 个答案:

答案 0 :(得分:0)

感谢帮助人员,但我弄清楚出了什么问题。在我使用的精灵表上,没有正确选择奖章,所以没有出现任何东西。它仍在被吸引。