Учебного трека «Введение в программирование» в рамках проекта «Твой курс: ит для молодежи» в рамках инициативы Microsoft YouthSpark



Pdf просмотр
страница2/3
Дата01.11.2016
Размер2.16 Mb.
Просмотров585
Скачиваний0
1   2   3
Байкеров друг с другом они говорят «Извините!». Примеры пути и кода на рис. 2.4 и 2.5. Код для столкновения следует написать для обоих Байкеров!
Рис. 2.4. Создание пути движения для двух объектов Байкер
Рис. 2.5. Код программы, в которой при столкновении Байкеров произносятся извинения

Дополнительное задание:

Выполнив задания этого занятия, поэкспериментируйте с игрой Tutorial 02. Проверьте, сможете ли вы составить программу, позволяющую управлять движением и стрельбой мотоцикла с помощью клавиатуры и мыши.

Изучите также мир 3D Flare Paths, содержащий интересные графические эффекты и примеры представления трехмерных объектов.


Пример путей, поднятых над поверхностью, вы можете увидеть в игре Rock Fight v09.
Чтобы играть в эту игру, ее необходимо изменить, обеспечив ее работоспособность при отсутствии контроллера. Кроме того, необходимо изменить начальный экран, отобразив на нем сведения о клавишах, используемых для управления игрой.
Внимание!
Чтобы изменить содержимое начального экрана, выберите на главной панели инструментов значок гаечного ключа и измените параметр Start Game With: World
Description («Отображать при начале игры: описание мира»).
Анализируя игры и играя в них, подумайте, каким образом используются пути и наклонные поверхности и как они влияют на активность действий в игре.
Упражнение 2. Создание клонов объектов.
Сюжет игры: три Аэростата стреляют по Самолету.
Для справки
Аэростат (возду шный шар) — летательный аппарат легче воздуха, использующий для полёта подъёмную силу заключённого в оболочке газа
(или нагретого воздуха
) с плотностью меньшей, чем плотность окружающего воздуха (согласно закону Архимеда
).
Для успешного выполнения упражнения и создания игры, четко следуйте предложенному алгоритму:

Создайте новый мир (Empty World). Разместите в нем объекты Самолет и
Аэростат.

Напишите для Аэростата код, выполняющий следующие действия: когда
Аэростат замечает вдали Самолет, звучит громкая музыка. Приближаясь к
Самолёту, Аэростат начинает светиться.

Составьте программу, позволяющую управлять Аэростатом с помощью клавиатуры. Пример программы приведен на рис.2.6, строки 1 - 3.

Сохраните мир под именем «Самолет».

Запустите программу на выполнение клавишей Esc. Подведите Аэростат к
Самолету, послушайте музыку, которая была выбрана для игры.

Рис. 2.6. Код, управляющий работой Аэростата

Создайте эскадрилью Аэростатов из трех объектов. Для этого щелкните на уже имеющемся Аэростате правой кнопкой мыши и выберите пункт «Копировать», затем поместите указатель мыши туда, где надо создать новый Аэростат, щелкните правой кнопкой мыши и выберите пункт «Вставить (Аэростат)». Повторите вставку так, чтобы на поле оказалось три Аэростата.

Запустите игру и убедитесь, что все Аэростаты управляются и двигаются одновременно.

Добавьте код, позволяющий каждому Аэростату выстреливать Импульсы, рис.2.6, строка 4. Сколько раз нужно изменить код?

Сохраните игру, запустите её и убедитесь в работоспособности.
Для справки
Клонирование — синоним копирования любых объектов.

Для начала посмотри ролик

Опция Родитель

Проверь себя!
После просмотра видео, экспериментируя с местностью в cреде Kodu, ответьте на вопросы:

Что позволяет опция Родитель?

Для чего предназначен инструмент, изображенный на рис. 2.7?
Рис. 2.7. Для чего нужен этот инструмент?


Какие параметры (опции) объектов можно изменять?

Как получить информацию по опциям?

По каким признакам можно понять, что для персонажа включена опция Родитель?

Как сделать действие дочерним? что это означает?
Упражнение 3. Создание порожденных объектов.
Сюжет игры: новая эскадрилья Аэростатов стреляет по самолету.
Для успешного выполнения упражнения и создания игры, четко следуйте предложенному алгоритму:

