1

特定の特性を持つレイヤー内のすべてのシェイプ/スプライトを選択するにはどうすればよいですか?

たとえば、特定の x 位置または y 位置を持つすべての形状、または特定のプロパティを持つ形状は?

ゲーム内の特定の特性を持つすべてのスプライトをループして処理できるようにしたいと考えています。

たとえば、次のようなことができます:

  // loop through the 'alien' sprites, selecting dead ones only up front.
  var deadAliens = layer.get('alien','shield==0')
  deadAliens.each(function(deadAlien) {
     deadAlien.remove(); // remove dead alien
  });

それ以外の:

  // loop through 'alien' sprites and use 'if' statements to select dead ones.
  var aliens = layer.get('alien') 
  aliens.each(function(alien) {
     if (alien.getAttr('shield')==0) alien.remove(); // remove dead alien
  });

ポイントは、ループ内で「if」ステートメントを使用するのではなく、「get」で選択を実行したいということです。

編集:さらに良いのは次のようなものです:

layer.get('*[search criteria]*').remove();

...remove()メソッドを選択に直接適用します。これは、上記の最初の例よりもきれいです。

ありがとう

オーウェン

4

1 に答える 1