Материал из Скретч Вики

Пример проекта с одним спрайтом и скриптом.

Проект «один спрайт — один скрипт», или обычно сокращённо проект 1с1с — это проект где есть только один спрайт и один скрипт. Существуют ограничения, но большинство из них можно обойти. Раньше эти проекты были более популярными.[необходима цитата]

Методы

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

  • Движение нескольких спрайтов — спрайт поместит себя в определенный набор координат, поставит печать и отойдет, делая это в другом месте в другом костюме, чтобы создать иллюзию множества спрайтов.
  • Быстрые автолинии — чтобы быстро нарисовать линию между двумя точками, используйте этот скрипт:
когда щёлкнут по зелёному флагу
стереть всё
поднять перо
перейти в x: (0) y: (0)
опустить перо
перейти в x: (100) y: (100)
поднять перо

История

Идея 1с1с проектов не новая, но команда Скретча заметила, что проекты 1с1с становятся большой по популярностью.[1] Хотя многие проекты 1с1с были сделаны раньше, некоторые говорят, что LINE от RHY3756547 был первым крупным проектом с одним спрайтом и скриптом — этот проект, скорее всего, положил начало популярности 1с1с проектов.[необходима цитата] Также была студия дизайна Скретча с проектами 1с1с.[2]

Трудности

  • Блок ждать () секунд замедляет работу всего скрипта — одно из решений состоит в том, чтобы спрайт неоднократно изменял переменную, пока она не достигнет определенного значения. Это может быть преимуществом или недостатком, в зависимости от ситуации — это будет измеряться количеством кадров, а не количеством времени. Другое решение — сбросить таймер и заставить спрайт повторять свои обычные функции, пока таймер не станет больше или равен желаемому времени. Лучшее решение — сделать скрипт однокадровым.

Неоднозначности

Есть некоторые особенности Скретча, которые усложняют определение того, является ли проект 1с1с:

  • Клоны[3]. Хотя клоны представляют собой один и тот же спрайт, почти всегда имеется два блока шапки — один для создания клонов и один для выполнения скриптов для клонов. Однако есть способы сделать только один скрипт, например, использовать блок Когда () клавиша нажата
  • Мои блоки[4]. Определение пользовательского блока считается отдельным скриптом в редакторе Скретча, но они необходимы для запуска определенных функций без обновления экрана, что позволяет очень легко делать проекты, нарисованные пером, потому что экран может быть отрисован без большого лага в игре (даже если есть лаг в редакторе).

Варианты

0 спрайтов 1 скрипт (0с1с)

Некоторые пользователи, посчитав, что проекты «один спрайт — один скрипт» слишком просты, перешли к созданию проектов, которые работают только на одном скрипте на сцене — без спрайтов.

Некоторые приёмы для программирования таким образом следующие:

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

1 спрайт 1 скрипт 1 костюм (1с1с1к)

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

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

Источники

Cookie-файлы помогают нам предоставлять наши услуги. Используя наши сервисы, вы соглашаетесь с использованием cookie-файлов.