Лаб работа14. Лабораторная работа 14 Тема работы Случайное числовое значение
Скачать 36.5 Kb.
|
Лабораторная работа №14 Тема работы: Случайное числовое значение Цель работы: Изучить способы генерирования случайных чисел, познакомиться с примерами создания игровых программ. Генератор случайных чисел (Папка Лаб работа14, файл random.swf) Очень простенький ролик, в котором работает текстовой блок 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 кадра: В первом кадре компьютер "загадает" число, во втором будет ожидать ввода варианта, в третьем проверит Вашу интуицию (если не угадаете, вернется во второй кадр), а в четвертом поздравит с победой. Оформление кадров Первый кадр: На первом слое нарисуйте игровое поле: Текстовое поле Input text без рамки под названием text. Затем Текстовое поле для ввода числа пользователем под названием number. Кнопку, для подачи сигнала о том, что число введено и можно проверять. На кнопку напишем скрипт: on (release, keyPress " play(); } Второй кадр и Третий кадр аналогичные (Для этого на слое с игровым полем в кадре №3 щелкните правой кнопкой мыши и выберите в контекстном меню Insert Frame (Вставить кадр). Четвертый кадр: Нарисуйте на нем, что-нибудь приятное, чтобы сообщить о том, что человек угадал. И кнопку с надписью повторить. На нее напишите скрипт: on (release, keyPress " 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 text = "Мое число меньше!"; gotoAndStop ("wait"); // (Переход на второй кадр с меткой wait) } else if (mynumber>number) { text = "Мое число больше!"; gotoAndStop ("wait"); } else { play (); // Иначе проигрываем ролик дальше. } На четвертом кадре stop (); В результате должна получиться подобная программа – папка Лаб работа14, файл rnd.swf. На самом деле особых премудростей здесь нет. Достаточно указать имя переменной и ее значение, если переменных несколько, они разделяются знаком & (амперсанд). Например: part=Учебный курс Flash&autor=Голикова Марина Вообще, согласно требованиям URLformencoded пробелы необходимо заменять на + или код %20, но как показывает практика работы с Flash, даже обычный текст обрабатывается вполне корректно (в том числе и переводы строк). Также обрабатываются коды ANSI если задавать их после % в шеснадцатиричном виде. |