2010-12-06 63 views
1

我可以做为一个具有“健康”,“速度”和“耐力”的对象“敌人”。并删除该对象,或一次删除几个?统一脚本中的对象敌人

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

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


if keydown (space) 
{ 
    delete all.enemyBig 
} 

Unityscript中的这段代码如何正确?

+2

不是一个问题的答案,但我会建议看一些基本的JavaScript教程,以学习适当形式的for for循环,变量作用域和声明以及事件处理。 – 2010-12-06 18:47:43

回答

1

在JavaScript中,要定义一个类,您需要创建一个函数。

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

,然后把方法的原型(因为JavaScript使用原型继承。)

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的基础知识。