Откройте созданный в упражнении 2 мир Самолет.

Добавьте на игровое поле ещё одну группу Аэростатов, созданных при помощи технологии порождения. Для этого добавьте новый Аэростат, поменяйте его цвет, например, на желтый.

Переместите созданный Аэростат за пределы игрового поля. Данный объект не будет виден в процессе игры, а нужен только для того, чтобы создавать новые объекты Аэростат.

Задайте созданному Аэростату параметр Родитель. Для этого щелкните правой кнопкой мыши по Аэростату и выберите пункт «Изменить
установки». Активируйте параметр Родитель. Запустите программу на выполнение клавишей Esc и убедитесь, что новый Аэростат не виден.
Остановите программу и перейдите в режим редактирования (клавиша Esc).

Создайте три Аэростата в новой эскадрилье. Для этого скопируйте созданный родительский Аэростат (правая кнопка мыши), а затем трижды вставьте объект Аэростат в любое место игрового поля. Если поместить указатель мыши на один из Аэростатов, между исходным и новым объектом появится пунктирная линия, показывающая, что эти Аэростаты входят в цепочку порождаемых объектов (рис.2.8).
Рис.2.8. Порожденные объекты Аэростат связаны с родительским объектом


Напишите код для родительского Аэростата, заставляющий объекты двигаться к
Самолету. Обратите внимание, что теперь код надо написать только один раз (для родительского объекта), в порождаемых объектах все строки кода добавляются автоматически.

Сохраните программу, запустите её на выполнение, убедитесь в её работоспособности.

Задание для самостоятельной работы:
Напишите код, позволяющий издавать звук взрыва при столкновении
Аэростатов с Самолетом.
Упражнение 4.
Опция Родитель
Сюжет игры: Каждые 4 секунды объект Камень создает новый объект
етающая рыба. Камень стреляет ракетами по появляющимся рыбам.
Для успешного выполнения упражнения и создания игры, четко следуйте предложенному алгоритму:

Загрузите программу Kodu;

Загрузите мир Shooting Fish.

Очистите мир от объектов.

Создайте объект етающая Рыба и измените её установки, включив опцию
Родитель.

Добавьте объект Камень и задайте ему действия таким образом, чтобы каждые 4 секунды он создавал объект етающая Рыба. Используйте таймер и опцию
Родитель. Пример кода приведен на рис. 2.9.
Рис. 2.9. Пример кода для создания объекта Рыба

Создайте программу для Kodu, благодаря которой он сможет стрелять по появляющимся рыбам ракетами.

Измените установки Kodu так, чтобы перезарядка ракетами происходила за минимальное время.

Сохраните мир.

Блиц-опрос
1. Сколько различных путей можно нарисовать и запрограммировать в игре? a. 5 b. 7 c.
11
d. 256 2. Какое действие следует выбрать для того, чтобы в группе одинаковых объектов можно было изменять код каждого объекта отдельно? a. порождение b. копирование c. удаление d. перемещение
3. Где находится опция Родитель? a. в меню Программа b. в меню
Изменить установки
c. в Главном меню Редактировать мир
4. Какое действие следует выбрать для того, чтобы в группе одинаковых объектов можно было изменять код всех объектов одновременно? a. порождение b. копирование c. удаление d. перемещение
5. При выборе действия «сказать» опции Полный экран происходит... a. остановка игры и вывод запрограммированного текста на экран;
b. продолжение игры, запрограммированный текст выводится в левом верхнем углу экрана; c. продолжение игры, запрограммированный текст выводится на весь экран; d. остановка игры, запрограммированный текст произносится персонажем.
Вопросы профессионального программиста:
Итак, получив первый опыт программирования в Kodu, постарайтесь ответить на вопросы:

