2010-12-06 8 views
1

"健康"、 "スピード"、 "スタミナ"を持つオブジェクト "敵"としてユニティスクリプトで行うことができます。オブジェクトを一度に削除するには?ユニティスクリプトのオブジェクト敵

class enemy { 
    health = 100 
    speed = 10 
    stamina = 200 
} 

for 0 to 10 
{ 
    enemyBig = new Enemy() 
} 


if keydown (space) 
{ 
    delete all.enemyBig 
} 

このコードはどのようにして正しくユニティスクリプトになりますか?

+2

質問に答えることはできませんが、私はいくつかの基本的なJavaScriptチュートリアルを見て、適切な形のforループ、可変スコープと宣言、イベント処理などを学ぶことをお勧めします。 –

答えて

1

javascriptでは、クラスを定義するために関数を作成します。

function Enemy { 
    this.health = 100; 
    .... 
}; 

して、プロトタイプのメソッドを置くために(ジャバスクリプトが原型継承を使用しているため。)

Enemy.prototype.theMethod = function() { ... }; 

あなたがメソッドを定義するために上記の操作を行う際に、メソッドがインスタンスメソッドです。すなわち、すべてのオブジェクトは、メソッドのそれ自身のコピーを有する。あなたは「静的」メソッドを定義したい場合は、あなただけの違いは前者である

Enemy.staticMethod = function() {...}; 

はあなたが

var enemy1 = new Enemy(); 
enemy1.theMethod(); // this in the theMethod refers to enemy1 

を行うことができますクラスのメソッドを入れて、後者のために、あなたは

を行います
Enemy.staticMethod(); // there is only one staticMethod for the entire class. 
0

オブジェクトを実装するには:限りオブジェクトの削除など

function Enemy { 
    this.health = 100; 
    ... 
}; 

Enemy.prototype.attack = function() { 
    this.health -= 10; 
    ... 
}; 

var boogerMonster = new Enemy(); 
boogerMonster.attack(); 

それが持っている場合、ガベージコレクタは、オブジェクトの世話をします他の参照はありません。

しかし、質問から、これはのようにちょうどのように見えます。 JavaScriptをに、オンラインでをとすると、JavaScriptの基本を実際に理解することができます。

関連する問題