понедельник, 4 мая 2015 г.

Совсем большая игра.

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



Перед вами - несколько иллюстраций из журнала Scratch Times, который я вам предлагаю по ссылке выше.

Пробуйте, создавайте, удачи!

Какие еще бывают игры?

Игра "Лабиринт"

Играет 1 игрок 

Цель игры - пройти лабиринт

Можно усложнить прохождение, добавив персонажа, который будет мешать, и столкновение с которым приведет к окончанию игры (см. игру "Поймай и не попадись", "персонаж 3" в программе)

Лабиринт рисуется на панели СЦЕНА - ФОНЫ - РИСОВАТЬ 

В конце лабиринта должна быть площадка отличного от стен лабиринта цвета - конечный пункт путешествия.

Лабиринт может быть, например, таким:


Вы видите сейчас лабиринт, нарисованный в графическом редакторе Скретча.

Это очень простая программа, я даже не буду заводить для нее отдельную страничку.

Смотрите, что должен уметь наш мячик:


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

Второй набор команд заставляет отскакивать от стен лабиринта.

Третий, самый маленький блок, сообщает, что выход найден.

Другой вариант использования лабиринта вы можете посмотреть, закачав и запустив Проект "Мячик на дорожке" - комбинируйте эти два проекта и создавайте свои игры!

Обучающая игра с картой

  • Играет 1 игрок
  • Все вопросы вставлены в программу заранее, правильные ответы - тоже.
  • При правильном ответе на карте появляется флажок в месте расположения города и задается следующий вопрос.
  • При неправильном ответе игра заканчивается.

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


Программа для флажка, который появляется. Каждый флажок - это отдельный спрайт. Он должен появляться в конкретном месте на карте и только по своей персональной команде. Поэтому, во-первых, когда будете устанавливать флажок, смотрите, чтоб в правильное место карты попал, а во-вторых, внимательно пишите правильные ответы. Ошибка в одну букву уже не даст возможности получить флажок...




Удачи вам в создании игр!

четверг, 30 апреля 2015 г.

Какие бывают игры?

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

Давайте договоримся:

  • в этой статье я буду описывать только принцип и сценарий каждой игры;
  • если вы решите, что будете делать именно такую игру, вы перейдете по соответствующей ссылке на отдельную страницу;
  • игры до конца учебного года вы делаете "маленькие", но для желающих отдельно я выложу материал о том, как создать настоящую большую игру.

"Поймай и не попадись"

Сценарий:

У вас есть персонаж 1. Например, мячик. Он летает по экрану сам по себе. Его мы будем ловить.

У вас есть персонаж 2. Например, собака. Она управляется с клавиатуры. Задача собаки - поймать как можно больше мячиков (персонаж 1). И при этом убежать от персонажа 3.

У вас есть персонаж 3. Это, например, бабушка. Она тоже двигается самостоятельно, но всегда в направлении персонажа 2. Если персонаж 3 касается персонажа 2, игра заканчивается.

Как сделать такую игру, читайте НА ЭТОЙ СТРАНИЦЕ



"Пинг-понг"



Играют 2 игрока.
  • Каждый из игроков управляет тележкой, которая двигается вверх-вниз (один управляет стрелками, второй - клавишами Q - вверх, A - вниз). 
  • Цель игры - не пропустить на цветную полосу за тележкой шарик. 
  • Когда шарик касается цветной полосы за тележкой, игрок с противоположной стороны поля получает 1 балл. 
  • Заданы 3 фона: 1 - игровой фон, 2 и 3 - выигрыш одного из игроков. 
  • Игра заканчивается, когда один из игроков набирает 10 баллов. 
  • После каждого "гола" мяч возвращается в центр поля.


Как сделать такую игру, читайте НА ЭТОЙ СТРАНИЦЕ

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




А если родители не разрешают ставить Scretch на компьютер?

Я очень понимаю родителей в этой ситуации. Мало ли что КРОМЕ оболочки программирования вы втихаря поставите? Десяток игрушек?

Идем по такой ссылке: ЗАЙДИ СЮДА

И программируем на Scretch в онлайн режиме.

Что делать, если дома нет компьютера.

Основная наша задача - научиться правильно составлять алгоритмы. Поэтому если компьютера дома нет - ничего страшного.

Берем тетрадь, карандаш и ручку. И учимся программированию так, как учились все очень-очень старые на сегодняшний день программисты. Те, кому сегодня 30 лет или даже больше.

Записываем алгоритмы в тетради. Только сверху пишем: Спрайт 1. А ниже, например, так:


