enemigo objeto en unityscript
-
09-10-2019 - |
Pregunta
Me puede hacer en unitycript como un "enemigo" objeto que tiene la "salud", "velocidad" y "resistencia". Y eliminar el objeto, o varios a la vez?
class enemy {
health = 100
speed = 10
stamina = 200
}
for 0 to 10
{
enemyBig = new Enemy ()
}
if keydown (space)
{
delete all.enemyBig
}
¿Cómo sería este código en unityscript correctamente?
Solución
Para realizar un seguimiento de todos sus enemigos a la vez, lo que necesita se llama un array . Hay un buen tutorial existe:
Otros consejos
En Javascript, para definir una clase se crea una función.
function Enemy {
this.health = 100;
....
};
y después de poner los métodos en el prototipo (porque javascript utiliza herencia de prototipos.)
Enemy.prototype.theMethod = function () { ... };
cuando se hace lo anterior para definir un método, el método es un método de instancia; es decir, cada objeto tiene su propia copia del método. Si desea definir un método de 'estática', que acaba de poner el método en la clase
Enemy.staticMethod = function() {...};
la diferencia es para la antigua que puede hacer
var enemy1 = new Enemy();
enemy1.theMethod(); // this in the theMethod refers to enemy1
y para este último hacer
Enemy.staticMethod(); // there is only one staticMethod for the entire class.
Para implementar un objeto:
function Enemy {
this.health = 100;
...
};
Enemy.prototype.attack = function() {
this.health -= 10;
...
};
var boogerMonster = new Enemy();
boogerMonster.attack();
En cuanto a la eliminación de un objeto, el recolector de basura se hará cargo del objeto si no tiene otras referencias a ella.
Sin embargo, a partir de la pregunta, parece que solo Conocer esta información le no llevar lejos. Coge un libro en JavaScript y / o hacer un poco de investigación en línea para comprender realmente los fundamentos de JavaScript.