В чем преимущества визуального программирования? Сформулируйте свое определение
“Среда визуального программирования - это…”.
Обсудите с друзьями, какие задачи стояли перед разработчиками этой системы.
Попробуйте создать перечень таких задач. Например:
a.
Создать коллекцию ландшафтов b.
Запрограммировать возможность выбирать ландшафт из предлагаемого перечня и использовать его при моделировании территории c.
Создать коллекцию...
Это интересно...
Операционная система Windows 98 содержит 18 миллионов строк кода, а Windows XP (2002 год выпуска) уже 40 миллионов строк кода.
Это интересно...
Самая дорогостоящая в плане разработки игра называется ShenMue. Она была создана для
Sega Dreamcast и обошлась разработчикам в 20 миллионов долларов.
Это интересно...
Крупнейшим игровым издателем в мире является компания Electronic Arts, в которой работает почти 5000 человек и которая ежегодно издает игр на сумму 3 миллиарда долларов.



Занятие 3. Знакомство с визуальной средой программирования Kodu: подсчёт
баллов, индикатор здоровья, объект таймер

На этом занятии ты познакомишься с тем, как заставить игровой объект выполнять команды в определенные моменты времени, программировать характеристики и поведение персонажей, начислять им баллы за определенные действия, отслеживать успех действий в виде индикатора здоровья.
Использование таймера, индикатора здоровья и функции подсчета очков позволит придать игре профессиональный вид.
Для справки

Та ймер (
англ.
timer - счетчик времени, от time: время) - в программировании называется объект, возбуждающий событие по истечении заданного промежутка времени. Событием является посылка сообщения, вызов функции, установка параметров объекта и т.д.
Упражнение 1. Назначение времени действия игрового объекта
Сюжет игры: Завод выпускает мячи каждые 5 секунд и монеты каждые 10 секунд.
Для успешного выполнения упражнения и создания игры, четко следуйте предложенному алгоритму:

Загрузите программу Kodu

Создайте новый пустой мир

Добавьте объект Завод. При необходимости уменьшите размеры объекта.
Уменьшение размеров объекта выполняется через выбор команды Уменьшить размер в меню объекта (открывается щелчком правой кнопки мыши по объекту).

Напишите код для объекта Завод, согласно которому каждые 5 секунд Завод производит футбольный мяч, а каждые 10 секунд - монеты. Для написания кода щелкните правой кнопкой мыши по объекту Завод и выберите команду Программа.
В открывшемся окне введите программу, содержащую команды (пример приведен на рис. 3.1):
When Таймер - 5 сек действия - запуск мяч.
When Таймер - 10 сек действия - создать - монета.

Рис. 3.1. Пример кода с использованием опций таймера и подсчета баллов

Запустите программу на выполнение клавишей Esc. Обратите внимание на отличие действий Запуск и Создать. Действие Запуск характеризуется более динамичным действием по созданию объекта.

Сохраните созданный игровой мир под именем Завод. Для сохранения нажмите клавишу Home и в главном меню выберите команду «сохранить мой мир».
Задание для самостоятельной работы:

Попробуйте добавить код по выпуску снарядов каждые 60 секунд.

Добавьте объект Спутник и сделайте так, чтобы он запускал объекты
Звезда в интервале от 0 до 5 секунд. Пример кода приведен на рис. 3.2.
Рис. 3.2. Пример кода, когда таймер срабатывает случайным образом в интервале между 0 и 5 секундами
Для справки

Генератор псевдослучайных чисел (ГПСЧ, англ. Pseudorandom number generator, PRNG)
— алгоритм, порождающий последовательность чисел, элементы которой почти независимы друг от друга и подчиняются заданному распределению (обычно равномерному).

Упражнение 2.
Начисление баллов за действия объекта
Сюжет игры: За каждый мяч Завод получает 1 балл, за выпуск монеты - 5 баллов.
Для успешного выполнения упражнения и создания игры, четко следуйте предложенному алгоритму:

Загрузите программу Kodu.

Откройте созданный в упражнении 1 игровой мир Завод. Для загрузки мира выберите команду Загрузить мир в главном меню. Переход в главное меню через кнопку Home.

Добавьте код для подсчета баллов. Пример кода приведен на рис.3.1 в строках 2 и 4. В строке 5 записана команда остановить игру если будет нажата клавиша Пробел:
When клавиша Пробел Do конец.

Запустите программу на выполнение клавишей Esc. Примерный результат игры приведен на рис. 3.3. Нажмите клавишу Пробел для выхода из игры.
Рис. 3.3. Пример игры по выпуску мячей и монет и начисления баллов за работу

Сохраните игру.
Задание для самостоятельной работы:

Попробуйте изменить код программы так, чтобы за каждый мяч начислялось 10 баллов, а за каждый снаряд 20.

Напишите программу, которая позволяет остановить игру, если набрано
100 баллов.
Задание для самостоятельной работы:

В игре Shoting Fish задайте в программе объекта Камень строку, позволяющую производить счёт в игре (не забудьте сделать её дочерней).


В программе для объекта Камень задайте условие окончания игры: появление в мире более пяти рыб.

Добавьте в программе объекта етающая рыба строку, отвечающую за вычитание одного очка из общего счёта, когда рыба теряет жизнь.

Проведите эксперименты с разными условиями счёта.

Сохраните игру

Для начала посмотри ролик

Таймеры и подсчёт очков в Kodu Game Lab

Проверь себя!
1. Каким образом можно назначить увеличение/уменьшение счёта в игре?
2. Зачем может использоваться таймер? Как назначить измерение случайных интервалов времени?
3. Как сделать действие дочерним и каково основное свойство дочерних действий?
Дополнительное задание: Используя видео, создайте игру по предложенному сюжету.
Объект Тарелка, двигаясь свободно по путям, создаёт красные яблоки с интервалом в 5 с, а также зелёные, через случайный интервал времени (в интервале от 10 до 20 с). Байкер поедает красные яблоки, за что получает одно очко. При съедании зелёного яблока
Байкер уменьшает счёт на 5 очков. Сохраните созданную игру.
Упражнение 3. Использование индикатора уровня жизни.
Сюжет игры: Объект Байкер теряет здоровье при поедании зелёных яблок. При низком уровне здоровья объект Байкер светится красным.
Для успешного выполнения упражнения и создания игры, четко следуйте предложенному алгоритму:
1. Откройте игру, созданную в упражнении 2 занятия 1. Сделайте так, чтобы Байкер терял здоровье при поедании зелёных яблок. При низком уровне здоровья добавьте красное свечение объекта Байкер.
2. Используя меню «изменить установки», включите для объекта Байкер опцию
«показать жизни» (рис. 3.4).

Рис. 3.4. Изменение установки Показать жизни
Здесь же, в меню опций, установите максимальное количество жизней - 5.
3. При выходе из меню «изменить установки», вы увидите над объектом Байкер зелёную полосу, которая и является индикатором здоровья (рис. 3.5). Проверьте, остаётся ли индикатор видимым в режиме игры.
Рис. 3.5. Индикатор здоровья
4. В код объекта Байкер добавьте строку, уменьшающую количество жизней на одну при поедании зелёных яблок (рис. 3.6). Учтите, что ранее было запрограммировано поедание яблок при их касании, поэтому для условия используем «касание». Для действия воспользуйтесь карточкой «ущерб», которая находится в команде
«сражение».
Рис. 3.6. Строка кода, отвечающая за уменьшение уровня жизни

5. Запустите игру на выполнение и проследите за изменениями, происходящими с индикатором здоровья при поедании Байкером зелёных яблок (рис 3.7).
Рис. 3.7. Уменьшение уровня жизни
6. Добавьте свечение Байкера, сигнализирующее о критическом уровне жизни, используя соответствующий код в программе (рис. 3.8).
Рис. 3.8. Строка кода, программирующая свечение Байкера
7. Сохраните игру.
Задание для самостоятельной работы

Придумайте систему средств, увеличивающих и уменьшающих возможности персонажа в вашем игровом мире или в игровом мире другого учащегося.

Создав систему, подумайте, как можно использовать участки земли, объекты и других персонажей.

Чтобы повысить сложность, попробуйте ограничить продолжительность увеличения или уменьшения энергии с помощью таймера.







Блиц-опрос
1.
Для подсчета очков в Kodu используется инструмент a)
таймер b)
счет c)
геймпад d)
клавиши
2.
Для программирования времени выполнения команды в Kodu используется инструмент a)
таймер b)
счет c)
геймпад d)
клавиши
3.
Какое наибольшее время можно выставить в игре при помощи объекта Таймер? a)
30 секунд b)
60 секунд c)
90 секунд d)
30 минут
4. У каких объектов Kodu имеется действие «съесть»?
a)
Rover b)
Kodu c)
Байкер d)
Яблоко
5. В каком секторе кода находится команда остановки игры «конец»?
a)
Перейти b)
Игра c)
Setting d)
Действия
Вопросы профессионального программиста:

