Discuss Scratch

volk-alex
Scratcher
100+ posts

ВСЕ ВОПРОСЫ СЮДА!!!

DimonOFF wrote:

Гайс. Тема такая. 2d игра вид сверху. У меня есть 2 спрайта танка. Башня и корпус. По задумке дуло башни должно смотреть в направлении мышки. Но! Башня должна плавно поворачиваться к мышке. Как реализовать просчет оптимального поворота башни (как будет быстрее, повернутся налево или направо). Думаю уже неделю. Помогите, программисты.
Думаю для этого понадобится еще один спрйт, который будет всегда смотреть на мышь. Далее, вспоминая школьную геометрию, для башни вычисляем угол поворота(угол, на который должна повернуться башня чтобы дулом смотреть на мышь):

задать [da v] значение  (([направление v] от [Sprite1 v]) - (направление))

Теперь давайте подумаем о том, какие углы у нас могут получиться. Максимально возможный угол = 359(для удобства в расчетах возьмем 360), минимально = 0. Каждый из спрайтов может оказаться в каждом из двух положений. Следовательно:
0-360=-360
0-0=0
360-360=0
360-0=360
Соответственно минимальная разность направлений = -360, а максимальная = 360. Однако, по факту это одно и то же. Для уменьшения давления на моск давайте уменьшим все углы:

если <(da) < [-180]> , то
изменить [da v] на (360)
end
если <(da) > [180]> , то
изменить [da v] на (-360)
end

То есть ели у нас получится угол 360 в итоге мы получим 0. Чтобы понять как это работает и почему это так, а не иначе, представим мысленно круг. Подпишем на круге уголы 0, 90, 180 и 270. Далее радом с 270, 180 и 90 допишем соответственно -90, -180 и -270. Начертим где-то между -270 и -180 красным цветом какой-нибудь угол. А теперь обратим внимание на то, что этот же угол находится между 180 и 90! Например:
-230+360=130
В итоге все наши углы получаются между -180 и 180. Ну а далее уж как душа ляжет:

если <(da) < [0]> , то 
повернуть влево на (10) градусов


иначе
повернуть вправо на (10) градусов
end

Либо:

если <([модуль v] от (da)) > [1]> , то 
повернуть вправо на ((da) / (20)) градусов


end
Вот. Надеюсь смог помочь

Last edited by volk-alex (July 9, 2016 08:23:01)

DimonOFF
Scratcher
8 posts

ВСЕ ВОПРОСЫ СЮДА!!!

volk-alex wrote:

DimonOFF wrote:

Гайс. Тема такая. 2d игра вид сверху. У меня есть 2 спрайта танка. Башня и корпус. По задумке дуло башни должно смотреть в направлении мышки. Но! Башня должна плавно поворачиваться к мышке. Как реализовать просчет оптимального поворота башни (как будет быстрее, повернутся налево или направо). Думаю уже неделю. Помогите, программисты.
Думаю для этого понадобится еще один спрйт, который будет всегда смотреть на мышь. Далее, вспоминая школьную геометрию, для башни вычисляем угол поворота(угол, на который должна повернуться башня чтобы дулом смотреть на мышь):

задать [da v] значение  (([направление v] от [Sprite1 v]) - (направление))

Теперь давайте подумаем о том, какие углы у нас могут получиться. Максимально возможный угол = 359(для удобства в расчетах возьмем 360), минимально = 0. Каждый из спрайтов может оказаться в каждом из двух положений. Следовательно:
0-360=-360
0-0=0
360-360=0
360-0=360
Соответственно минимальная разность направлений = -360, а максимальная = 360. Однако, по факту это одно и то же. Для уменьшения давления на моск давайте уменьшим все углы:

если <(da) < [-180]> , то
изменить [da v] на (360)
end
если <(da) > [180]> , то
изменить [da v] на (-360)
end

То есть ели у нас получится угол 360 в итоге мы получим 0. Чтобы понять как это работает и почему это так, а не иначе, представим мысленно круг. Подпишем на круге уголы 0, 90, 180 и 270. Далее радом с 270, 180 и 90 допишем соответственно -90, -180 и -270. Начертим где-то между -270 и -180 красным цветом какой-нибудь угол. А теперь обратим внимание на то, что этот же угол находится между 180 и 90! Например:
-230+360=130
В итоге все наши углы получаются между -180 и 180. Ну а далее уж как душа ляжет:

если <(da) < [0]> , то 
повернуть влево на (10) градусов


иначе
повернуть вправо на (10) градусов
end

Либо:

если <([модуль v] от (da)) > [1]> , то 
повернуть вправо на ((da) / (20)) градусов


end
Вот. Надеюсь смог помочь
Спасибо тебе огромное! Все идеально работает! Добавил ещё ограничение, чтобы не выполнялось если переменная “da” равна нулю. Хочешь глянь https://scratch.mit.edu/projects/115377456/

Last edited by DimonOFF (July 9, 2016 09:21:34)

volk-alex
Scratcher
100+ posts

ВСЕ ВОПРОСЫ СЮДА!!!

DimonOFF wrote:

volk-alex wrote:

Спасибо тебе огромное! Все идеально работает! Добавил ещё ограничение, чтобы не выполнялось если переменная “da” равна нулю. Хочешь глянь https://scratch.mit.edu/projects/115377456/
Вау. Классная вещь
volk-alex
Scratcher
100+ posts

ВСЕ ВОПРОСЫ СЮДА!!!

Эй, форумчане! Есть ли среди вас любители космоса, космических путешествий или просто знакомые с темой? Ежли вам не трудно, покидайте пожалуйста ссылок на интерьеры космических кораблей, а так же идеи на тему того, какие помещения могут понадобиться путешественникам. Заранее спасибо

