0

Я предполагаю, что Repeat() block in Scratch имеет какой-то внутренний счетчик, который увеличивает или уменьшает в начале или конце каждого раза вокруг блока.Можно ли получить доступ к внутреннему счетчику блока повторения царапин?

Можно ли каким-либо образом получить доступ к значению этого счетчика?

Я понимаю, что this можно сделать, чтобы иметь доступный счетчик, но меня интересует только это для потенциальной аналогичной реализации на другом языке, который я помогаю развиваться.

+1

Не изнутри Царапина, но если вы разрабатываете язык, вы, конечно, можете сделать его доступным. Я также рекомендую взглянуть на [Snap!] (Http://snap.berkeley.edu/), язык, основанный на Scratch; в частности, импортировать библиотеку инструментов и посмотреть на блок повтора оттуда - он поставляется с счетчиком. – Scimonster

ответ

1

Нет, но переменные ваш друг:

set counter to 0 
repeat times 
    change counter by 1 
    ... 
end 

Должно быть достаточно самодокументирующимся :)

Теперь вам даже не нужно смотреть на «внутренний счетчик»!

+0

Но ... Я спросил о внутреннем счетчике! –

+0

@NBZ В чем разница? Зачем вам нужно использовать внутренний счетчик? – towerofnix

+0

Вы, должно быть, пропустили мою заметку ниже горизонтальной линейки. Я увеличил размер шрифта сейчас. –

1

Ну, вроде ...

Существует блок-, называемый foreach блок, который работает точно так же, как repeat блока, за исключением вы можете выбрать переменную, чтобы установить счетчик цикла к.

Он был удален из списка блоков в ранней версии Scratch 2.0, и об этом мало кто знает, но вот рабочий пример на веб-сайте Scratch: For each v in number. Обратите внимание, что он не использует %m.list внутренне, поэтому вам нужно изменить JSON проекта с чем-то вроде ScratchEdit или текстовым редактором, чтобы выбрать переменную, отличную от v.

+0

Это не отвечает на мой вопрос. Кажется, правильный ответ: «Нет, ты не можешь!». –

+0

@NBZ Это повторение, просто способ доступа к внутренней переменной. Я думаю, что это почти то же самое. (Но нет, это не * строго * ответит на вопрос!) – wizzwizz4

 Смежные вопросы

  • Нет связанных вопросов^_^