Выясните, для чего в программировании используется генератор случайных чисел?

Найдите в Интернете информацию о том, какое отношение к программированию имеет город Монте-Карло? Подсказка: это связано со случайными числами.

Это интересно...
История компьютерных игр начинается в
1947
году. В 1947 году
Томасом Т. Голдсмит- младшим и
Эстл Рей Манном был создан ракетный симулятор
— самая ранняя из известных интерактивных электронных игр.
Это интересно...
Построенный специально для съемок "Военных игр" компьютерный центр NORAD, стал самым дорогостоящим искусственным съемочным помещением своего времени и обошелся в 1 миллион долларов. Всего на съемки фильма ушло 12 миллионов, в прокате "игры" собрали 74 миллиона.
Это интересно...
С 1982 года, когда был изобретен Тетрис, игра была продана 40 миллионами копий по всему миру.
Это интересно...
В Microsoft работает общей сложностью 72 тысячи сотрудников (75% мужчин, 25% женщин), годовой оборот компании только от сетевых проектов составляет 44 миллиарда долларов.

Занятие 4. Использование страниц в Kodu Game Lab. Создание уникальных
историй и персонажей

На этом занятии ты познакомишься с тем, как использовать в игре несколько страниц, это пригодится тебе для того, чтобы назначить персонажу более продвинутые и сложные свойства и правила поведения. Использование многостраничного сценария в Kodu позволит повысить привлекательность игры и вывести ее на новый уровень.
Также мы рассмотрим правила, по которым создаются игры.
Для начала посмотри ролик
Видео “Использование страниц в Kodu Game Lab”
Проверь себя!
После просмотра видео ответьте на вопросы:

Зачем используются страницы в игре?

С помощью каких клавиш можно удалить/вставить код на страницу?

Как происходит перемещение между страницами кода?
Упражнение 1. Работа с несколькими страницами
Сюжет игры: Завод выпускает сначала мячи, потом монеты, а потом ракеты.
Для успешного выполнения упражнения и создания игры, четко следуйте предложенному алгоритму:

Загрузите программу Kodu.

Откройте мир Завод, созданный в упражнениях 1-2 занятия 3.

Измените код персонажа Завод, запрограммировав его на выпуск мячей каждую секунду. По прошествии 5 секунд перейти на страницу 2, пример кода приведен на рис. 4.1.
Рис. 4.1. Кодирование страницы 1 на выпуск мячей

·

На странице 2 создайте код, позволяющий выпускать монеты каждый 10 секунд. А через 30 секунд запрограммируйте перейти на страницу 3. Пример кода приведен на рис.4.2.
Рис. 4.2. Кодирование страницы 2 на выпуск монет

На странице 3 добавить код для выпуска ракет.

Запустить программу на выполнение. Посмотреть результаты. Сохранить мир.
·
Задание для самостоятельной работы:

Измените код так, чтобы переход на следующую страницу происходил не по времени, а при накоплении определенного количества баллов.

Измените игру Shooting Fish так, чтобы через 10 секунд после появления объект етающая Рыба направлялся к объекту Kodu, и при их встрече происходило бы окончание игры. Проверьте функциональность вашей игры.
Вопросы профессионального программиста:

Подумайте, с какой целью программисты используют подпрограммы
(вспомогательные алгоритмы)?

Как реализуется возможность создания и вызова подпрограмм в Kodu?

Какие дополнительные возможности вы получаете, используя подпрограммы?

Блиц-опрос
1. Сколько страниц находится в Kodu? a)
1 b)
5 c)
9 d)
12
e)
20 2. Какой команды нет в основном меню работы со страницами? a) Вырезать страницу b) Вставить страницу c) Переключить страницу d) Копировать страницу
3. Какая команда отсутствует в контекстном меню (вызывается правой кнопкой мыши) работы со строками? a) Вырезать строку b) Вставить строку c) Удалить строку d) Копировать строку


Поделитесь с Вашими друзьями:
1   2   3


База данных защищена авторским правом ©nethash.ru 2017
обратиться к администрации

войти | регистрация
    Главная страница


загрузить материал