Отладчик 2.0 beta
<= 5.7.0
Модуль разрабатывался для плееров версии ниже 5.8.0.
Позволяет в любое время выполнить произвольный кусок кода или просмотреть значения переменных из указанного списка.
Библиотечка была обновлена до версии 2.0beta
Порядок использования:
- Распаковать архив в папку с игрой
- Добавить в первую локацию команду:
addqst 'lib/debugger.qsp
, для загрузки отладчика - Включить отладочный режим:
debug = 1
, для плеера - Добавить команду:
gs "debugger_init"
, для включения отладчика
Основным недостатком первой версии было то, что команды можно было вводить только через строку ввода. Вызов команд из кода был затруднен, и создание новых команд требовало знания структуры и принципа отладчика. Кроме того у части команд был не совсем удобный вызов. В новой версии я постарался решить все эти проблемы.
Для этого были сделаны следующие изменения:
- добавлена возможность вызвать команду отладчика из кода (в предыдущей версии вызов команды был тесно связан с строкой ввода и сделать это было довольно проблематично)
например:
gs "debugger_process", "addvar test"
- обавлена возможность ввести несколько команд одновреммено разделив их & (в предыдущей версии была бы отработана только первая команда)
например:
addVar test & test = 3 & showVars
- добавлена возможность ввода
<<
и>>
(в предыдущей версии были проблемы с отображением и обработкой) - добавлена возможность запланировать выполнение команды отладчика - для этого необходимо добавить перед командой >
например:
>showVars gs 'test_loc' >showVars
здесь командыshowVars
будут выполнены не сразу после ввода, а только когда код будет запущен через run - в
addVar
иdelVar
теперь можно передавать несколько имен переменных разделенных пробелом например:addvar test[0] test[3] $test
- в
run
вторым параметром можно передать название переменной с кодом для выполнения (похоже на вызовload $var & run
, только код не загружается в список команд) - добавлена команда clearVars для очистки списка переменных
- добавлены команды для отслеживания логических выражений
addCond
,delCond
,showCond
,clearCond
(об этом писал на форумеinvertercant
) например:addcond test1 > test2 & showcond
- в
help
вторым параметром можно передать название команды для просмотра информации по ней - добавлены команды
createCommand
,loadCommand
,updateCommand
иdeleteCommand
для создания пользовательских команд все параметры переданные после названия команды доступны в массиве$debugger_args
в принципе с помощьюcreateCommand
можно перегрузить любую команду отладчика, но пользоваться этой возможностью нужно с осторожностью - добавлен "визуальный" режим для тех, кто не хочет учить команды:)
для его использования при вызове
debugger_init
первым параметром передайте1
в локацию-обработчик выбора предмета добавьтеif $selobj = 'Отладчик': menu "$visual_main"
При запущенной игре, команды передаются через строку ввода. Первой стоит запустить команду: help
У команд в фигурных скобках указаны обязательные параметры, а в круглых необязательные.
Основные команды и настройки
debugger {0 | 1}
- Включение/отключение отладчикаshowMode {msg | pl | p | *pl | *p}
- изменение режима вывода информации, по умолчанию msgautoShow {0 | 1} (msg | pl | p | *pl | *p)
- Включение/отключение автоматического показа кода после каждого изменения, с помощью третьего аргумента можно изменить режим выводаhelp (название команды)
- список команд или информация об определенной команде
Список переменных для вывода
addVar {название переменной}
- добавление переменной в список отображения (можно указывать несколько переменных через пробел)delVar {название переменной}
- удаление переменной из списка отображения (можно указывать несколько переменных через пробел)showVars
- отображение списка переменных, зависит от режима вывода информацииclearVars
- очистка списка переменных
Список логических выражений для вывода
addCond {название переменной}
- добавление логического выражения в список отображенияdelCond {название переменной}
- удаление логического выражения из списка отображенияshowCond
- отображение списка логических выражений, зависит от режима вывода информацииclearCond
- очистка списка логических выражений
Отладочный кусочек кода
run (название переменной)
- Выполнение набраного кода(по умолчанию после выполнения код очищается) или кода из определенной переменнойclearCode
- Очистка набранного кода, по умолчанию вызывается при каждом выполнении кодаshow
- Отображение введенного кода, отображение зависит от режима, по умолчанию происходит очистка окна отображения, если не используется msgedit {номер строки} {строка кода}
- замена строки с определенным номеромdelete {номер строки}
- удаление строки с определенным номеромdelete {номер строки}-{номер строки}
- удаление группы строкinsert {строка кода}
- вставка кода в началоinsert {номер строки} {строка кода}
- вставка кода после определенной строки
Сохранение и запись отладочного кода
save (название переменной)
- сохранение кода в переменную, если переменная не указана, выполняется автосохранение, по умолчанию автосохранение выполняется при каждом выполнении кода до его очисткиload (название переменной)
- загрузка кода из переменной, если переменная не указана загружается автосохранение
Скачать отладчик: debugger2beta.zip
Автор: WEREWOLF 05.04.2010 13:34