尝试使用easeljs库在javascript中移动/动画容器

时间:2013-03-16 02:23:09

标签: javascript easeljs

我正在尝试调整显示如何处理基于精灵的拍摄的gamefromscratch页面。但我正在尝试用容器中的位图替换sprite。我磕磕绊绊的地方是onTick(delta)的结尾,其中有一个图形对象被创建,我不知道要替换的语法

   var g = new createjs.Graphics();
                g.setStrokeStyle(5);
                g.beginStroke(createjs.Graphics.getRGB(255,0,0));
                g.drawCircle(this.x,this.y,10);

                this.bulletGraphic = new createjs.Shape(g);
                stage.addChild(this.bulletGraphic);
            }
            bullets.push(bullet);

使用适用于容器中Bitmap的代码。 谢谢你的期待。

2 个答案:

答案 0 :(得分:0)

我相信您正在寻找g.beginBitmapStroke()来替换g.drawCircle()

您可以在此处找到EaselJS文档:

http://www.createjs.com/Docs/EaselJS/classes/Graphics.html#yui_3_8_0pr2_2_1363403850534_598

答案 1 :(得分:0)

如果只使用Bitmap而不是Shape,可以使用:

      this.bulletGraphic = new createjs.Bitmap('urlOrImage');
      stage.addChild(this.bulletGraphic);
    }
    bullets.push(bullet);

如果您希望bullet-Bitmap另外位于容器中(无论出于何种原因):

      this.bulletGraphic = new createjs.Container();
      this.bulletBitmap = new createjs.Bitmap('urlOrImage');
      this.bulletGraphic.addChild(this.bulletBitmap);
      stage.addChild(this.bulletGraphic);
    }
    bullets.push(bullet);

我的一个小注释(注意与你的问题相关,但如果你关心的话): 该页面上给出的代码示例解释了该主题背后的数学非常好,但代码方面我不会把它作为一个很好的例子。对于子弹,您通常会创建一个新类,继承自ShapeBitmap,此示例的作者使用普通对象并通过它引用图形资产(this.bulletGraphic)。所以,如果你只是用它来学习数学,这很好,如果你想用它来创建一个真正的游戏,我建议你重新调整代码,因为这会变得混乱很快。