Я прохожу курс повышения квалификации по C, SQL и т. д., и во вводном задании мы используем Scratch, с которым я не знаком. Короче говоря, я делаю игру, в которой летучая мышь полуслучайно прыгает по экрану, отскакивая от шаров, которые можно перемещать, щелкая по ним, и пытаясь добраться до яблока. Когда летучая мышь и яблоко соприкасаются (т.е. для моих целей, когда расстояние летучей мыши от яблока ‹ 50), летучая мышь выполняет анимацию победы. Кроме того, я запрограммировал яблоко на переключение костюмов на недоеденную версию, когда его расстояние от летучей мыши ‹ 50. Однако яблоко не делает этого, хотя процедуры летучей мыши выполняются правильно. Что еще более странно, если я повторно запущу программу после ее завершения, яблоко может появиться в своем недоеденном костюме.
Я пытался:
- Добавление дополнительных действий летучей мыши (отсюда и вращение) на случай, если программа завершается слишком рано, чтобы яблоко могло что-либо сделать. Те же результаты.
- Позволить смене костюма яблока срабатывать, когда его расстояние ‹ большее число, поэтому у него есть шанс переключиться до того, как летучая мышь выполнит свои критерии. Те же результаты.
- Посмотреть, может ли яблоко переключиться на недоеденный костюм в более простых условиях, например, прямо при запуске программы, на случай, если с самим костюмом возникнут какие-то проблемы. Это работает нормально.
Если я не ошибаюсь, на Scratch нет возможности переключиться в расширенный режим, где я мог бы видеть код под капотом; в противном случае я бы чувствовал себя более комфортно, разбираясь с проблемой оттуда, исходя из моего предыдущего опыта. Пожалуйста, дайте мне знать, если есть такая функция, которую мне не хватает, потому что я вполне могу решить проблему таким образом. Спасибо!