external.dungeonEnabled = true / false и возвращает значение, если надо. Только в меню галочку не ставит - в остальном работает.
526 2011-07-01 10:00:53
Re: Плагин взятия задания, все города, нужно протестить. От Gorlum (248 ответов, оставленных в JavaScript)
527 2011-06-30 21:21:28
Re: Плагин: Морковка для всех версий (136 ответов, оставленных в Настройки / Плагины)
Я поменял местами в сообщении Mr Blanco грибную настойку и Сосуд жизненных сил, чтобы грибная настойка была первой в списке на выпивание.
528 2011-06-30 17:02:47
Re: Плагин взятия задания, все города, нужно протестить. От Gorlum (248 ответов, оставленных в JavaScript)
В 9.1.3 эти два фэйлить не будут.
Да и остальные тоже не должны ![]()
529 2011-06-30 10:47:16
Re: Плагин взятия задания, все города, нужно протестить. От Gorlum (248 ответов, оставленных в JavaScript)
Не, ты не понял ![]()
Записи "get_mainframe()" и "top.frames[external.mainFrameIndex]" эквивалентны (правда в случае экстернала там руками определяется название главного фрэйма один раз при старте, а get_mainframe() - это функция используемая в БК).
Под "одновременно" я имел ввиду "в одном плагине разные записи одного и того же" ![]()
Эктерналы использовать можно, нужно и вобще полезно. Исключение - то, что должно изменяться оперативно.
530 2011-06-30 09:09:06
Re: Плагин взятия задания, все города, нужно протестить. От Gorlum (248 ответов, оставленных в JavaScript)
Как-то тему неграмотно сделали ![]()
Вопрос то бл конкретный: сделать конкретный плагин ![]()
Так и надо было назвать "Плагин ... от Gorlum" и в первом посте всегда держать последнюю версию ![]()
Сам плагин я не читал и не знаю, как он работает(плохо у меня со временем), поэтому просто пару советов дам:
1) Я недоумеваю по поводу одновременного использования и "top.frames[external.mainFrameIndex]", и "get_mainframe()" ![]()
2) "top.Chat.Self.AddMessage"... а чем external.AddToChat не устраивает? Мне казалось, что с меткой времени сообщения выглядят более информативно.
3)
var imgs = get_mainframe().document.getElementsByTagName("IMG");
и
var tmp = get_mainframe().document.getElementsByTagName("a");
заменил бы на
var imgs = get_mainframe().document.images;
и
var tmp = get_mainframe().document.links;
531 2011-06-27 12:50:54
Re: Плагин взятия задания, все города, нужно протестить. От Gorlum (248 ответов, оставленных в JavaScript)
Забыл сказать, что в 9.1.3 будет новая функция для "правильного" клацания по ссылкам/переходам и прочему (_path = "Название, куда кликать: кнопка, маршрут, ссылка или просто картинка";).
И обновление комнаты привяжу к обновлению фрэйма, а не к таймеру как сейчас.
532 2011-06-27 11:37:29
Re: Вопросы от МунГ (2 ответов, оставленных в JavaScript)
Jquery не знаю, не трогал, не хотел ![]()
Можно ли в местах " $(this).find(".sub") ", как-то сделать, чтоб искало не ".sub"? а ".sub_left & .sub_right"? ) Где .sub, .sub_left и .sub_right это классы в ксс.
Это прописывается так(только не &, а или):
$(this).find(".sub_left, .sub_right")
533 2011-06-27 11:03:09
Re: Плагин взятия задания, все города, нужно протестить. От Gorlum (248 ответов, оставленных в JavaScript)
Для тестирования/отладки:
var chatFrame = top.Battle.Self.arrLogs.oChat.Frame();
var chatMessage = "";
for(var i = 0; i<chatFrame.childNodes.length; i++)
{
chatMessage = chatFrame.childNodes[i];
alert(chatMessage.innerText);
}
А для реализации попросить меня добавить контрольную переменную, которая в момент публикации данного сообщения меняла бы своё значение, чтобы меньше грузить бота и свой мозг.
534 2011-06-27 10:39:42
Re: hit_throwdblaxe (20 ответов, оставленных в Настройки / Плагины)
Да и на воине должно работать, если вы добавите строку
_target = top.Battle.oBattle.sEnemyLogin;
535 2011-06-23 13:57:56
Re: Лицензия за КРЕДИТЫ БК или екр ? (42 ответов, оставленных в Флейм)
master22, () ответа был в том числе для тебя
536 2011-06-23 13:46:29
Re: Лицензия за КРЕДИТЫ БК или екр ? (42 ответов, оставленных в Флейм)
Ничего ![]()
Продажа бота тоже не бизнесс...скорее отбивка тех средств, что я потратил на бота + оплата за хостинг/домен. В общем в 0 может быть когда-нибудь выйду ![]()
537 2011-06-23 13:34:35
Re: Я тут новенький подскажите пожалуйста..... (31 ответов, оставленных в Общий)
Я добавлю:
1) Не посылайте ко мне заведомо непонятных людей.
Что это такое:
Сдрасти.... как купить автобот не подскажите??
Вы понимаете, что если он покупает бота, вам придётся с ним на форуме одном жить/общаться/помогать?
2) Для ВСЕХ ТЕХ, кто пишет мне про WMU.
Webmoney - такая противная вещь, в которой можно создать кошельки с любой валютой. Вот прямо в WMKeeper Classic взять и создать кошелёк типа R. А потом кликнуть правой кнопочкой по своему WMU -> Обменять -> WM* на WM*.
P.S.
Господи, спасибо, что мне хватило сознания не публиковать мобильник и аську -_-"
538 2011-06-23 13:26:01
Re: Лицензия за КРЕДИТЫ БК или екр ? (42 ответов, оставленных в Флейм)
Ну это уже твой бизнесс - сам решай, какие посреднические услуги ты готов предлагать абсолютно незнакомым людям ![]()
539 2011-06-23 13:16:15
Re: Лицензия за КРЕДИТЫ БК или екр ? (42 ответов, оставленных в Флейм)
Разрабу кр/екр не нужны. Разраб не играет в БК.
540 2011-06-22 08:54:12
Re: ФЛУД ПО МАРШРУТАМ. Тема для вопросов. Быстрые вопросы - быстрые ответы (298 ответов, оставленных в Подземелье / Маршруты)
В этом маршруте бот использует объекты только на 20 определенных клетках... такчто прошу внимательно посмотреть и ответить про объекты ![]()
541 2011-06-21 20:16:58
Re: ФЛУД ПО МАРШРУТАМ. Тема для вопросов. Быстрые вопросы - быстрые ответы (298 ответов, оставленных в Подземелье / Маршруты)
Во как дембель сказал, я полюбому ничего не понял !
Если мне память не изменяет, то это сказал прапор ![]()
542 2011-06-21 20:15:19
Re: Возможные проблемы (451 ответов, оставленных в Проблемы / Баги / Неполадки)
hyppo, malrom
ничего смотреть не надо - отпускает через сутки.
Причину понять покачто не могу...знаю на каком месте в скриптах спотыкается, но не с какого перепуга он это начинает делать ![]()
543 2011-06-21 17:17:49
Re: Вопросы от malrom (5 ответов, оставленных в JavaScript)
Не, усиленно не надо.
В нашем случае важным является только ()
остальное ты из php уже знаешь (ну +- ньюансы синтаксиса).
544 2011-06-21 11:43:00
Re: На счет раздела "качалка" (15 ответов, оставленных в Общий)
Пользоваться разделами никто не заставляет.
Если не будет наполняться контентом каким-либо, просто сольём раздел с соседним. Темы/сообщения прекрасно переносятся в другие ветки форума.
P.S.
Хотите организовать обсуждение, сформулируйте свое сообщение так, как сделал Mr Blanco в данном топике.
Только тогда люди смогут трезво взглянуть на ваше предложение и сделать замечания.
545 2011-06-21 11:37:34
Re: Полезные вещи (2 ответов, оставленных в JavaScript)
Часто необходимо анализировать какой-нибудь текст, полученный в результате выполнения скрипта.
Длинный текст. На помощь вам приходит буфер обмена.
window.clipboardData.setData("Text","Вот сюда какой-нибудь текст");
* при первой попытке что-нибудь положить в буфер, браузер спросит у вас разрешение на это действие. В бота пихать не надо - бот, вроде, работает в silent режме и не отображает подобные диалоговые окна.
546 2011-06-21 11:34:24
Re: Полезные вещи (2 ответов, оставленных в JavaScript)
При выполнении запросов через DebugBar лучше всего использовать конструкцию try - catch
Пример:
try
{
// ваш код
}
catch(err)
{
alert(err.description)
}
547 2011-06-21 11:31:44
Тема: Рекомендации по инструментарию (0 ответов, оставленных в JavaScript)
При разработке плагинов основная часть всегда создаётся вне бота, ибо неудобно.
Инструментарий:
1) текстовый редактор с подсветкой JS. Лучше ещё с поддержкой авто-форматирования текста. Ну и совсем замечательно, если он умеет отображать список функций/переменных и т.п.
Пользуюсь: phpDesigner (хрень платная, но лекарста имеются в наличии)
2) для удобства ползания по DOM, для мониторинга http-запросов, для более-менее удобного выполнения JS запросов используйте DebugBar (хрень бесплатная и интуитивно-понятна)
3) крайне полезной вещью является "Средства разработчика" в комплекте IE8/IE9/IE10. Рекомендую, естественно, ставить IE10.
Вызывается кнопкой F12. Самое полезное, что в нём интересует - верхняя закладка Сценарий, правая закладка Watch(Контрольное значение).
Впишите, допустим, top и нажмите Enter.
Примечание: Если у вас IE8 и вписать там ничего нельзя - слева есть кнопка паузы. Сперва нажмите её. Но предупреждаю, в IE8 отображается не вся объектная структура в сравнении с IE9. Правда если у вас winXP, то IE9 вы физически поставить не можете - смиритесь.
548 2011-06-21 11:22:13
Тема: Полезные вещи (2 ответов, оставленных в JavaScript)
Readme файл по написанию плагинов от 7-й версии бота (лишнее вырезал).
Combots поддерживает плагины JavaScript.
Файл плагин должен иметь латинское имя и расширение .js
Все плагины хранятся в папке pluginsКак пользоваться плагинами:
При нажатии на галку вызывается главная функция плагина с параметром enabled - true
Если галку снять - вызывается главная функция с параметром enabled - false.
Чтобы перезагрузить плагин необходимо выключить-включить плагин.Помощь при написании плагина:
Главная функция плагина должна иметь вид "function Имя файла плагина без .js (enabled){...}".
Где enabled является состояние галки напротив плагина в списке.
Пример главной функции:
function Test(enabled)
{
if(enabled) alert('Плагин включен!');else alert('Плагин выключен!');
}Необходимым элементом создания плагинов является привязание плагина к обновлению фреймов.
Этим занимается массив PluginsOnLoad.
Например у нас есть фукнция ее нужно привязать к обновлению страниц.
Делается это так PluginsOnLoad["имя плагина без .js что является именем главной функции"] = "Имя функции";
Пример PluginsOnLoad["Test"] = "TestDocumentRefreshHandler";
Чтобы отвязать функцию от обновления надо вызвать PluginsOnLoad["имя"] = "";
Функция-приниматель обновления должна быть без парамметров.
URL обновленной страницы содержится в RageRefreshed
Пример функции-handler:
function TestHandler()
{
var url = PageRefreshed;
if(url.indexOf("dungeon")>0)
{
//мы в подземельи
}
else if(url.indexOf("edit=2")>0)
{
//мы в инвентаре в разделе Магия
}
}Теперь все что понадобится при плагино-строении:
top - объект верхнего уровня, в нем содержатся все фреймы
top.frames["bottom"]- фрейм строки чата (и нижних кнопок)
top.Battle.oBattle - объект-pointer к бою(!)
top.Battle.oBattle.Attack() - нажимает кнопку Вперед! в бою.
top.Chat.Self - объект-pointer к чату
top.Chat.Self.AddMessage("xxx") - добавляет сообщение в чат (! не посылает серверу а добавляет как будто принял)
mylogin - имя текущего персонажа
external.SaveFile("имя файла","текст") - сохраняет в папке plugins Файл с именем "имя файла" и содержанием "текст"
external.LoadFile("имя файла") - загружает и возвращает содержимое файла с именем "имя файла" из папки plugins
549 2011-06-21 11:15:50
Re: Вопросы от malrom (5 ответов, оставленных в JavaScript)
Нечто вроде этого для первого вопроса
()
По поводу второго, у тебя есть шанс плагином быстро-быстро найти неугодный тебе объект и удалить его - другого варианта предложить не могу.
Начни с малого: чтение исходного JS от 8-й версии и через Debugbar поиск объекта.
P.S.
Я напоминаю, что ветка тут не просто так, а для направления в правильное русло человека, задающего вопросы.
Если самому разбираться ни в чем не охото - тебе в настройки/плагины с такими вопросами.
550 2011-06-21 10:44:04
Тема: Правила ветки форума (0 ответов, оставленных в JavaScript)
Данный раздел создан исключительно для программистов или людей, желающих понять принципы работы JS.
Остальным данная ветка не должна быть интересна.
Пожелание: Если у вас просто куча вопросов, никак не связанных с конкретной проблемой, создайте тему именно под себя со своим ником в качестве названия, чтобы было удобно ориентироваться.
Шаблон названия в данном случае "Вопросы от %ВашНикНаФоруме%"
Если у вас конкретная проблема, то назовите тему В СООТВЕТСТВИИ С ПРОБЛЕМОЙ(!), а не "Помогите" или "Не получается".
Ветка будет злостно мной модерироваться.
Спасибо за внимание.