PDA

Просмотр полной версии : странная проблема с var


dimaMJ
09.02.2013, 19:23
в классе есть функция в которое есть такой код
var grav:Number=0;
var gravity:Number = 2;
var touchingGround:Boolean = false;

_root.cat._y += grav;

grav += gravity;

при вызове этой ф-ции клип cat должен падать вниз, вызываю ф-цию (создаю экземпляр класса и вызываю)
клип стоит на месте долго не мог понять в чем проблема, потом взял создал другой клип и без классов решил проверить эту же ф-цию (то есть в самом клипе) тоже самое клип стоит, чуть поменял код (убрал var и :Number) чтоб вышло grav=0; клип стал падать
вопрос: что это за бред? мне нужно использовать классы обязательно, без var как я понимаю в них никак, и что с этим всем делать? как уже не пробовал подскажите как решить проблему может я что то не так делаю

Добавлено через 59 минут
и еще как я понимаю эти переменные должны быть в
onClipEvent(load)
{
}

а если они находятся в классе как их в таком случае туда поместить правильно ?

Hauts
10.02.2013, 14:03
dimaMJ, забудьте про "onClipEvent" :)

dimaMJ
10.02.2013, 15:58
dimaMJ, забудьте про "onClipEvent" :)

забыть?

Hauts
10.02.2013, 16:40
Да, именно так.

dimaMJ
10.02.2013, 17:27
Да, именно так.

а что место него использовать тогда?)

Hauts
10.02.2013, 17:28
someMovieClip.someVariable = "someValue"
someMovieClip.onEnterFrame = function(){...}


Пишите в кадрах или в классах, но не на самих мувиклипах.

dimaMJ
10.02.2013, 17:41
someMovieClip.someVariable = "someValue"
someMovieClip.onEnterFrame = function(){...}


Пишите в кадрах или в классах, но не на самих мувиклипах.

а нужно для всех мувиков прописывать это или можно один раз для всех к примеру в классе собраны экземпляры других классов (как бы общий класс) в нем можно прописать это и как я понимаю ссылка на этот общий класс должна быть в кадре типа
var Game:Gameloader = new Gameloader();
Game.load(); // грузит ф-цию в которой все экземлпяры и onEnterFrame = function()