#python #string #list #text
#python #строка #Список #текст
Вопрос:
Я создал текстовую игру в безделушке python. Я создал систему столкновений, которая активируется всякий раз, когда вы нажимаете клавишу (в каждой ключевой функции она проверяет, есть ли под вами блок после перемещения. если есть, это переместит вас на 1 ячейку назад, откуда вы пришли). Меня смущает то, что стены этапов работают отлично, но когда в середине этапов есть какие-либо блоки, вы можете пройти прямо через них. Нет сообщений об ошибках или чего-либо еще, что могло бы подсказать мне, откуда происходит сбой столкновения. Я попытался выстроить блоки в прямую линию, чтобы воспроизвести стену, но вы все равно можете пройти сквозь них.
Безделушка: https://trinket.io/library/trinkets/fc64f127d3
Ответ №1:
left, right, up, down
Все ваши функции используют глобальную level
переменную. render
Функция использует обновленную версию уровня, которая на уровне 2 включает блок. Однако ваши функции управления направлением по-прежнему используют уровень 1, который не имеет блока.
Для быстрого исправления вы можете добавить global level
в начало своей render
функции, чтобы глобальная переменная обновлялась при повышении уровня с 1 до 2.