Discuss Scratch
- Discussion Forums
- » Pусский
- » Идеи для создания новых функций в Scratch
- Kotik_Meow8
-
69 posts
Идеи для создания новых функций в Scratch
кстати я создал блогкБолее простой пример:ничего не понятно Очевидно, хочется Онлайна!
Тоесть пользователи смогут играть в мультиплеере. Основной смысл в двух вещах:
1) Хотелось бы сохранение прогресса:
Прошёл я 5 уровней в игрульке, выключил ПК и лёг спать. Проснулся и вынужден играть сначала. А так прогресс бы сохранялся на
аккаунте. Я понимаю что это занимает много памяти (для каждого аккаунта много проектов), но насколько это возможно хотелось бы.
2) Мультиплеер
Реализовать можно либо с помощью ID игрока или имена пользователей.
Для этого нужен список всех игроков.
Для удобства можно добавить блок:(Случайное число от () до () кроме [ v])Где последняя переменная должен быть список чисел.
Также переменные должны разделятся на публичные (переменная одинаковая для всех игроков) или локальные (только для одного пользователя)
Пример кликера онлайн:
Спрайт 1when this sprite clicked
if <(costume [number v]) = (1)> then
ask [] and wait
replace item (item # of (username) in [Список игроков v]) of [ID комнат игроков v] with (answer)
repeat until <not <(answer) = []>>
ask [] and wait
replace item (item # of (username) in [Список игроков v]) of [ID комнат игроков v] with (answer)
end
set [ID v] to (answer)
switch costume to [Кнопка выхода v]
if <not <[ID комнат v] contains (answer) ?>> then
add (answer) to [ID комнат v]
add [0] to [Результаты комнаты v]
end
broadcast [Показать v]
else
replace item (item # of (username) in [Список игроков v]) of [ID комнат игроков v] with []
switch costume to [Ввод ID v]
broadcast [Скрыть v]
end
when green flag clicked
forever
if <not <(item (item # of (username) in [Список игроков v]) of [ID комнат игроков v] :: list) = []>> then
show list [Список комнаты (локальный) v]
set [I v] to [1]
repeat until <(length of [Список игроков v] :: list) < (I)>
if <(item (I) of [ID комнат игроков v] :: list) = (ID)> then
add (item (I) of [Список игроков v] :: list) to [Список комнаты (локальный) v]
end
change [I v] by (1)
end
wait (0.1) secs
delete all of [Список комнаты (локальный) v]
else
hide list [Список комнаты (локальный) v]
end
end
Спрайт 2when I receive [Показать v]
show
when I receive [Скрыть v]
hide
when this sprite clicked
replace item (item # of (ID) in [ID комнат v]) of [Результаты комнат v] with ((item (item # of (ID) in [ID комнат v]) of [Результаты комнат v] :: list) + (1))
При этом из локальных только
I
ID
Список комнаты (локальный)
Теперь вы можете зайти в комнату с любым именем и вместе с другими игроками кликать на кнопку.
Легко, но классно!
К примеру я хочу сделать игру где пользователи получают “1” (что-то типа статуса) причём только когда я (создатель игры) находится на сервере:when green flag clicked
forever
if <[Список игроков v] contains [Vaduha_2--1] ?> then
set [Статус v] to [1]
end
end
Более детально:
к примеру на сервере находятся:
Вася
Петя
Лёша
Тогда список игроков будет состоять из 3 элементов:
1) Вася
2) Петя
3) Лёша
Пете захотелось кушать, и он вышел из игры.
Тогда список обновится:
1) Вася
2) Лёша
И (это кстати я забыл сказать) сработает блок события:Игрок (X) вышел. Его место: (Y)(Можно переименовать)
В данном случае X = Петя, а Y = 2 потому что он был на втором месте перед тем как вышел.
Но сейчас такого блока нет.
Теперь захожу Я. Список обновился:
1) Вася
2) Лёша
3) Vaduha_2–1
Теперь (следуя коду) условие Если (а именно содержит ли список игроков Vaduha_2–1?), а значит локальная для каждого игрока переменная Статус изменяется на 1.
Теперь у Васи, Лёши и Vaduha_2–1 Статус = 1
Vaduha_2–1 выходит из игры.
Список:
1) Вася
2) Лёша
Заходит Марина:
1) Вася
2) Лёша
3) Марина
Если мы посмотрим глазами Марины то Статус = 0, а глазами Васи Статус = 1 (это локальная переменная)
Теперь уже Вася уходит поспать, выключает компьютер.
Заходит на следующий день, а статус так и остался равным 1 (его глазами естественно).
Теперь более подробно?
turn video [видео в ютубе v]
- Sasha-mouse
-
100+ posts
Идеи для создания новых функций в Scratch
Я не понял, что он должен делать.кстати я создал блогкБолее простой пример:ничего не понятно Очевидно, хочется Онлайна!
Тоесть пользователи смогут играть в мультиплеере. Основной смысл в двух вещах:
1) Хотелось бы сохранение прогресса:
Прошёл я 5 уровней в игрульке, выключил ПК и лёг спать. Проснулся и вынужден играть сначала. А так прогресс бы сохранялся на
аккаунте. Я понимаю что это занимает много памяти (для каждого аккаунта много проектов), но насколько это возможно хотелось бы.
2) Мультиплеер
Реализовать можно либо с помощью ID игрока или имена пользователей.
Для этого нужен список всех игроков.
Для удобства можно добавить блок:(Случайное число от () до () кроме [ v])Где последняя переменная должен быть список чисел.
Также переменные должны разделятся на публичные (переменная одинаковая для всех игроков) или локальные (только для одного пользователя)
Пример кликера онлайн:
Спрайт 1when this sprite clicked
if <(costume [number v]) = (1)> then
ask [] and wait
replace item (item # of (username) in [Список игроков v]) of [ID комнат игроков v] with (answer)
repeat until <not <(answer) = []>>
ask [] and wait
replace item (item # of (username) in [Список игроков v]) of [ID комнат игроков v] with (answer)
end
set [ID v] to (answer)
switch costume to [Кнопка выхода v]
if <not <[ID комнат v] contains (answer) ?>> then
add (answer) to [ID комнат v]
add [0] to [Результаты комнаты v]
end
broadcast [Показать v]
else
replace item (item # of (username) in [Список игроков v]) of [ID комнат игроков v] with []
switch costume to [Ввод ID v]
broadcast [Скрыть v]
end
when green flag clicked
forever
if <not <(item (item # of (username) in [Список игроков v]) of [ID комнат игроков v] :: list) = []>> then
show list [Список комнаты (локальный) v]
set [I v] to [1]
repeat until <(length of [Список игроков v] :: list) < (I)>
if <(item (I) of [ID комнат игроков v] :: list) = (ID)> then
add (item (I) of [Список игроков v] :: list) to [Список комнаты (локальный) v]
end
change [I v] by (1)
end
wait (0.1) secs
delete all of [Список комнаты (локальный) v]
else
hide list [Список комнаты (локальный) v]
end
end
Спрайт 2when I receive [Показать v]
show
when I receive [Скрыть v]
hide
when this sprite clicked
replace item (item # of (ID) in [ID комнат v]) of [Результаты комнат v] with ((item (item # of (ID) in [ID комнат v]) of [Результаты комнат v] :: list) + (1))
При этом из локальных только
I
ID
Список комнаты (локальный)
Теперь вы можете зайти в комнату с любым именем и вместе с другими игроками кликать на кнопку.
Легко, но классно!
К примеру я хочу сделать игру где пользователи получают “1” (что-то типа статуса) причём только когда я (создатель игры) находится на сервере:when green flag clicked
forever
if <[Список игроков v] contains [Vaduha_2--1] ?> then
set [Статус v] to [1]
end
end
Более детально:
к примеру на сервере находятся:
Вася
Петя
Лёша
Тогда список игроков будет состоять из 3 элементов:
1) Вася
2) Петя
3) Лёша
Пете захотелось кушать, и он вышел из игры.
Тогда список обновится:
1) Вася
2) Лёша
И (это кстати я забыл сказать) сработает блок события:Игрок (X) вышел. Его место: (Y)(Можно переименовать)
В данном случае X = Петя, а Y = 2 потому что он был на втором месте перед тем как вышел.
Но сейчас такого блока нет.
Теперь захожу Я. Список обновился:
1) Вася
2) Лёша
3) Vaduha_2–1
Теперь (следуя коду) условие Если (а именно содержит ли список игроков Vaduha_2–1?), а значит локальная для каждого игрока переменная Статус изменяется на 1.
Теперь у Васи, Лёши и Vaduha_2–1 Статус = 1
Vaduha_2–1 выходит из игры.
Список:
1) Вася
2) Лёша
Заходит Марина:
1) Вася
2) Лёша
3) Марина
Если мы посмотрим глазами Марины то Статус = 0, а глазами Васи Статус = 1 (это локальная переменная)
Теперь уже Вася уходит поспать, выключает компьютер.
Заходит на следующий день, а статус так и остался равным 1 (его глазами естественно).
Теперь более подробно?turn video [видео в ютубе v]
- Vaduha_2--1
-
4 posts
Идеи для создания новых функций в Scratch
Это расценивать как сарказм?turn video [видео в ютубе v]
Last edited by Vaduha_2--1 (Nov. 17, 2024 12:47:40)
- UJOP999
-
100+ posts
Идеи для создания новых функций в Scratch
кстати я создал блогкturn video [видео в ютубе v]
Scratch Team навряд-ли понравится такая идея. Большая часть аудитории YouTube это - 14+.
- Kotik_Meow8
-
69 posts
Идеи для создания новых функций в Scratch
я включю видео Желейнотельного валерыкстати я создал блогкturn video [видео в ютубе v]
Scratch Team навряд-ли понравится такая идея. Большая часть аудитории YouTube это - 14+.
- Kotik_Meow8
-
69 posts
Идеи для создания новых функций в Scratch
или влада а4я включю видео Желейнотельного валерыкстати я создал блогкturn video [видео в ютубе v]
Scratch Team навряд-ли понравится такая идея. Большая часть аудитории YouTube это - 14+.
- kattysha
-
35 posts
Идеи для создания новых функций в Scratch
Есть идея блока (может кто-то его уже предлагал)
Многие знают есть блоки
А не все сразу или после остановки продолжить какой-то звук
Поэтому я придумал блоки
Продолжить звук: продолжает звук на том месте где остановился,
Остановить звук: останавливает определённый звук.
Многие знают есть блоки
play sound [ v]И
stop all soundsНо иногда надо остановить некоторые звуки
А не все сразу или после остановки продолжить какой-то звук
Поэтому я придумал блоки
resume sound [ v]И
stop [ v] soundКак вы уже поняли функционал их прост:
Продолжить звук: продолжает звук на том месте где остановился,
Остановить звук: останавливает определённый звук.
- kattysha
-
35 posts
Идеи для создания новых функций в Scratch
кстати я создал блогкturn video [видео в ютубе v]
Scratch Team навряд-ли понравится такая идея. Большая часть аудитории YouTube это - 14+.
И специально печатать картинку 16:9 на итак маленьком экране 4:3 не имеет логики
- greg1234567890f
-
1000+ posts
Идеи для создания новых функций в Scratch
Некоторые видео на ютубе 4:3кстати я создал блогкturn video [видео в ютубе v]
Scratch Team навряд-ли понравится такая идея. Большая часть аудитории YouTube это - 14+.
И специально печатать картинку 16:9 на итак маленьком экране 4:3 не имеет логики
- s_ecialkai
-
81 posts
Идеи для создания новых функций в Scratch
<Устройство пользователя это [PC v]>Позволит самому контролировать когда надо мобильный джойстик и когда WASD
<Устройство пользователя это [Мобильное v]>
- kattysha
-
35 posts
Идеи для создания новых функций в Scratch
Некоторые видео на ютубе 4:3кстати я создал блогкturn video [видео в ютубе v]
Scratch Team навряд-ли понравится такая идея. Большая часть аудитории YouTube это - 14+.
И специально печатать картинку 16:9 на итак маленьком экране 4:3 не имеет логики
Но только НЕКОТОРЫЕ
- Kotik_Meow8
-
69 posts
Идеи для создания новых функций в Scratch
Перевел и поправил Есть идея блока (может кто-то его уже предлагал)
Многие знают есть блокивключить звук [ v]::soundИостановить все звукиНо иногда надо остановить некоторые звуки
А не все сразу или после остановки продолжить какой-то звук
Поэтому я придумал блокипродолжить звук [ v]::soundИостановить звук [ v] ::soundКак вы уже поняли функционал их прост:
Продолжить звук: продолжает звук на том месте где остановился,
Остановить звук: останавливает определённый звук.
- Kotik_Meow8
-
69 posts
Идеи для создания новых функций в Scratch
Сделай те блок
перейти в скретч [1.4 v]::#1f9b00
- kattysha
-
35 posts
Идеи для создания новых функций в Scratch
Количество спрайтов можно увидеть через @дд0ны скретча 1. добавить возможность создавать ботов для своих студий в редакторе скретч. например, для модерации.
2. создать такие блоки:(количество спрайтов)
(количество блоков кода в спрайте)
- kattysha
-
35 posts
Идеи для создания новых функций в Scratch
Спасибо.Перевел и поправил Есть идея блока (может кто-то его уже предлагал)
Многие знают есть блокивключить звук [ v]::soundИостановить все звукиНо иногда надо остановить некоторые звуки
А не все сразу или после остановки продолжить какой-то звук
Поэтому я придумал блокипродолжить звук [ v]::soundИостановить звук [ v] ::soundКак вы уже поняли функционал их прост:
Продолжить звук: продолжает звук на том месте где остановился,
Остановить звук: останавливает определённый звук.
- kattysha
-
35 posts
Идеи для создания новых функций в Scratch
Объясняю : во первых хоть и все поймут но некоторым надо подробно объяснить логику блока . Во вторых : зайди в веб архив вбей сайт скретча найди первый снапшот (версия сайта заснятая вэйбэк машиной в определённое время : час,минута,секунда) сайта и включи его. Сделай те блокперейти в скретч [1.4 v]::#1f9b00
Или просто установи Адоб аир и поставь с сайта скретча 1.4/2.0 версии скретча ведь стилизацию сайта менять блоками нельзя а оформление увы всегда будет таким.
- greg1234567890f
-
1000+ posts
Идеи для создания новых функций в Scratch
Варианты:Объясняю : во первых хоть и все поймут но некоторым надо подробно объяснить логику блока . Во вторых : зайди в веб архив вбей сайт скретча найди первый снапшот (версия сайта заснятая вэйбэк машиной в определённое время : час,минута,секунда) сайта и включи его. Сделай те блокперейти в скретч [1.4 v]::#1f9b00
Или просто установи Адоб аир и поставь с сайта скретча 1.4/2.0 версии скретча ведь стилизацию сайта менять блоками нельзя а оформление увы всегда будет таким.
- Написать в консоль “sudo apt install scratch” и будет скретч 1.4 (только для Debian и Ubuntu)
- Попробовать онлайн на https://scratcharchive.naleksuh.com/ (нажми “run” возле версии которую вы хотите запустить)
- Скачать с официального сайта, но в Скретч 1.4 движок был не Adobe Air, а Squeak
Last edited by greg1234567890f (Dec. 3, 2024 10:19:06)
- Crumbcrumbtheducky
-
7 posts
Идеи для создания новых функций в Scratch
Все сразу, этот блок выглядит вот так:найди в поиске скретча “secret blocks” и он может быть в одном из проектов Вернуть блоквсе сразу {
}::control
этот блок выполняет всё что внутри без обновления экрана. Мне бы очень пригодился этот блок, а то мне надоело делать вот так:когда я получу [game over v]
BOOM
определить BOOM
повторить (40) раз {
создать клон [самого себя v]
}::loop control
- Crumbcrumbtheducky
-
7 posts
Идеи для создания новых функций в Scratch
словари наверное будут хорошей идеей
(словарь там какой то)Словари это то же самое что и списки, но каждый элемент что-то означает
- Crumbcrumbtheducky
-
7 posts
Идеи для создания новых функций в Scratch
хочешь в старый скретч вернутся? ничё с этим я не поделаю Сделай те блокперейти в скретч [1.4 v]::#1f9b00