У меня есть «объект»:
function Rock()
{
this.size = 30.0;
this.body;
this.isDead = false;
this.vertexPosBuffer;
this.vertexColBuffer;
}
которую я даю функции:
Rock.prototype.Tick = function()
{
this.body.ApplyForce(new b2Vec2(0, 10), this.body.GetPosition());
}
и затем я делаю массив камней:
var rocks;
function NewRandomRock()
{
var newRock = new Rock;
var pos = new b2Vec2;
pos.x = Math.random()*(gl.viewportWidth+1);
pos.y = Math.random()*(gl.viewportHeight+1);
newRock.InitRand(pos);
rocks.push(newRock);
}
и затем я вызываю функцию Tick:
function TickRocks()
{
for(var rock in rocks)
{
rock.Tick();
}
}
Теперь проблема, я получаю следующую ошибку:
Uncaught TypeError: Объект 0 не имеет метода 'Tick'
Хотя методы «InitRand (...)», которые я так же добавляю в Скалу, работают ...
Что я делаю не так?