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

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,884
Записей в блоге: 7
Цитата:
Сообщение от Icida
iNils, а нельзя ли рассказать про эти методы или дать ссылку, где почитать? Не сталкивалась с таким ещё.
Допустим вы хотите сделать откат на 3 шага.
Значит вам нужно 3 клипа (в квадратных скобках глубина клипа)
mc1 [3]: Клип для 1 шага
mc2 [2]: Клип для 2 шага
mc3 [1]: Клип для 3 шага
mc0 [0]: Клип с суммарным изображением.


Все эти клипы находятся внутри еще одного (для простоты манипуляций)
Теперь когда вы собираетесь нарисовать первую линию, то она рисуется в клипе mc1.

Как только вы нажимаете мышь для рисования новой линии, по кругу меняете глубину клипов для откатов.

mc3 [3]
mc1 [2]
mc2 [1]
mc0 [0]


Теперь у нас на верху клип mc3, и новая линия рисуется уже в нем. Для следующей линии делаем тоже самое и вверху будет mc2.

Так мы добавили три линии, когда собиремся добавить 4-ую, пустого клипа для откатов уже не будет, поэтому (отступление: при заносе линии в клип, мы для этого клипа ставит значение переменной flag = true, что значит клип не пустой, и записываем там координаты 2- точек линии) мы меняем клипы по кругу опять и получаем самое начальное положение. Теперь считываем из верхнего клипа координты линии и рисуем их в mc0, в mc1 вызываем clear () и рисуем новую линию. Ну и так далее.

Когда собиремся делать откат, то есть нажать кнопку, мы ищем первый клип сверху где flag != true, меняем значение флага на false и вызываем clear ().
__________________
(и)Нильс.ru | Плагины для FlashDevelop


Последний раз редактировалось iNils; 07.01.2007 в 21:28.