Внимание! Меня не интересуют ваши художественные способности. В смысле. если будет нарисовано не очень красиво, но правильно с точки информатики - вы молодцы!

Что делать, если на домашнем компьютере нет программы Scratch

Отвечу на вопрос, заданный в теме сообщения.

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


Попросите взрослых помочь вам. Лучше всего - самого главного по компьютерам в семье.

Если у вас компьютер фирмы Apple, то его операционная система называется MAC OS  и вам нужно нажать на синие слова MacScratch1.4 dmg. Только не здесь, а на сайте, на который вы перешли в другом окне.

Если у вас компьютер с операционной системой Windows - ваша ссылка вторая по счету.

Если у вас компьютер работает с операционной системой Linux - ваша ссылка третья по счету.

Но сначала обязательно поговорите со взрослыми. Они знают, скорее всего, какая операционная система установлена.

пятница, 24 апреля 2015 г.

Урок 2.

Здравствуйте!

Только что (в пятницу вечером) я узнала, что урок в понедельник будет только у той части класса, которая приходит на 1 урок. Но это не значит, что у второй половинки класса урока не будет. Современные технологии позволяют нам работать, не встречаясь в школе. Поэтому:

  1. Урок будет выложен здесь;
  2. Вы сможете все задания выполнить дома, и не отстать от программы.
И еще: потом два понедельника у нас выходные. Это, конечно, хорошо - с точки зрения отдыха. Но плохо, с точки зрения изучения информатики. Поэтому вы получите задание на две недели выходных, здесь же, в блоге.

А теперь - начинаем урок!

Знаете, чем отличается программист, который ЗНАЕТ МАТЕМАТИКУ от программиста, который НЕ ЗНАЕТ МАТЕМАТИКУ? Второй получает значительно меньшую зарплату. Поэтому мы сейчас быстренько повторим ту математику, которая нам нужна на этом уроке.


Правильно! Это - угол! (Ну вы ведь это знаете, да?) По-украински "кут".
Давайте вспомним, какие бывают углы. На уроке мы будем растягивать надписи по доске к нужным картинкам, но если ты смотришь урок дома - просто перерисуй себе картинки и напиши, или распечатай картинку и соедини цветными карандашами...


Давай вспоминать. 

Угол, о который можно уколоться, он первый на картинке - это ОСТРЫЙ угол. 

Угол, который торчит, как фонарный столб (вторая из картинок) - стоит абсолютно прямо. Это ПРЯМОЙ угол.

И последний оставшийся из углов называется ТУПЫМ. (Это не значит, что он глупый, просто об него не уколешься).

Теперь давай разбираться с градусами. Ты же знаешь, что углы измеряют в градусах? Если вдруг нет - так я тебе только что про это рассказала. Кстати, это не те градусы, что на термометре.

Итак, начнем с ПРЯМОГО угла. Тут надо просто запомнить - он =90 градусов

Как из прямого угла сделать ОСТРЫЙ?  Возьмем прямой угол за стороны и начнем их сжимать. Когда мы что-то сжимаем - мы получаем всегда в результате что-то меньшее. Значит, острый угол МЕНЬШЕ 90 градусов. Математик запишет это так: < 90 градусов

Что осталось ТУПОМУ углу? Чтоб его получить, надо прямой угол растянуть. Значит, его значение будет БОЛЬШЕ 90 градусов, или, как запишут математики, > 90 градусов

Какая картинка получилась у тебя? У меня - вот такая:


Знаешь, зачем мы повторяли углы? Мы сегодня запустим в аквариум рыбок, и ты должен понимать, в какую сторону они будут поворачивать, если что.

А теперь давай представим себе, что ты специальный робот, который умеет рисовать. Такие роботы называются ГРАФОПОСТРОИТЕЛИ.
Для тебя написали программу. Ты находишься в месте, обозначенном рыжей точкой. Попробуй построить картинку по инструкции рядом с рисунком.


Интересно, что у тебя получится? О! Смотри, здесь есть 45 градусов, а мы о них не говорили... Без паники! 

45 это 90 разделить на 2, правильно? Значит, если ты поворачиваешь на 90 градусов - ты с одной стороны клеточки перебираешься на другую ее сторону. А если 45 градусов - делишь уголок пополам и смело шагаешь по диагонали, из угла клетки в противоположный угол. Только внимательно следи за направлениями поворотов!

Должно получиться вот так:


