Как создать функциональную систему перетаскивания


Исходная информация


Как я уже говорил , я пытаюсь создать мод Plants vs. Zombies в Scratch . Моя главная забота по-прежнему связана с попыткой создать систему перетаскивания (щелкнув исходный пакет, а затем перетащив его), однако проблема все та же, например, в редакторе я могу перетаскиваю только исходный пакет, а в режиме предварительного просмотра я ничего не могу перетащить.



Что я пробовал (формат скретч-блоков)



Когда я щелкнул пакетик с семенами

      [scratchblocks]
when this sprite clicked
Greater than or equal to ([peashooter cost v]) (100)
[/scratchblocks]

ОпределитьGreater than or equal to (var) (number)

      [scratchblocks]
define Greater than or equal to (var) (number)
if <<[(var)] > [(number)]> or <[(var)] = [(number)] then
broadcast [message 1 v]
else
end
[/scratchblocks]

Код, когда пакет семян отправляет сообщение конкретному растению.

      [scratchblocks]
when I receive [message 1 v]
create clone of [myself v]
[/scratchblocks]

Код для перетаскивания клона

      [scratchblocks]
when I start as a clone
if <<mouse down?>> = [false]> then
forever
show
set [brightness v] effect to (40)
go to x: (mouse x) y: (mouse y)
end
else
delete this clone
end
[/scratchblocks]

Обратите внимание: в отличие от прошлого раза, я фактически инициализировал стоимость Peashooter:



Мой вопрос



Что я делаю неправильно, из-за чего код все равно будет таким?

1 ответ

При редактировании Scratch позволяет перетаскивать что угодно. Чтобы спрайт можно было перетаскивать в любое время, перейдите в раздел просмотра (голубой) и добавьте «установить режим перетаскивания на перетаскивание» и добавьте его в «при нажатии флага» в сорите, который вы хотите, чтобы его можно было перетаскивать. Это позволит вам перетаскивать спрайт, когда захотите. Вот как я бы создал систему перетаскивания, установил режим перетаскивания на перетаскивание, а затем провел циклический тест, если мышь нажата, если мышь не нажата, она переместит исходный пакет туда, где он должен быть. Таким образом, его можно перетаскивать, но когда игрок отпускает его, положение сбрасывается.

Другие вопросы по тегам