← Все вопросы

Как управлять спрайтом мышкой в Scratch?

Задан 5 месяцев назад446 просмотров2 ответа
9

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

2 ответа

13
✓ Принятый ответ — помог автору

Управлять мышкой очень легко — у Scratch есть готовые блоки «x мыши» и «y мыши» в голубой полке «Сенсоры». 🖱️ Они всегда знают, где сейчас курсор.

Способ 1 — спрайт целиком прилипает к мышке:

когда нажат зелёный флажок
всегда
    перейти к указателю мыши

Блок «перейти к указателю мыши» (полка «Движение») — самый простой. Спрайт будет всюду следовать за курсором. 🎯

Способ 2 — ракетка ездит только влево-вправо (как в арканоиде):

когда нажат зелёный флажок
всегда
    задать x = (x мыши)

Здесь меняется только x (лево-право), а высота остаётся на месте. Идеально для ракетки внизу экрана. 🏓

Способ 3 — только вверх-вниз (как в пинг-понге сбоку):

когда нажат зелёный флажок
всегда
    задать y = (y мыши)

Как собрать «задать x = x мыши»:

  1. Возьми блок «задать x =» из «Движения».
  2. В окошко перетащи круглый блок «x мыши» из «Сенсоров».

Частая ошибка: забыть цикл «всегда». Без него спрайт переедет к мышке только один раз и замрёт. Чтобы он постоянно следил за курсором — клади команду внутрь «всегда». ✅

5

Ещё пригодится блок «мышь нажата» (Сенсоры) — он отвечает «да», когда зажата кнопка мыши. Можно стрелять или рисовать, пока кнопка нажата:

всегда
    если <мышь нажата> то
        начать звук «Выстрел»

А блок «когда щёлкнут по спрайту» срабатывает при клике именно по герою — удобно для кнопок в меню. 🙂

Ваш ответ

Войдите, чтобы ответить на вопрос.