Если ты сидишь за домашним компьютером, быстренько делаем перерыв. Дай отдохнуть глазам! Отвернись от компьютера и посмотри на свою комнату. Составь себе программу, как дойти до двери, сделав не менее трех поворотов. Количество шагов прикинь примерное. Придумал программу? А теперь вставай и пробуй! Пока до двери не дойдешь, за компьютер не возвращайся!

Отдохнул? Здорово. Ты знаешь, кто это?

Этой голодной птичке нужна твоя помощь! НАЖМИ СЮДА и помоги животному!

Ты можешь славно поиграть с птичками. Мы взяли пятое задание, но их там много. Регистрируйся - и вперед! Удачи! Только не прямо сейчас, у нас еще пол урока осталось.

Сейчас я тебе расскажу еще одну математическую штуку. По-научному она называется "Система координат", но нам сегодня важно не это. Смотри: 


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

За движение ВЛЕВО или ВПРАВО отвечает буква Х.
За движение ВВЕРХ или ВНИЗ - буква У.
Центр экрана - это когда Х=0 и У=0. (Это не буквы "О", это нолики у Х и У, просто блог не знает математики...)
Если тебе надо идти ВПРАВО  - изменяй Х на нужное тебе число.
Если надо идти ВЛЕВО - тоже изменяй Х, только перед числом поставь знак "минус", вот такой:  "-".
Тот же принцип для движения ВВЕРХ и ВНИЗ, только мы меняем У.
Понял? Давай проверим! В классе мы опять будем растягивать картинки по доске, а дома соедини линиями описание движения и нужную команду.



Смотри, одна команда осталась без описания. Это команда 


Куда мы попадем при ее выполнении? Если ты ответил, что в центр экрана - ты большая умничка. А если нет - поднимись чуть выше, к картинке с прямоугольником, и прочитай еще раз.

Проверим, как ты сопоставил команды и действия?


Все угадал? Молодец!

Если не все - смотри на ответ и запоминай!

А теперь, наконец, открываем на компьютере Скретч!



Помнишь, как изменить СЦЕНУ?
Сначала щелкаем по "Сцена", потом в средней части программы выбираем "Фоны" - "Импорт" - "Nature" и найди там аквариум.

Как выбрать рыбку? Кот в аквариуме утонет...

Сначала щелкни внизу по маленькому котенку, который Спрайт 1. А потом по КРАСНОМУ, ЖЕЛТОМУ И ЗЕЛЕНОМУ кружкам. Точнее, по тем объектам, которые этими кружками отмечены.

Получилось? Теперь у тебя посреди аквариума рыбка? Тогда переключайся на вкладку "Скрипты" (слева от "Костюмов") и собери рыбке программку. Сейчас еще раз покажу, какую.

Рыбка нервно дергается по аквариуму после запуска, да? 
Во-первых, выбери для нее правило "Не поворачивать". Мы это на прошлом уроке учили. Вот среди этих кнопочек ищи:

А теперь измени в командах "Идти 5 шагов" число 5 на большее или меньшее число. Подбери такое, чтоб рыбка плавала нормально.

Теперь создадим еще один спрайт. Для этого нажмем на кнопку, отмеченную красным кружком, и найдем рыбку в папке "Животные". Папка по-английски называется как?


Выбираем Спрайт 2, переходим на вкладку "Скрипт" и создаем программу...


Смотри! Первая рыбка у нас плавает сама по себе. А вторая управляется с клавиатуры, стрелками.
Если стрелки не работают, проверь, правильно ли ты сцепил блоки "Если" в программе второй рыбки. Они должны быть "паровозиком", друг за другом, иначе, если ты вложил один блок в другой, например, вот так:


Ты даешь такую команду:

Если нажата стрелка влево, и при этом нажата стрелка вправо, идти влево.
Но, подождите, если стрелка вправо нажата - нам направо... и налево тоже... Куда плыть бедной рыбке? Будь аккуратен! Программа должна выглядеть именно так:


Запускай программу, проверяй!

Давай научим рыбок говорить? В программу Спрайт 1 правильно (подумай, как это - "правильно"? Должно ли новое попадать в скобочку "Всегда"?) добавь такую конструкцию:


А в программу Спрайт 2 добавь такой кусочек:

Запускай! Помнишь, что одной рыбкой управляешь ты?

А теперь внимание: 
  1. Что будет, если в блоке "Говорить..." количество секунд заменить на 2?
  2. Зачем нужны команды "Идти в х:...у..."?
Если ты разберешь эти два вопроса, тебе будет легче выполнить задание на выходные. Должно получиться примерно так:


Удачи! До встречи в блоге, на задании на выходные!