Охрана труда:
нормативно-правовые основы и особенности организации
Обучение по оказанию первой помощи пострадавшим
Аккредитация Минтруда (№ 10348)
Подготовьтесь к внеочередной проверке знаний по охране труда и оказанию первой помощи.
Допуск сотрудника к работе без обучения или нарушение порядка его проведения
грозит организации штрафом до 130 000 ₽ (ч. 3 статьи 5.27.1 КоАП РФ).
Участие подтверждается официальными документами
  • Приказ Приказ о проведении
  • Положение Положение
  • Протокол Выписка из Протокола
  • Диплом Диплом победителя
  • Инновации Диплом за инновационную деятельность
  • Благодарность Благодарность
22.03.2025

МК Волк ловит яйца и вербу

Барабанщикова Анастасия Евгеньевна
МАОУ ДО "ДДТ "Эврика"
Конкурсная работа

г.Северобайкальск МАОУ ДО «ДДТ «Эврика»

Педагог дополнительного образования

программирование на языке Java

Барабанщикова Анастасия Евгеньевна

Мастер-класс:

игра на Java

"Волк с корзинкой собирает пасхальные яйца и вербу"

Цели:

  1. Познакомить учеников с основами программирования в Greenfoot.

  2. Научить создавать анимацию и управление персонажем.

  3. Развить творческое мышление, используя праздничную тематику.

Shape1

Шаги мастер-класса:

1. Подготовка проекта

  • Откройте Greenfoot и создайте новый проект. Назовите его, например, "EasterWolf".

  • Создайте новый мир (World) с фоном, который будет напоминать весенний пейзаж (например, зеленая трава, небо). Размер мира может быть 600x400 пикселей.

2. Создание классов

  • Класс "Волк с корзинкой" (WolfWithBasket): Это будет главный персонаж, которым управляет игрок. Волк будет двигаться влево и вправо по экрану, чтобы собирать падающие объекты.

    • Добавьте изображение волка с корзинкой (можно нарисовать или найти в интернете).

    • Напишите код для управления волком с помощью клавиш клавиатуры (например, стрелки влево и вправо).

//Коддлякласса WolfWithBasket

import greenfoot.*;

public class WolfWithBasket extends Actor {

public void act() {

move();

checkCollision();

}

public void move() {

if (Greenfoot.isKeyDown("left")) {

setLocation(getX() - 5, getY());

}

if (Greenfoot.isKeyDown("right")) {

setLocation(getX() + 5, getY());

}

}

public void checkCollision() {

if (isTouching(EasterEgg.class)) {

removeTouching(EasterEgg.class);

// Увеличить счетчик баллов

((MyWorld) getWorld()).updateScore(1); // Добавляем 1 балл за яйцо

}

if (isTouching(Willow.class)) {

removeTouching(Willow.class);

// Увеличить счетчик баллов

((MyWorld) getWorld()).updateScore(2); // Добавляем 2 балла за вербу

}

}

}

  • Класс "Пасхальное яйцо" (EasterEgg): Этот объект будет падать сверху вниз. Игрок должен поймать его волком.

    • Добавьте изображение пасхального яйца.

    • Напишите код, чтобы яйцо падало вниз и исчезало, если его не поймали.

//Коддлякласса EasterEgg

import greenfoot.*;

public class EasterEgg extends Actor {

public void act() {

setLocation(getX(), getY() + 2); // Падение вниз

if (isAtEdge()) {

getWorld().removeObject(this); // Удаление, если достигло края

}

}

}

  • Класс "Верба" (Willow): Этот объект также будет падать сверху, но его нужно будет ловить отдельно. Можно добавить дополнительные баллы за вербу.

    • Добавьте изображение веточки вербы.

    • Напишите код, аналогичный пасхальному яйцу.

//Коддлякласса Willow

import greenfoot.*;

public class Willow extends Actor {

public void act() {

setLocation(getX(), getY() + 2); // Падение вниз

if (isAtEdge()) {

getWorld().removeObject(this); // Удаление, если достигло края

}

}

}

Добавление счета

  • Создайте класс "Счет" (Score) для отображения количества собранных объектов.

  • Добавьте код для обновления счета при сборе яиц и вербы.

//Коддлякласса Score

import greenfoot.*;

public class Score extends Actor {

private int score = 0;

public void act() {

setImage(new GreenfootImage("Счет: " + score, 24, Color.WHITE, Color.BLACK));

}

public void addScore(int points) {

score += points;

}

}

В классе мира (MyWorld) добавьте объект Score и метод для обновления счета.

// Код для класса MyWorld

import greenfoot.*;

public class MyWorld extends World {

private Score score;

public MyWorld() {

super(600, 400, 1);

prepare();

}

private void prepare() {

score = new Score();

addObject(score, 50, 30); // Размещаем счет в верхнем левом углу

addObject(new WolfWithBasket(), 300, 350); // Размещаем волка внизу

spawnObjects();

}

public void updateScore(int points) {

score.addScore(points);

}

public void spawnObjects() {

// Периодически добавляем яйца и вербу

if (Greenfoot.getRandomNumber(100) < 5) {

addObject(new EasterEgg(), Greenfoot.getRandomNumber(600), 0);

}

if (Greenfoot.getRandomNumber(100) < 3) {

addObject(new Willow(), Greenfoot.getRandomNumber(600), 0);

}

}

public void act() {

spawnObjects();

}

}

 Завершение игры

  • Добавьте условие завершения игры, например, когда игрок соберет определенное количество объектов.

  • Выведите сообщение о победе.

// В классе MyWorld

public void act() {

spawnObjects();

if (score.getScore() >= 20) { // Условие победы

Greenfoot.stop();

showText("Поздравляем! Вы выиграли!", 300, 200);

}

}

. Запуск и тестирование

  • Запустите игру и протестируйте ее. Убедитесь, что волк двигается, собирает объекты, а счет обновляется.

Shape2





Дополнительные идеи:

  1. Добавьте анимацию волка (например, движение лап при ходьбе).

  2. Создайте разные типы пасхальных яиц с разными баллами.

  3. Добавьте препятствия, которые игрок должен избегать (например, падающие камни).

Shape3

Этот мастер-класс станет увлекательным способом изучить программирование в Greenfoot, а волк с корзинкой добавит игре уникальности и праздничного настроения!

Свидетельство участника экспертного совета жюри

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

У вас недостаточно прав для добавления комментариев.

Чтобы оставлять комментарии, вам необходимо авторизоваться на сайте. Если у вас еще нет учетной записи на нашем сайте, предлагаем зарегистрироваться. Это займет не более 5 минут.