Очень простенький ролик, в котором работает текстовой блок Dynamic Text и кнопка, обеспечивающая генерирование случайного числа в интервале от 0 до 100 и вывод этого числа в текстовой блок. В ролике работает всего один кадр. Текстовому блоку дано имя fortuitous. А кнопке прописан скрипт:
on (release) { fortuitous = random (101); }
Создавая проект с ActionScript, часто требуется получить случайное числовое значение. Это позволяет внести элемент неожиданности в развитие происходящего на экране действия, без этого практически невозможно создать интересную игру. Однако, реализуется данное решение, элементарно просто. Достаточно, включить в скрипт функцию "Random"
Random (number)
Определяет (если следовать терминологии программистов - возвращает) число от 0 до указанного числа - number, например:
on (release) { pole = random(20); }
Присвоит текстовому полю под именем pole случайное число от 0 до 19. Если нам необходимо, сгенерировать число в диапазоне от 300 до 400 то это указывается следующим образом:
on (release) { pole = random(101)+300; }
Применив данную функцию, Вы сможете без проблем создать игру "Угадайка".
Все, что для этого необходимо: два слоя (один для игрового поля, а другой для скриптов), два редактируемых текстовых поля, пара кнопок и максимум 4 кадра:
В первом кадре компьютер "загадает" число, во втором будет ожидать ввода варианта, в третьем проверит Вашу интуицию (если не угадаете, вернется во второй кадр), а в четвертом поздравит с победой.
Оформление кадров
Первый кадр:
На первом слое нарисуйте игровое поле: Текстовое поле Inputtext без рамки под названием text.
Затем Текстовое поле для ввода числа пользователем под названием number.
Кнопку, для подачи сигнала о том, что число введено и можно проверять.
На кнопку напишем скрипт:
on (release, keyPress "<Enter>") { play(); }
Второй кадр и Третий кадр аналогичные (Для этого на слое с игровым полем в кадре №3 щелкните правой кнопкой мыши и выберите в контекстном меню Insert Frame (Вставить кадр).
Четвертый кадр:
Нарисуйте на нем, что-нибудь приятное, чтобы сообщить о том, что человек угадал.
И кнопку с надписью повторить.
На нее напишите скрипт:
on (release, keyPress "<Space>") { play(); }
Затем создайте новый слой и назовите Script.
В нем мы будем задавать наши скрипты для кадров.
Программирование
Первый кадр
В новом слое (Script) выделите правой кнопкой мыши первый кадр Actions / Действия.
Напишите следующий скрипт.
mynumber = random(20)+1; //(переменной присваивается любое число от 1 до 20)
text = "Введите число от 1 до 20" // (в поле text появится данная надпись);
На втором кадре.
Поставьте на этот Кадр метку wait
Не путайте слои (Мы работаем со слоем Script)
number = ""; (очищаем поле для ввода числа)
stop ();
На третьем кадре
if (number=="") { //поверяем введено ли число, если нет то переходим на первый фрейм и ждем ввода числа gotoAndStop ("wait"); } else if (mynumber<number) { text = "Мое число меньше!"; gotoAndStop ("wait"); // (Переход на второй кадр с меткой wait) } else if (mynumber>number) { text = "Мое число больше!"; gotoAndStop ("wait"); } else { play (); // Иначе проигрываем ролик дальше. } На четвертом кадре
stop ();
Задание данных в текстовом файле
На самом деле особых премудростей здесь нет. Достаточно указать имя переменной и ее значение, если переменных несколько, они разделяются знаком & (амперсанд). Например: part=Учебный курс Flash&autor=Голикова Марина вообще, согласно требованиям URLformencoded пробелы необходимо заменять на + или код %20, но как показывает практика работы с Flash, даже обычный текст обрабатывается вполне корректно (в том числе и переводы строк). Также обрабатываются коды ANSII если задавать их после % в шеснадцатиричном виде.
В том файле, который нам необходим для работы, укажем любой текст в качестве значения переменной tablo и сохраним под именем text1.txt. Теперь создайте проект с текстовым полем и кнопками. Содержание текстового файла
tablo=Привет!!!
Предположим, что текстовому полю, которое вы расположили на сцене типа Dynamic присвоено имя - "tablo", и при нажатии на первую кнопку (расположенную под текстовым полем) в него будет загружена информация из файла text1.txt, тогда скрипт для первой кнопки будет: on (release) { loadVariablesNum ("text.txt", 0); }
Так как имя текстового поля и переменной в файле совпадают, то как только данные будут загружены они автоматически присвоятся данному текстовому полю. скрипт для второй кнопки будет:
on (release) { tablo = ""; }
Мы присваиваем текстовому полю пустое значение, тем самым его очищаем. Обращайте внимание на цвет текста в текстовом поле и тип шрифта (Лучше всего использовать Times New Roman Cyr)
Для практического применения загрузки текстовых данных можно найти самое широкое и не только загрузка информации, но и создание различных сервисных приложений. Новостной ленты, гостевой книгиhttp://avtopd.bget.ru/master3/master3.