Tube - https: //www.
Создание интерактивной карты регионов во Flash. На этот раз ко мне обратился один приятель и спросил, как это во Flash программисты делают всякие интерактивные штуки? Привело его к этому желание сделать у себя на странице «крутую» интерактивную карту. Чтобы при наведении надписи появлялись.. И дал мне собственноручно (надеюсь) нарисованную картинку: В итоге в выданном мне файле Map. Вот таким был слой карты: Хозяйке на заметку: Бесспорно, что надписи в фотошопе можно красиво раскрашивать, гнуть, поворачивать, но всё же лучше их всегда делать текстовыми полями в самом Flash.
Поверьте, это всегда пригодится. Надписи из Photoshop растризуются и импортируются как картинки, поэтому текст и эффекты нельзя будет потом изменить во Flash. Переделывать всё «как положено» и разрабатывать хорошую архитектуру у меня времени и желания не было. Сделал «на коленке». Может кому- нибудь пригодится.
Открываем Adobe Flash и создаём новый проект «Flash File (Action. Script 3. 0)». Щёлкаем в пустом месте и в окне Properties выставляем размер, равный размеру нашей карты, и частоту кадров около 2. Теперь импортируем в проект наши регионы. Выбираем File > Import > Import to Library и выбираем наш файл Map. Мы должны увидеть, что все слои из файла добавились в библиотеку в виде растровых графических элементов группы «Map. Assets». Для дальнейшей работы из графических элементов необходимо сформировать символы. Снимаем выделение, щёлкнув где- нибудь снаружи карты.
Теперь щёлкаем отдельно каждую надпись и конвертируем в символ типа Graphic. Для каждой области указываем понятное имя. Если же Вы делаете надписи текстовыми полями в самом Flash, то их конвертирование можно пропустить. В последнюю очередь не забудьте выделить и сконвертировать в символ Map.
Создайте для удобства группу «Графические символы» в окне библиотеки и перетащите в неё новые символы. Теперь нам необходимо превратить все объекты в сущности, которые будут нам доступны в процессе программировнания. Для этого необходимо каждый символ типа Graphic поместить в клип Movie. Clip и разрешить доступ к нему из скрипта. Щелкаем правой кнопкой, выбираем Convert to Symbol, указываем понятное имя (Belgorod, Bransk, Kaluga, ..) и разрешаем экспорт: Эту операцию нужно проделать со всеми спрайтами надписей и карты. Создайте группу «Клипы» и поместите в неё новые символы. Теперь мы сможем из скрипта создавать карту и области с помощью кодаvarmap = new.
Map. varsm = new. Smolensk. vartb = new. Tambov. .. У всех клипов указывается класс по умолчанию flash.
Movie. Clip. У нас все надписи будут интерактивные, то есть они будут следить за перемещением указателя мыши. Для добавления программного кода к элемену Smolensk можно было бы создать класс Smolensk в новом одноимённом файле «Smolensk. Но так как надписей у нас много мы сделаем общий класс и сделаем его родительским для всех надписей.
Создадим файл Reg. Label. as с пустым классом Reg. Label. Внимательно относитесь к регистру символов в именах файлов, классов, переменных и прочих наименований в скриптах.
Если назовёте файл с маленькой буквы, а в проекте напишете его с большой, то система этот файл не найдёт и выдаст ошибку. Второй слой будет содержать ключевые кадры с метками. Станем на нужный кадр, нажмём F6: Для добавления метки кадрам в свойствах фрейма укажем их имена Start, Over и Out: Третий слой переименуем в Actions и вставим точки останова. Для этого добавим два ключевых кадра, откроем окно скриптов командой Actions контекстного меню ключевого фрейма и вставим строкув оба ключевых фрейма. Таким образом мы подготовили разметку для трёх состояний клипа: Осталось создать анимацию текста.
В начале (на участке Start) текст должен быть невидимым. Щёлкаем по первому кадру, выделяем символ с текстом, выбираем значение Alpha (Непрозрачноть) у параметра Color и вместо 1.
Надпись должна пропасть. Создадим ещё несколько ключевых кадров напротив ключевых кадров других слоёв.
Установим непрозрачность надписи в этих кадрах 1. Идея в том, что на участке Over надпись должна появляться, а на участке Out исчезать. Чтобы эффекты были плавными создадим анимацию на участках появления и исчезания. На этом подготовка клипа надписи закончена. Вот что должно получиться: При перемещении линии- курсора прозрачность подписи должна плавно изменяться. На участке Start надпись не видна (непрозрачность 1%), на участке Over она появляется (анимация непрозрачности от 1% до 1. Out изчезает (от 1.
Не ставьте исчезание до 0%, так как при этом клип не будет реагировать на события мыши! Мод На S.T.A.L.K.E.R. - Чистое Небо1,5,10 Торрент. Кадры с метками Start, Over и Out будут использоваться для переключения состояний из скрипта.
Теперь можно скопировать фреймы и вставить на новые слои в клипах всех остальных надписей: Анимацию нижнего слоя скопировать не получится (придётся в каждом клипе вручную повторять расстановку прозрачности и создание анимации). Итак, клипы мы создали, осталось дописать скрипты.
Общий для всех надписей файл Reg. Label. as. При создании экземпляра надписи станем у клипа этой надписи на кадр Start и остановимся. При наведении и убирании указателя мыши будем переходить на соответствующие кадры (Over и Out). Добавим параметр, в котором будем хранить ссылку и обеспечим переход по этой ссылке по щелчку мыши.
Пора вывести это всё на экран. Вынесем программную часть проекта в отдельный файл. Создадим файл Region. Map. as с данным содержимым: package.
Результат можно увидеть здесь. При желании можно дополнить клипы надписей, добавив в них регионы, окрашенные немного другим цветом, и любые другие элементы и задав любые эффекты появления/исчезания. Это сделает карту более живой. Это не совсем полноценная карта. При быстрых перемещениях указателя мыши можно заметить яркое «моргание». Это связано с тем, что указатель уходит с надписи раньше, чем она полностью появляется. При этом с середины появления воспроизведение перескакивает на кадр Stop, где надпись в начале видна полностью.
Да и примитивные прямоугольные клипы с надписями не повторяют точно форму областей и не реагируют на наведение указателя на области в промежутках. Это издержки такого подхода. Итог: друг оказался доволен приобщению к Flash и даже смог кое- что переделать в этом прототипе.
Дабы сразу предупредить «звёздную болезнь начинающего мастера» скажу, что этот примитивный способ далёк от идеалов более- менее обдуманного профессионального проектирования и совершенства кода и годится лишь в качестве урока. В общем, «Все имена и события вымышлены.
Любое совпадение с реальными является случайностью. Не пытайтесь повторить это в реальной жизни».