Главная » Статьи » Статьи

Отладка в Stencyl. Поиск ошибок.

Отладка в Stencyl: консоль и ошибки.

Ошибки, возникающие во время выполнения сложнее, чем ошибки компиляции. Когда игра создается, Stencyl точно укажет на допущенную вами ошибку. Но что, если он не нашел ее, а игра все равно не работает так, как хотелось бы?
Одним из вариантов был бы вывод на экран значений всех атрибутов при помощи draw text, но это не всегда удобно, к тому же для написания кода потребуется дополнительное время. Stencyl предлагает нам в таком случае отладочную консоль. Вызывается она нажатием тильды ("~") в работающей игре (при этом не нужно жать клавишу shift). Можете попробовать вызвать консоль в любой игре, сделанной на stencyl. По умолчанию там будет выводиться частота кадров, данные о загружаемых ресурсах и время, затраченное на выполнение различных частей кода. Выглядит это примерно так:
 
 
Для того, что бы увидеть в режиме отладки значения необходимых нам атрибутов нам нужно добавить лишь одну строчку кода. Например, я решил узнать как изменяется количество очков, и добавил такой код в событие таймера:
 
 
В результате каждую секунду в консоли появляется новое сообщение:
 
 
А теперь мы сознательно сделаем ошибку деления на ноль. Как известно компьютеры на ноль делить не умеют, так что любуемся полученным результатом:
 
 
Эта надпись сообщает нам, что произошло деление на ноль, а еще мы можем понять, в какой момент это произошло, что сильно облегчает поиск и исправление ошибки в коде.
Эта ошибка случается довольно часто, но посмотрим на еще одну ошибку. Например у вас есть два актера - главный герой, и его противник. В событии героя указано, что он уничтожается при столкновении с противником, а в событии противника указано, что он уничтожает героя при столкновении с ним. Результатом будет "TypeError: Error # 1009: Не удается вызвать свойство или метод. Нулевой объект". Другими словами противник пытается убить героя, но героя уже нет т.к. он умер. Так что теперь вы знаете, где искать проблему, если увидите такую ошибку.
Категория: Статьи | Добавил: corax (24.02.2013)
Просмотров: 8348 | Теги: отладка в stencyl, debug | Рейтинг: 0.0/0
Всего комментариев: 0