Last edited by volk-alex (July 10, 2016 07:52:07)

stenley90
Scratcher
100+ posts

ВСЕ ВОПРОСЫ СЮДА!!!

можно добавить танки и я уже знаю как!!!


“Подпись может быть разной, но понты не обязательны”
©Stenley90
stenley90
Scratcher
100+ posts

ВСЕ ВОПРОСЫ СЮДА!!!

все добавил теперь смотрите готово

“Подпись может быть разной, но понты не обязательны”
©Stenley90
DimonOFF
Scratcher
8 posts

ВСЕ ВОПРОСЫ СЮДА!!!

stenley90 wrote:

все добавил теперь смотрите готово
Извини, но ты подкинул очень годную идею и я её лучше реализовал. У танка теперь есть мозги. Чекни: *клик*
Supper_Alex_man
Scratcher
100+ posts

ВСЕ ВОПРОСЫ СЮДА!!!

Что делать если в Скретче оффлайн Редакторе не записывается звук?
stenley90
Scratcher
100+ posts

ВСЕ ВОПРОСЫ СЮДА!!!

а ты микрофон с наушниками включал

“Подпись может быть разной, но понты не обязательны”
©Stenley90
stenley90
Scratcher
100+ posts

ВСЕ ВОПРОСЫ СЮДА!!!

если <<<нет микрофона> или <наушников>>> , то 

остановить все звуки

иначе
записать звук
end

“Подпись может быть разной, но понты не обязательны”
©Stenley90
Supper_Alex_man
Scratcher
100+ posts

ВСЕ ВОПРОСЫ СЮДА!!!

stenley90 wrote:

а ты микрофон с наушниками включал
Наушники не вставлены.Когда я пытаюсь записать новый звук, появляется запись “recording”,но ничего не записывается!
stenley90
Scratcher
100+ posts

ВСЕ ВОПРОСЫ СЮДА!!!

у тебя какой браузер и система вот у меня хоть мне и 10 лет ноя на
My browser / operating system: Windows XP, Firefox 49.0, Flash 22.0 (release 5)

“Подпись может быть разной, но понты не обязательны”
©Stenley90
Supper_Alex_man
Scratcher
100+ posts

ВСЕ ВОПРОСЫ СЮДА!!!

stenley90 wrote:

у тебя какой браузер и система вот у меня хоть мне и 10 лет ноя на
My browser / operating system: Windows XP, Firefox 49.0, Flash 22.0 (release 5)
То есть ты не можешь помочь?
volk-alex
Scratcher
100+ posts

ВСЕ ВОПРОСЫ СЮДА!!!

Supper_Alex_man wrote:

Что делать если в Скретче оффлайн Редакторе не записывается звук?
Если НЕОБХОДИМО работать именно в офлайн, рекомендую попробовать записать звук на стандартную “Звукозапись”, а затем её загрузить в проект
Supper_Alex_man
Scratcher
100+ posts

ВСЕ ВОПРОСЫ СЮДА!!!

volk-alex wrote:

Supper_Alex_man wrote:

Что делать если в Скретче оффлайн Редакторе не записывается звук?
Если НЕОБХОДИМО работать именно в офлайн, рекомендую попробовать записать звук на стандартную “Звукозапись”, а затем её загрузить в проект
Спасибо,попробовал,записалось,но когда загружаю в скретч то пишет “Sorry,scratch was unable to load the sound безымянный”
DimonOFF
Scratcher
8 posts

ВСЕ ВОПРОСЫ СЮДА!!!

Supper_Alex_man wrote:

volk-alex wrote:

Supper_Alex_man wrote:

Что делать если в Скретче оффлайн Редакторе не записывается звук?
Если НЕОБХОДИМО работать именно в офлайн, рекомендую попробовать записать звук на стандартную “Звукозапись”, а затем её загрузить в проект
Спасибо,попробовал,записалось,но когда загружаю в скретч то пишет “Sorry,scratch was unable to load the sound безымянный”
Какой формат записи? mp3?
volk-alex
Scratcher
100+ posts

ВСЕ ВОПРОСЫ СЮДА!!!

DimonOFF wrote:

Supper_Alex_man wrote:

Какой формат записи? mp3?
Обычная “Звукозапись” сохраняет звуки в формате .wav и, если верить вики, это обстоятельство не должно создавать проблем с загрузкой их в проект. https://wiki.scratch.mit.edu/wiki/Sound
Однако, забугорные хацкеры рекомендуют переформатировать все файлы в mp3. https://scratch.mit.edu/discuss/post/2053885/
Но лучше просто воспользуйтесь онлайн-редактором.
volk-alex
Scratcher
100+ posts

ВСЕ ВОПРОСЫ СЮДА!!!

Ой! Да. Ещё попробуй название аудиофайла написать латиницей, что-то типо “sound1”
DimonOFF
Scratcher
8 posts

ВСЕ ВОПРОСЫ СЮДА!!!

Ребят, может кто подскажет как сделать физику для машин? Чтобы нельзя было на другую машину заехать ( 2d игра вид сверху ).

Last edited by DimonOFF (July 17, 2016 10:05:27)

stenley90
Scratcher
100+ posts

ВСЕ ВОПРОСЫ СЮДА!!!

ну есть 1 способ
когда щёлкнут по зелёному флагу
всегда
если <касается [машина сверху v] ?> , то
изменить x на (от машны)
иначе
если <клавиша [вверх v] нажата?> , то
идти (1) шагов
повернуть в направлении (вверх v)
иначе
идти (0) шагов

так же с задом

Last edited by stenley90 (July 17, 2016 10:30:15)


“Подпись может быть разной, но понты не обязательны”
©Stenley90

Powered by DjangoBB