www.mudconnector.su https://forum.mudconnector.su/ |
|
JMC 3.5 https://forum.mudconnector.su/viewtopic.php?f=8&t=203 |
Страница 1 из 2 |
Автор: | prool [ Чт авг 26, 2010 6:34 pm ] |
Заголовок сообщения: | JMC 3.5 |
Новые возможности JMC 3.5b http://jmc.alfuken.net/new |
Автор: | konelav [ Вт окт 11, 2016 2:25 am ] |
Заголовок сообщения: | Re: JMC 3.5 |
Обзор нового в 3.7 (и сама она). https://github.com/konelav/jmc/releases/tag/3710 |
Автор: | Kalevala [ Чт окт 20, 2016 3:00 pm ] |
Заголовок сообщения: | Re: JMC 3.5 |
Ого, вот это обновление. Большая просьба, можно ли сделать так чтобы приходящая строка из мада отображалась только в положенном окне и не прокручивала основное окно. Что я имею ввиду. В более ранних версиях JMС можно было разбить вывод приходящих строк в разные окна, но при этом в основном окне все равно шла прокрутка на пустую строчку вверх. Так вот можно сделать так чтобы, если строке предназначено выводиться не в основном окне основное не прокручивалось? Скриптами мне эту проблему так и не удалось решить. |
Автор: | konelav [ Вс окт 23, 2016 3:29 pm ] |
Заголовок сообщения: | Re: JMC 3.5 |
Если я правильно понял проблему, то она решается одним из двух способов в зависимости от того как именно осуществляется "перенаправление": 1. Если в триггере, то командой #drop: Код: #act {/^(\w+) сказал вам: (.*)/} {#woutput 3 {[$TIME] [%0]: %1};#drop} 2. Если в скрипте, то вызовом jmc.DropEvent(): Код: jmc.RegisterHandler('Incoming', 'var m = jmc.Event.match(/(\w+) сказал вам: (.*)/); if (m !== null) {jmc.wOutput(3, "[" + m[1] + "]: " + m[2]); jmc.DropEvent();}'); Впрочем, тут сойдёт и та же команда #drop: Код: ... jmc.Parse(jmc.CommandChar + 'drop'); ... Ранее jmc.DropEvent() в обработчике Incoming работал действительно некорректно, для достижения эффекта приходилось делать jmc.Event = null (https://github.com/nerevar/jmc/issues/40). |
Автор: | Kalevala [ Пн окт 24, 2016 12:38 am ] |
Заголовок сообщения: | Re: JMC 3.5 |
Да именно так и пытался решить через код в скрипте: Код: jmc.Event=""; jmc.DropEvent(); Но увы эффекта это не давало. В новом значит работает. Хорошо. |
Автор: | Kalevala [ Чт окт 27, 2016 11:47 am ] |
Заголовок сообщения: | Re: JMC 3.5 |
Что-то не работает все же. Вот такой код в скрипте на событие Incom Код: jmc.woutput(1,"блаблабла","white"); jmc.DropEvent(); Сообщение выводится в окно, но и в основном окне происходит прокрутка. Пробовал jmc.Event=null не помогает. |
Автор: | konelav [ Пт окт 28, 2016 8:23 pm ] |
Заголовок сообщения: | Re: JMC 3.5 |
Либо я неверно понимаю ситуацию, либо имеет место быть какая-то общая ошибка (например, требуется перерегистрировать COM-сервер ttcoreex.dll, чтобы не использовалась старая версия). Вот такую проверку делал я: http://rgho.st/7sDSgjw8v (там при запуске MUD-эмулятора в режиме чтения из файла test.txt с выполнением RMA-команд часть строк раскидывается по окнам, при этом вывод в основное окно сбрасывается, оно не прокручивается) |
Автор: | Kalevala [ Сб окт 29, 2016 2:21 pm ] |
Заголовок сообщения: | Re: JMC 3.5 |
konelav писал(а): Либо я неверно понимаю ситуацию, либо имеет место быть какая-то общая ошибка (например, требуется перерегистрировать COM-сервер ttcoreex.dll, чтобы не использовалась старая версия). Вот такую проверку делал я: http://rgho.st/7sDSgjw8v (там при запуске MUD-эмулятора в режиме чтения из файла test.txt с выполнением RMA-команд часть строк раскидывается по окнам, при этом вывод в основное окно сбрасывается, оно не прокручивается) Не, нифига. Сделал regserv32 /u ttcoreex.dll и заново regserv32 ttcoreex.dll не помогло. Удалил в реестре все ссылки на ttcoreex.dll, заново установил старую жабу с версии 3.26 и накатил поверх нее новую. Так как простая regserv32 ttcoreex.dll не помогает, ругается на точку входа. Все равно при перенаправлении сообщения окна идет прокрутка. Пример кстати не скачать. Хром у меня матерится на сайт. Фигня какая-то. Кстати раз уж версия новая пора сделать нормальный инсталятор имхо. Пользователи любят чтобы все устанавливалось тремя нажатиями кнопок. |
Автор: | konelav [ Сб окт 29, 2016 2:43 pm ] |
Заголовок сообщения: | Re: JMC 3.5 |
Kalevala писал(а): Так как простая regserv32 ttcoreex.dll не помогает, ругается на точку входа. Когда и на что ругается? Это уже не нормально. regsvr32 требуется только для скриптинга, всё остальное должно функционировать изначально просто из факта наличия правильной версии ttcoreex.dll рядом с той же версией jmc.exe. Kalevala писал(а): Все равно при перенаправлении сообщения окна идет прокрутка. Может вы выложите минимальный пример для воспроизведения? (на хостинге или на гитхабе в issues). Kalevala писал(а): Кстати раз уж версия новая пора сделать нормальный инсталятор имхо. Пользователи любят чтобы все устанавливалось тремя нажатиями кнопок. Есть и такие пользователи, которые любят, чтобы реестр загаживался минимально, а полноценная полная копия программы делалась простым копированием файлов %) Я, например, на флешке жабку имею и запускаю с любого компа всего одной кнопкой. |
Автор: | Kalevala [ Сб окт 29, 2016 3:04 pm ] |
Заголовок сообщения: | Re: JMC 3.5 |
Это если мы просто скопировали Jmc и попытались зарегить ttcoreex.dll версия 3.7.1.0 от 11.10.2016. https://yadi.sk/i/aBNfw80YxnJv9 Собственно сам Jmc конечно работает, скрипты не работают. Вот если установить через старый инсталятор install30.exe версию 3.26 и поверх накатить 3.7 тогда работает, но и прокрутка никуда не денется. Цитата: Может вы выложите минимальный пример для воспроизведения? (на хостинге или на гитхабе в issues). Запись лога или что? Собственно скрипт такой: Код: function Incom(){ var line=jmc.event; reg=new RegExp("^-->"); if(reg.test(line)) { reg.clear; reg2=/[|]/g; line2=line.replace(reg2,"-"); jmc.woutput(1,line2,"white"); jmc.DropEvent(); } } jmc.RegisterHandler("Incoming","Incom()"); Цитата: Есть и такие пользователи, которые любят, чтобы реестр загаживался минимально, а полноценная полная копия программы делалась простым копированием файлов %) Я, например, на флешке жабку имею и запускаю с любого компа всего одной кнопкой. Думается мне меньшинство таких пользователей. Дистрибутив отдельный точно никому не помешал бы. |
Страница 1 из 2 | Часовой пояс: UTC + 3 часа [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |