Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 11.04.2010, 16:15
TTS вне форума Посмотреть профиль Отправить личное сообщение для TTS Найти все сообщения от TTS
  № 1  
Ответить с цитированием
TTS
 
Аватар для TTS

Регистрация: Jan 2002
Сообщений: 1,323
По умолчанию #initclip и инициализация переменных

Код:
#initclip
var a=10;
#endinitclip
trace(a);
пишет "undefined"
Что это? Баг или фича?
__________________
ВКЛЮЧИ МОЗГИ!!!
Одноразовых граблей не бывает. На большинство из них уже кто-то наступал. (c) Dindin

Старый 11.04.2010, 16:33
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 2  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,879
Записей в блоге: 7
Не баг и не фича. Цель какая?
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 11.04.2010, 16:52
TTS вне форума Посмотреть профиль Отправить личное сообщение для TTS Найти все сообщения от TTS
  № 3  
Ответить с цитированием
TTS
 
Аватар для TTS

Регистрация: Jan 2002
Сообщений: 1,323
выполнить инициализацию переменных до обращения к ним из другого мувика, и чтоб переменным не присваивались исходные значения каждый раз при переходе на 1-й кадр
__________________
ВКЛЮЧИ МОЗГИ!!!
Одноразовых граблей не бывает. На большинство из них уже кто-то наступал. (c) Dindin

Старый 11.04.2010, 17:00
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 4  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,879
Записей в блоге: 7
Код AS1/AS2:
#initclip
function Test() {
}
Test.prototype = new MovieClip();
Object.registerClass("libTest",Test);
Test.prototype.a = 10;
#endinitclip
trace(a);
libTest - это linkage символа в библиотеки
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 11.04.2010, 17:13
TTS вне форума Посмотреть профиль Отправить личное сообщение для TTS Найти все сообщения от TTS
  № 5  
Ответить с цитированием
TTS
 
Аватар для TTS

Регистрация: Jan 2002
Сообщений: 1,323
Спасибо.

И почему нельзя было сделать все просто и красиво? Почему через заднее место?..
__________________
ВКЛЮЧИ МОЗГИ!!!
Одноразовых граблей не бывает. На большинство из них уже кто-то наступал. (c) Dindin

Старый 11.04.2010, 17:48
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 6  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,879
Записей в блоге: 7
Так и сделали просто, а ваш вариант как раз и был через одно место.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 11.04.2010, 18:26
TTS вне форума Посмотреть профиль Отправить личное сообщение для TTS Найти все сообщения от TTS
  № 7  
Ответить с цитированием
TTS
 
Аватар для TTS

Регистрация: Jan 2002
Сообщений: 1,323
__________________
ВКЛЮЧИ МОЗГИ!!!
Одноразовых граблей не бывает. На большинство из них уже кто-то наступал. (c) Dindin

Старый 11.04.2010, 18:30
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 8  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,879
Записей в блоге: 7
Там же много всяких возможностей, о которых вы не подумали.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 11.04.2010, 18:55
TTS вне форума Посмотреть профиль Отправить личное сообщение для TTS Найти все сообщения от TTS
  № 9  
Ответить с цитированием
TTS
 
Аватар для TTS

Регистрация: Jan 2002
Сообщений: 1,323
Я вправе был ожидать от директивы с таким названием удобств инициализации свойств и методов клипа, в котором она прописана. На деле я получаю усложнение кода и плохую читаемость.
Назвали бы как-нибудь по-другому... Насколько понимаю, код, заключенный в #initclip..#endinitclip, вообще не имеет привязки к клипу, в котором прописан, и совершенно необязательно должен быть предназначен для инициализации.
Ну придется довольствоваться тем, что то есть.

Цитата:
Сообщение от iNils Посмотреть сообщение
Там же много всяких возможностей, о которых вы не подумали.
например что-нибудь навскидку?
__________________
ВКЛЮЧИ МОЗГИ!!!
Одноразовых граблей не бывает. На большинство из них уже кто-то наступал. (c) Dindin

Старый 11.04.2010, 19:12
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 10  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,879
Записей в блоге: 7
Это as1 который создавался 10 лет назад. Многие ошибки были учтены и появился as2. Поэтому требовать что-то сейчас уже поздно
Код:
function Test() {
}
Создали класс. С этого момента (с кодом ниже), все экземпляры данного клипа будет иметь не копию кода, а использовать шаблон, что съедает меньше памяти.
Код:
Test.prototype = new MovieClip();
Сделали его наследником от класса MovieClip, а ведь могли бы и быть и другие классы.
Код:
Object.registerClass("libTest",Test);
Связали наш класс с символом. Ведь класс мог и не иметь никакого отношения к данному символу.
Код:
Test.prototype.a = 10;
Создали свойство у всех экземпляров и дали ему начальное значение.
Если бы написали так
Код:
Test.a = 10;
то свойство было бы статичным, то есть его значение во всех клипах данного класса было бы одинаковым при изменение.

Теперь вы можете создать еще один клип, дать ему linkage libTest2 и связать с уже созданным классом
Код AS1/AS2:
#initclip
Object.registerClass("libTest2",Test);
#endinitclip
trace(this.a);
не описывая все повторно.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Создать новую тему Ответ Часовой пояс GMT +4, время: 02:32.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 02:32.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.