0

私は、JavaScript の理解を深め、それを使用してアプリケーションを構築するためのプロジェクトに取り組んでいます。私は現在createjsを利用してゲームを作っています。いくつかのメソッドを追加して Shape の「クラス」を拡張したいのですが、この問題に頭を悩ませているようには見えません。

このアプローチでは実行時エラーは発生しませんが、特定の時点でサイレントに失敗していると思います。

私のサブクラス:

ShipGFX.prototype = new createjs.Shape();
    function ShipGFX()
    {
        createjs.Shape.apply( this );

        this.draw = function()
        {
            var g = this.graphics;

            g.clear();
            g.setStrokeStyle( 1 );
            g.beginStroke( createjs.Graphics.getRGB( 0x00ff00 ) );
            g.beginFill( createjs.Graphics.getRGB( 0x00ff00, 0.5 ) );
            g.moveTo( 0, 0 );
            g.lineTo( -5, -5 );
            g.lineTo( 10, 0 );
            g.lineTo( -5, 5 );
            g.lineTo( 0, 0 );
            g.endFill();
        }
    }

使用される場所:

var shape = new ShipGFX();
shape.draw();

したがって、コンソールはエラーをログに記録せず、draw コマンドを使用してログを記録することもできます。問題は this.graphics の範囲だと思いますが、そこでも失敗しません。それは範囲の問題ですか?this.graphics はプロトタイプ インスタンスへの参照ですか (正しく理解している場合)。Class-js がどのように機能するかをよりよく理解しているので、理想的にはClass-jsを使用したいと思いますが、この方法で機能させることさえできません。

どんな入力でも素晴らしいでしょう。ありがとうございました。

4

1 に答える 1