私は、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を使用したいと思いますが、この方法で機能させることさえできません。
どんな入力でも素晴らしいでしょう。ありがとうございました。