Вопрос

Я могу сделать в Unitycript как объект «врага», который имеет «здоровье», «скорость» и «выносливость». И удалить объект или несколько одновременно?

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.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top