Модераторы: SoWa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Помогите разобрать код, затруднения в чтении 
:(
    Опции темы
Innuendo
Дата 22.6.2006, 13:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 745
Регистрация: 24.12.2005
Где: Молдова

Репутация: нет
Всего: 6



Приветсвую.
Я тут мануал читаю и разбираю примеры в мануале. К книге вообще идёт и болванка с этими примерами, но мне болванки не досталась, и что-то не понимаю я тут...
Тут такой пример:
Код

var game;Object =  new Object();
game.columns = 10;
game.rows = 10;
game.spacing = 30;
game.depth = 1000;
game.path = this.grid;
game.numberOfTypes = 8;

function buildGrid() {
    for (var j:Number=0; J<game.rows; ++j) {
        for (var i:Number =0; i<game.columns; ++i) {
            var name:String = "cell"+i+"_"+j;
            var x:Number = i*game.spacing;
            var y:Number = j*game.spacing;
            var type:Number=1;
            game.path.attachMovie("cell", name, ++gamedepth);
            game.path[name]._x =x;
            game.path[name]._y =y;
            game[name] = {x:i, y:j, name:name, type:type, clip:game.path[name]};
        }
    }
}

Как бы суть понятна:
Есть общий объект game, где и хранятся все данные.
Строится матрица - сетка из мувиклипов. Это понтяно, и алгоритм построения простейший.
Но вот как понять строку 6 строку? game.path =  this.grid. Чем тут является grid? эту мувик клип тоже или что? И для чего здесь this?
и как потом в 15-16 строках к нему обращаются как к массиву?
и вот в последней строке строится что-то. Т.е. объекты можно рассматриват как массивы тоже, и всегда можно сделать object[key1] и т.д.?  

Это сообщение отредактировал(а) Innuendo - 22.6.2006, 14:01


--------------------
=)
PM MAIL ICQ Jabber   Вверх
Maksys
Дата 22.6.2006, 17:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Future Splasher
***


Профиль
Группа: Завсегдатай
Сообщений: 1289
Регистрация: 15.6.2005
Где: Екатеринбург

Репутация: 3
Всего: 17



Цитата(Innuendo @  22.6.2006,  16:58 Найти цитируемый пост)
game.path =  this.grid.

Объект game имеет локальную переменку path в которую заносится спецификация this.grid... другими словами чтоб всевремя не писать this.grid юзают эту перемку path.
Цитата(Innuendo @  22.6.2006,  16:58 Найти цитируемый пост)
game.path[name]._x =x;
            game.path[name]._y =y;

Это ни как к массиву это как к объекту это равносильно:
Код

  game.pathcell11._y =y;.. напирмер т.к. перебор в цикле.


Цитата(Innuendo @  22.6.2006,  16:58 Найти цитируемый пост)
Чем тут является grid

в коде не видно, но это скорее всего мс или какой нить объект...

Цитата(Innuendo @  22.6.2006,  16:58 Найти цитируемый пост)
И для чего здесь this

чтобы не писать полностью находясь на данной временной линии например ты находишся на мс show а мс grid находится в show, а show является мс-ом _root и чтоб не писать:
Код

_root.show.grid

пишут:
Код

this.grid

поскольку мы уже в show.... короче книгу надо тебе так на пальцах не объяснить... 


--------------------
 С уважением, BiMaWa™©.
user posted image
user posted image
PM MAIL ICQ Skype GTalk   Вверх
Innuendo
Дата 22.6.2006, 18:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 745
Регистрация: 24.12.2005
Где: Молдова

Репутация: нет
Всего: 6



гы, ну спасибо. Думаю ещё разберусь.
Просто книга уже как-бы для того, кто знает ActionScript. Да и если б я болванку к книге взял, я бы сразу видел код вместе с объектами- легче было бы понять.

Добавлено @ 19:01 
а ещё:
а что "++gamedepth" эквивалентно "gamedepth++"? 


--------------------
=)
PM MAIL ICQ Jabber   Вверх
Maksys
Дата 23.6.2006, 06:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Future Splasher
***


Профиль
Группа: Завсегдатай
Сообщений: 1289
Регистрация: 15.6.2005
Где: Екатеринбург

Репутация: 3
Всего: 17



Цитата(Innuendo @  22.6.2006,  21:59 Найти цитируемый пост)
а что "++gamedepth" эквивалентно "gamedepth++"?  

Чертас два...
Первое это инкремент а потом присваивание, а второе наоборот... 


--------------------
 С уважением, BiMaWa™©.
user posted image
user posted image
PM MAIL ICQ Skype GTalk   Вверх
Innuendo
Дата 23.6.2006, 12:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 745
Регистрация: 24.12.2005
Где: Молдова

Репутация: нет
Всего: 6



т.е
++gamedepth =  gamedeth+=1
а gamedepth++ = gamedepth+1
? 


--------------------
=)
PM MAIL ICQ Jabber   Вверх
Maksys
Дата 23.6.2006, 20:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Future Splasher
***


Профиль
Группа: Завсегдатай
Сообщений: 1289
Регистрация: 15.6.2005
Где: Екатеринбург

Репутация: 3
Всего: 17



Для особо "ОДАРЕННЫХ":
Код

var game:Number=0;
var gameDepth:Number=10;
game=gameDepth++;
trace("game: "+game+" gameDepth: "+gameDepth);
game=++gameDepth;
trace("game: "+game+" gameDepth: "+gameDepth);

А это ты мог и сам напечатать.... 


--------------------
 С уважением, BiMaWa™©.
user posted image
user posted image
PM MAIL ICQ Skype GTalk   Вверх
Innuendo
Дата 23.6.2006, 21:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 745
Регистрация: 24.12.2005
Где: Молдова

Репутация: нет
Всего: 6



да, мог... спасибо.
Но вот если в цикле for i используется, то там в третьем параметре можно и i++ и ++i , один фиг будет? 


--------------------
=)
PM MAIL ICQ Jabber   Вверх
Maksys
Дата 23.6.2006, 22:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Future Splasher
***


Профиль
Группа: Завсегдатай
Сообщений: 1289
Регистрация: 15.6.2005
Где: Екатеринбург

Репутация: 3
Всего: 17



Эксперементируй быстрее проэксперементировать чем глумпые вопросы задавать... 


--------------------
 С уважением, BiMaWa™©.
user posted image
user posted image
PM MAIL ICQ Skype GTalk   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Flash"
AlDev
SoWa
  • Если вы хотите предложить кому-либо работу, то пишите или в личку, или оставляйте сообщения в специально предназначеном для этого форуме "Объявления о найме специалистов"
  • Один вопрос - одна тема. Не надо переходов от одного вопроса к другому.
  • Если вы хотите показать какой-нибудь ваш мульт, причём показать, а не предоставить исходник, то вам сюда
  • Вопросы по разработке интернет-приложений на Flex и вопросы по MXML пишите в раздел Flex
  • Смотрим в будущее. ActionScript 3 обсуждается в форуме ActionScript 3
  • Новости из мира Flash.
  • New! [code=ascript][/code] - подсветка ActionScript + wikipedia help

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, AlDev, SoWa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | ActionScript 1,2 | Следующая тема »


 




[ Время генерации скрипта: 0.0535 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.