|
|
|
Пожелания, Предложения по развитию сюда |
|
|
WKnight |
13.12.2011, 3:47
|
Разработчик UO Pilot'а
Сообщений: 1.639
Регистрация: 9.1.2006 Группа: Пользователи Наличность: 0
Пользователь №: 4.688
|
Цитата say size($a) + 3 // 6+3 вместо 9 При разного рода операциях, результат зависит от типа переменной, которой он присваивается. в данном случае say оперирует со строками, repeat c числами. Вообще ты будешь наверно удивлен, но пилот всё хранит в строках (IMG: style_emoticons/default/smile.gif) было несколько причин так сделать, в том числе объем памяти и универсальность. в настоящее время похоже пора чтото менять... про перекрытые окна не забыто, к сожалению исходников именно версии 204 нет, так что даже из любопытства не получится проверить как там было, в любом случае оно пишется заново.
|
|
|
|
EL-GReeN |
13.12.2011, 21:41
|
Journeyman
Сообщений: 474
Регистрация: 18.7.2011 Группа: Пользователи Наличность: 0 Из: Россия
Пользователь №: 13.815
Возраст: 32
|
Цитата(WKnight @ 13.12.2011, 4:58) подобная конструкция возможна только для ключевого слова lastmsg, оставлена для совместимости со старыми скриптами.
--v.2.18-- добавил нечеткое сравнение строк. регистронезависимо. поддерживаются операции <, >, =, <>, <= (S2 содержится в S1), >= (S1 содержится в S2)
хотя и это в свете новых команд работы со строками уже не особо актуально.
то есть теперь определять вхождение строки лучше PosEx-м, попутно вопрос, сколько символов может хранить переменная? Цитата(WKnight @ 13.12.2011, 3:47) При разного рода операциях, результат зависит от типа переменной, которой он присваивается. в данном случае say оперирует со строками, repeat c числами. Вообще ты будешь наверно удивлен, но пилот всё хранит в строках (IMG: style_emoticons/default/smile.gif) было несколько причин так сделать, в том числе объем памяти и универсальность. в настоящее время похоже пора чтото менять... автоматическое приведение типов в общем это хорошо, не смотря на то что иногда приходится использовать буфер, опять же это скриптовый язык пилота которому нужно учиться, иначе будешь постоянно наступать на одни и те же грабли. (IMG: style_emoticons/default/biggrin.gif) ПС есть пожелание иметь редактируемую переменную содержащую весь лог журнала, аналогичной инже uo.InJournal() еще бы пригодилась возможность рисовать цветные примитивы(квадрат, круг) и текст, по верх всех окон, то есть независимо от всех приложений, без возможности перекрыть любыми программами, на пример как точка в RedDot.exe (приложил прогу, антивирус ругается на нее но она в систему вроде не гадит)
Прикрепленные файлы
12_11_5_RedDot.zip ( 18,12 килобайт )
Кол-во скачиваний: 318
--------------------
|
|
|
|
WKnight |
14.12.2011, 2:59
|
Разработчик UO Pilot'а
Сообщений: 1.639
Регистрация: 9.1.2006 Группа: Пользователи Наличность: 0
Пользователь №: 4.688
|
Цитата то есть теперь определять вхождение строки лучше PosEx-м, попутно вопрос, сколько символов может хранить переменная? это по желанию, у каждого способа свои плюсы и минусы. по идее внутри они почти одинаковы должны быть. имя до 255 символов числа -2147483648..2147483647 (знаковое 32-bit) строки до 255 символов массивы теоретически до ~2^31 символов каждый элемент, практически больше 32к не советую, некоторые команды работы со строками могут не поддерживать. Цитата опять же это скриптовый язык пилота которому нужно учиться учиться нужно всему с чем работаешь, пилот в данном случае не исключение Цитата есть пожелание иметь редактируемую переменную содержащую весь лог журнала, аналогичной инже uo.InJournal() ещеб описание для чего и как с ней работать
|
|
|
|
EL-GReeN |
14.12.2011, 13:23
|
Journeyman
Сообщений: 474
Регистрация: 18.7.2011 Группа: Пользователи Наличность: 0 Из: Россия
Пользователь №: 13.815
Возраст: 32
|
Цитата(WKnight @ 14.12.2011, 2:59) ещеб описание для чего и как с ней работать
Инжа хранит журнал уо в таблице последние 100 строк(100 сообщений), новые сообщения в реал тайм влетают снизу, старые сверху таблицы пропадают. uo.InJournal("text") - Ищет в журнале Injection строку, в которой встречается "text", и возвращает её номер плюс 1, или возвращает 0 если такая строка с момента последнего удаления журнала (DeleteJournal) не обнаружена. uo.DeleteJournal("text") - Очищает журнал Injection от всех строк "text". Команда выполняется чтобы отсечь уже отработанные варианты для команды InJournal. пример: Код if uo.InJournal("An Ex Por") then uo.DeleteJournal("An Ex Por") //полезное действие endif
uo.Journal(0) - Возвращает строку журнала Injection по номеру. uo.SetJournalLine(number,text) - Перезаписывает текст в строке журнала номер number новым текстом text. есть еще функция uo.JournalSerial(number) но она не часто применяются и трудна в реализации, подробнее тут http://yoko.com.ua/help/Цитата(Zeleax @ 14.12.2011, 8:37) ну и зачем такие вещи выкладывать, если и так понятно, что прога должна делать? (IMG: style_emoticons/default/cool.gif) выложил для наглядности, дело в том что она рисует как то по особенному, нигде такого не встречал, используется в стрелялках, drweb говорит: 12_11_5_RedDot.exe contains a joke (hoax) program Joke.Reddot а шутка заключается в том что выключение реддота делается через диспетчер задач, на что не все люди способны.
--------------------
|
|
|
|
_LESTAT_ |
18.12.2011, 19:16
|
Apprentice
Сообщений: 103
Регистрация: 12.3.2011 Группа: Пользователи Наличность: 0
Пользователь №: 13.512
Возраст: 25
|
1)Было бы не плохо если бы в логе, сообщения можно было выделять цветным фоном. Шрифт пусть остается черным, а вот если бы была возможность менять цвет фона на котором пишется текст, это было бы очень удобно. Просто у меня в лог отправляется много сообщений и не все из них важные. И я хотел бы чтобы особо важные сообщения в логе выделялись желтым маркером, сообщения об ошибках красным, важные успешные действия выполненные скриптом, выделялись бы зеленым и т.п.. 2)Часто нужно задать узнать десятичный код цвета, но средствами пилота, это сделать не просто. В пилоте нужна опция, открывающая диапазон цветов, с возможностью выбрать цвет шелчком мыши, после чего, копировался в буфер или сразу бы вставлялся в скрипт десятичный код выбраного цвета. Думаю лучше всего подайдет такой как в пейте, используя готовые компоненты, добавить такую возможность не займет много времени, а удобства добавит значительно. 3)В пилоте нужна встроеная экранная лупа, я уже предлагал ее добавить и вроде бы WKnight , согласился, что эту вещь нужно добавить, но в с того момента уже минуло несколько версий, а лупы так и нету. 4)Нужна более продвинутое создание форм. с возможностью добавления панелек с кнопками. Лично мне, да и другим очень бы пригодилось, если бы каждый раз когда нужно, что-то быстро активировать в скрипте, отключить часть его функций или приостановить его, то не приходилось бы, разворачивать пилот, останавливать скрипты и переписывать код, а достаточно было нажать кнопочку, на висящей повер всех окон маленькой панельке с быстрыми кнопочками.
|
|
|
|
_LESTAT_ |
20.12.2011, 3:00
|
Apprentice
Сообщений: 103
Регистрация: 12.3.2011 Группа: Пользователи Наличность: 0
Пользователь №: 13.512
Возраст: 25
|
Цитата(Zeleax @ 19.12.2011, 19:42) 1) + 2, 3) почему не воспользоваться FSCapture? Хотя не спорю- приятно смотреть, как другие велосипед изобретают )) 4) не понял. Для чего, почему, для кого это надо и т.п. И так ведь есть опция для пилота - "висеть поверх всех окон"
2.3) Так я щас и пользуюсь отдельными приложениями для этих целей, так как этих функций не хватает в пилоте, а нужны они при написании скриптов очень часто. Ну согласись удобней было бы если эти частые функции всегда под рукой, и ненужно устанавливать , а потом каждый раз лесть грузить сторонние программы. 4) Для примера, у меня скрипт делает несколько функций, но остановимся на двух, так вот часто мне нужно чтобы в скрипте работали обе функции, добыча ресурсов и производство товаром, но иногда бывает нужна оставить только одну из них, а другую отключить. Было бы здорово если бы в скрипте можно было описать команду , которая создавала бы форму например, с тремя кнопочками, для каждой кнопочки описана своя функция.Запускаешь скрипт, и в определенном месте появляется малюсенькая панелька например, с тремя кнопочками, висящая по верх всех окон где нить в уголке игры, в которой работает скрипт. Кнопки были бы такие Приостановить/Продолжить скрипт , Отключить/Включить производство, Отключить/Включить собирательство. И я всегда бы смог за секунду отключить , или запаузить скрипт, быстро ответить в чат и продолжить его, приэтом не трогая окно пилота и не переписывая скрипты, просто нажав на кнопочку, на этой маленькой панельке. Так же не помешала формочка, висящая так же поверх окна игры, и выводящая основную инфу, по скрипту. например: Собрано столько то Создано 1 товара столько то Второго столько то. переключено тактика столько то раз ит.п. Конечно это очень похоже на лог, но все же это несколько другое, в логе постоянно бегут строки, а в хинты быстро исчезают, да и нельзя больше одного хинта на скрипт.
|
|
|
|
_LESTAT_ |
20.12.2011, 14:48
|
Apprentice
Сообщений: 103
Регистрация: 12.3.2011 Группа: Пользователи Наличность: 0
Пользователь №: 13.512
Возраст: 25
|
Цитата(Zeleax @ 20.12.2011, 9:22) Ну и останавливаешь/запускаешь каждую функцию с помощью отдельного скрипта. Имею в виду - скрипт крутится один большой, но функции работают/не работают в зависимости от состояния каких-то ключевых глобальных переменных. Вот эти переменные и меняешь в других маленьких скриптах. И хинты в них же можно повесить.
Смысл ка краз в том, чтобы не плодить отдельные скрипты , асделать один большой, в котормо можно будет быстро отключить/или включать части не создавая других маленьких скриптов, а просто нажимая на маленькие кнопочки, на маленькой панельке. Как промпт , только вместо чекбоксов кнопочки, и висит панелька всегда(действия посылаются по нажатию кнопок, а не по закрытию панели, как в пропмпт), пока ее не закроешь. Цитата(WKnight @ 20.12.2011, 12:53) односимвольные значения переменных проще редактировать на панели параметров персонажа. в принципе любые там редактировать можно, но это уже зависит от реализации скрипта
А разве панель параметра персонажа, не только для ультимы ? ЕЕ можно использовать и с другими играми ? Этого я не знал, и даже инфы нигде не видел, где можно почитать поподробней или может вы раскажете ? А то я всегда считал ее бесполезной.
|
|
|
|
_LESTAT_ |
20.12.2011, 19:39
|
Apprentice
Сообщений: 103
Регистрация: 12.3.2011 Группа: Пользователи Наличность: 0
Пользователь №: 13.512
Возраст: 25
|
Цитата(WKnight @ 20.12.2011, 16:01) в основном конечно для ультимы, но большую часть зарезервированных переменных можно использовать в любом приложении, прописав соответствующие адреса, кроме того на той панельке есть таблица переменных активного скрипта. про измененние переменных с ее помощью, гдето в хистори описано.
Прописывать адреса ? Это каике , адреса памяти ? Тогда не пойдет, у меня браузерная флеш игра и там память меняется постоянно. Все же не плохо бы сделать , такую какая я предложил, универсальную прописываемую в скрипте. Даже не обязательно нужна внешняя панель, пусть будет панель внутри пилота, но чтоб все функции можно было легко описать в скрипте, так думаю легче будет сделать. А счет редактирования таблицы переменных, согласись это не быстро. Это скорей для отладчиков. Мне нужно чтоб незнающие нубо-юзеры разбирались. Куда проще нажимать на кнопочки, чем лесть в редактор переменных.
|
|
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|