ennemi d'objets dans unityscript
-
09-10-2019 - |
Question
Je peux faire unitycript comme un objet « ennemi » qui a « santé », « vitesse » et « l'endurance ». Et pour supprimer l'objet, ou plusieurs à la fois?
class enemy {
health = 100
speed = 10
stamina = 200
}
for 0 to 10
{
enemyBig = new Enemy ()
}
if keydown (space)
{
delete all.enemyBig
}
Comment serait-ce code unityscript correctement?
La solution
Pour garder une trace de tous vos ennemis à la fois, ce que vous avez besoin est appelé un tableau . il y a une bonne tutoriel:
Autres conseils
En javascript, pour définir une classe que vous créez une fonction.
function Enemy {
this.health = 100;
....
};
et de mettre des méthodes sur le prototype (car javascript utilise l'héritage prototypal.)
Enemy.prototype.theMethod = function () { ... };
quand vous faites ci-dessus pour définir une méthode, la méthode est une méthode d'instance; à-dire chaque objet a sa propre copie de la méthode. Si vous souhaitez définir une méthode « statique », vous venez de mettre la méthode sur la classe
Enemy.staticMethod = function() {...};
la différence est pour l'ex-que vous pouvez faire
var enemy1 = new Enemy();
enemy1.theMethod(); // this in the theMethod refers to enemy1
et celui-ci vous faire
Enemy.staticMethod(); // there is only one staticMethod for the entire class.
Pour mettre en œuvre un objet:
function Enemy {
this.health = 100;
...
};
Enemy.prototype.attack = function() {
this.health -= 10;
...
};
var boogerMonster = new Enemy();
boogerMonster.attack();
En ce qui concerne la suppression d'un objet, le garbage collector se chargera de l'objet si elle n'a pas d'autres références à elle.
Mais, de la question, il ressemble à juste sachant ces informations ne vous transportera loin. Prenez un livre JavaScript et / ou faire des recherches en ligne pour vraiment comprendre les fondements de JavaScript.