我可以在统一脚本中作为具有“健康”、“速度”和“耐力”的对象“敌人”。并删除对象,还是一次删除几个?
class enemy {
health = 100
speed = 10
stamina = 200
}
for 0 to 10
{
enemyBig = new Enemy ()
}
if keydown (space)
{
delete all.enemyBig
}
unityscript 中的这段代码如何正确?
我可以在统一脚本中作为具有“健康”、“速度”和“耐力”的对象“敌人”。并删除对象,还是一次删除几个?
class enemy {
health = 100
speed = 10
stamina = 200
}
for 0 to 10
{
enemyBig = new Enemy ()
}
if keydown (space)
{
delete all.enemyBig
}
unityscript 中的这段代码如何正确?
在 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.
要一次跟踪所有敌人,您需要一个数组。那里有一个很好的教程:
要实现一个对象:
function Enemy {
this.health = 100;
...
};
Enemy.prototype.attack = function() {
this.health -= 10;
...
};
var boogerMonster = new Enemy();
boogerMonster.attack();
至于删除对象,如果对象没有其他引用,垃圾收集器将处理该对象。
但是,从这个问题来看,似乎仅仅知道这些信息不会让你走得太远。拿一本关于 JavaScript 的书和/或做一些在线研究,以真正了解 JavaScript 的基础知识。