Как записать объекты

То что касается флеша, но не касается ВКонтакте API. Например проблемы при создании прыгающего мячика.

Как записать объекты

Сообщение MrDead » 15 мар 2014, 17:33

  1. public function createplatform():void
  2.         {
  3.             for (var i:uint=0; i<platform.length; i++)
  4.        {
  5.         for (var j:uint=0; j<platform[i].length; j++)
  6.         {
  7.          if (platform[i][j] > 0)
  8.          {
  9.           platforma = new Platforming;
  10.           platforma.width = platforma_width;
  11.           platforma.height = platforma_height;
  12.           platforma.x = j * size;
  13.           platforma.y = i * size;
  14.           platforma.gotoAndStop(platform[i][j]);
  15.           addChild(platforma);

По массиву создаются объекты класса Platforming. В каком виде они записываются? Или как их записать так, чтобы можно было в дальнейшем работать с этими объектами? Всего их создается около 8шт, мне нужно сделать так, чтобы они двигались, по нажатию на кнопку например
MrDead

 
Автор темы
Сообщения: 103
Зарегистрирован: 13 сен 2012, 00:46
Благодарил (а): 20 раз.
Поблагодарили: 0 раз.

Чтобы убрать блок с рекламой, зарегистрируйтесь на форуме или войдите.

Google
 



Re: Как записать объекты

Сообщение alexandr_ratush » 15 мар 2014, 18:54

Что вы имеете ввиду под "в дальнейшем работать с ними"?
Вы можете добавить эти объекты в массив, и в нужный момент в цикле перебирать их.

За это сообщение автора alexandr_ratush поблагодарил:
MrDead
Аватара пользователя
alexandr_ratush

 
Сообщения: 94
Зарегистрирован: 05 мар 2014, 21:47
Откуда: Ukraine
Благодарил (а): 2 раз.
Поблагодарили: 25 раз.

Re: Как записать объекты

Сообщение MrDead » 15 мар 2014, 19:19

Как мне их в массив добавить?

  1. public function createplatform():void
  2.         {
  3.             for (var i:uint=0; i<platform.length; i++)
  4.        {
  5.         for (var j:uint=0; j<platform[i].length; j++)
  6.         {
  7.          if (platform[i][j] > 0)
  8.          {
  9.          platformobj_1.push(platforma);
  10.           platforma = new Platforming;
  11.           platforma.width = platforma_width;
  12.           platforma.height = platforma_height;
  13.           platforma.x = j * size;
  14.           platforma.y = i * size;
  15.           platforma.gotoAndStop(platform[i][j]);
  16.           addChild(platforma);


Вроде добавились, но когда я перебираю, чтобы сделать движение

  1. public function goPlatform(e:Event):void
  2.         {
  3.             if (left_press_platform)
  4.             {
  5.             for (var i:uint = 0; i < platformobj_1.length; i++)
  6.             {
  7.                 for (var j:uint = 0; j < platformobj_1.length; j++)
  8.             {
  9.                
  10.             platformobj_1[i][j].x -= speed_platform;

Всё зависает и выдаёт
[Fault] exception, information=TypeError: Error #1009: Cannot access a property or method of a null object reference.
MrDead

 
Автор темы
Сообщения: 103
Зарегистрирован: 13 сен 2012, 00:46
Благодарил (а): 20 раз.
Поблагодарили: 0 раз.

Re: Как записать объекты

Сообщение alexandr_ratush » 15 мар 2014, 21:30

1. Тут ошибка, потому что вы добавляете еще не созданный объект. Поменяйте 9 и 10 строчку местами.
  1. platforma = new Platforming();
  2. platformobj_1.push(platforma);

2. А вы уверены что ваш массив platformobj_1 двумерный? Уберите в методе goPlatform один цикл, и должно заработать.
  1. var len:int = platformobj_1.length;
  2. for (var i:uint = 0; i < len; i++)
  3. {
  4.     platformobj_1[i].x -= speed_platform;
  5. }

За это сообщение автора alexandr_ratush поблагодарил:
MrDead
Аватара пользователя
alexandr_ratush

 
Сообщения: 94
Зарегистрирован: 05 мар 2014, 21:47
Откуда: Ukraine
Благодарил (а): 2 раз.
Поблагодарили: 25 раз.

Re: Как записать объекты

Сообщение MrDead » 15 мар 2014, 21:55

Спасибо. Действительно помогло.
Все разобрался) Спасибо большое, очень помогло!
MrDead

 
Автор темы
Сообщения: 103
Зарегистрирован: 13 сен 2012, 00:46
Благодарил (а): 20 раз.
Поблагодарили: 0 раз.


Вернуться в Программирование на Flash



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0

cron