скорее всего косяк в приемах.
удали все приемы, если бот будет бить.. то тогда по очереди вставляй приемы и увидишь какой косячит.
251 2015-05-21 16:28:26
Re: Заходит в бой но не бьет в чем проблема? (2 ответов, оставленных в Проблемы / Баги / Неполадки)
252 2015-05-21 11:38:55
Re: Куплю Бот для COMBATS.COM (8 ответов, оставленных в Торговля / Коммерческие дела)
есть. Этот...
цена и вся информация тут ()
253 2015-05-21 11:00:45
Re: Куплю Бот для COMBATS.COM (8 ответов, оставленных в Торговля / Коммерческие дела)
Администрация в командировке - с ответами на почту могут быть задержки 1-2-3дня (включая по покупкам лицензии)
Ответит.
254 2015-05-21 09:25:38
Re: ФЛУД ПО МАРШРУТАМ. Тема для вопросов. Быстрые вопросы - быстрые ответы (298 ответов, оставленных в Подземелье / Маршруты)
попробуй такой вариант
if (typeof(say) == "undefined") {var say = 0;} if (say < 2) { say = say + 1; $('area[title="Оборванец"]',get_mainframe().document).each(function() { this.click(); $('a[onclick*="tn3_poors_default_2"]',get_mainframe().document).each(function(){this.click()})}); } else { say = 0; Walk (XX); }
if (say < 2) // - количество разговоров
XX - направление движения, измени... куда тебе нужно...
Должно получиться
255 2015-05-20 20:57:30
Re: Плагин Диалог с ботом (27 ответов, оставленных в Настройки / Плагины)
Тогда лучше за аналог взять плагин покупки стрел.
256 2015-05-20 14:16:51
Re: Плагин Диалог с ботом (27 ответов, оставленных в Настройки / Плагины)
Проще, наверное с нуля написать
Ни фига в примере не понял.
Там только один вариант покупки? Как в магазине?
257 2015-05-20 08:21:57
Re: Плагин Диалог с ботом (27 ответов, оставленных в Настройки / Плагины)
Tyom,
по приведенному диалогу
• А давай посмотрим, чем ты мне можешь помочь.
(Перейти к магазину и получению предметов)
• Ты похож на человека, у которого есть для меня задания.
(Получить задание)
• Ты же мне задания давал? Я по поводу них...
(Поговорить по поводу взятых заданий
• Кто ты вообще такой?
• Расскажи мне про это кладбище.
• Расскажи мне про население местное.
• Пугаешь ты меня что-то. Пойду я... (завершить разговор)
не могу понять последовательность кликов по сообщениям... как сказал otherway надо ввести отметку о выполнении определенного диалога...
я бы ввел бы переменную и после каждого диалога проверял бы ее
по типу..
кликнул на первую ссылку +1, по второй еще +1(и того 2)...
и проверял бы условие
if(a==1) {диалог уже нажимали проходим к следующему }else {кликаем линк; a=a+1;}
как то так... единственный момент... надо продумать где переменную вводить и где обнулять...
if(typeof a == "undefined" || a == 6) {var a=0;} // 6 - это количество диалогов, которые надо перебирать...
но надо подумать в какую часть кода воткнуть обнуление... что бы не зациклить...
З.Ы. Пишу с колена... могут быть ошибки...
258 2015-05-20 08:06:58
Re: ФЛУД ПО МАРШРУТАМ. Тема для вопросов. Быстрые вопросы - быстрые ответы (298 ответов, оставленных в Подземелье / Маршруты)
Новичок, ну и славно!
259 2015-05-20 08:05:09
Re: LegBK.com - Продам Бота для ЛегБК. (12 ответов, оставленных в Торговля / Коммерческие дела)
+ еще не полный функционал....
особенно...
Так-же продам бота, который каждый час получает пенсию.
Цена - 10$.
при нынешнем курсе 500 деревянных за автокликер, который можно в гугле бесплатно найти...
260 2015-05-19 20:26:43
Re: LegBK.com - Продам Бота для ЛегБК. (12 ответов, оставленных в Торговля / Коммерческие дела)
дорого как то
учитывая, то что пик популярности БК (любого) прошел
261 2015-05-19 17:09:46
Re: ФЛУД ПО МАРШРУТАМ. Тема для вопросов. Быстрые вопросы - быстрые ответы (298 ответов, оставленных в Подземелье / Маршруты)
Евжений,
попробуй такую конструкцию
$('area[coords="65,62,185,182"]',get_mainframe().document).each(function() { this.click(); } )
не уверен, что за пашет... но всякое бывает
как вариант...
если объекта два, то можно попробовать так...
var title_tmp = $('area',get_mainframe().document).filter('[title="Таинственный Круг"]');
if(title_tmp.length > 0) { title_tmp[X].click(); }
где в место Х указать либо 0 либо 1... номер объекта, который нужен.
З.Ы. Какой то у меня косяк с форумом ?
262 2015-05-15 12:08:46
Re: ФЛУД ПО МАРШРУТАМ. Тема для вопросов. Быстрые вопросы - быстрые ответы (298 ответов, оставленных в Подземелье / Маршруты)
как вариант собрать оба элемента в массив, а потом вызвать нужный...
можно через
.getElementById('*')
или
getElementsByTagName('*')
находишь нужные... они соберутся в массив... у тебя будет 2 элемента в массиве... один из них буден тот, который тебе нужен...
Я бы пошел бы этим путем... но это кривой и долгий... но других не знаю
Как вариант посмотреть темы про диалоги... там тоже идет поиск нужных элементов и клик по ним.
263 2015-05-15 09:13:13
Re: Прием в плагине (9 ответов, оставленных в Настройки / Плагины)
не.. так не реализовать...
да и если в ручную делать размен... можно в ручную и прием использовать?
264 2015-05-15 09:11:28
Re: Плагин автопродажи вещей в гос (259 ответов, оставленных в Настройки / Плагины)
помог бы... но в диалогах сам еще не разобрался
265 2015-05-14 09:31:06
Re: Плагин автопродажи вещей в гос (259 ответов, оставленных в Настройки / Плагины)
Nikita_KrM],
по цифрам следующий расклад
1 - переход по картинке(поиск именно функции перехода), не чувствителен к регистру;
2 - поиск по текстовой ссылке,чувствителен к регистру;
3 - по найденному в картинке тексту(outerHTML), не чувствителен к регистру;
4 - поиск по value среди input-элементов,чувствителен к регистру;
нет цифры - поиск везде.
Я так понимаю нужна - 2
266 2015-05-13 09:45:01
Re: ФЛУД ПО МАРШРУТАМ. Тема для вопросов. Быстрые вопросы - быстрые ответы (298 ответов, оставленных в Подземелье / Маршруты)
ramzes, странно.. у меня косячит... надо будет проверить еще раз.
267 2015-05-13 09:43:27
Re: Прием в плагине (9 ответов, оставленных в Настройки / Плагины)
понял... надо подумать...
у приема задержка в разменах есть?
если есть то без размена не реализовать.
268 2015-05-12 21:34:00
Re: ФЛУД ПО МАРШРУТАМ. Тема для вопросов. Быстрые вопросы - быстрые ответы (298 ответов, оставленных в Подземелье / Маршруты)
ramzes, Masterplut,
на самом деле не всегда корректно работает условия с точным значением "=="
есть подозрения, что при обновлении фрейма счетчик посещения + посещения.
т.е. пришли на клетку... бот установил "0", на нас напал моб, после боя уже второе посещение и т.д.
У меня не получилось точно прописать... использую "<" или ">"
+ можно расписать условия посещения соседних клеток...
269 2015-05-12 18:28:35
Re: Прием в плагине (9 ответов, оставленных в Настройки / Плагины)
не совсем понятна мысль
270 2015-05-12 17:16:51
Re: как надевать пешерные свитки? (7 ответов, оставленных в Общий)
нет.
Плагин одевает, только то, что подобрал бот.
Если бот не подобрал, то плагин не одел.
Если нечего подбирать... бот ни чего и не подберет.
271 2015-05-12 10:22:20
Re: Возможные проблемы (451 ответов, оставленных в Проблемы / Баги / Неполадки)
Стала вылетать ошибка.
"Недостаточно памяти в строке: 382"
Номер строки меняется.
272 2015-05-12 08:21:15
Re: как надевать пешерные свитки? (7 ответов, оставленных в Общий)
можно подправить...
если они подбираются, то это просто...
если нет... то сложнее
273 2015-05-11 21:15:51
Re: как надевать пешерные свитки? (7 ответов, оставленных в Общий)
вопрос решил... пока обкатка
()
274 2015-05-11 21:14:40
Тема: Плагин одевания свитков восстановления 45ХП+ (7 ответов, оставленных в Настройки / Плагины)
Плагин: Одевания свитков Восстановления. (любых)
Название файла: SetScrollHP.js
Размещение: \Combots\Plugins
Описание:
Подбирает и одевает любые свитки Восстановления ХП в пещере.
В случае подбора хотя бы одного свитка оденет все свитки ХП, которые найдет в инвентаре.
Код плагина:
// Одевание свитков Восстановление энергии
var Pause = false;
var setTimer = {};
var timePLmin = 2000; // default
var timePLmax = 3000; // default
var stepClick = 0;
var colScroll = 0;
function SetScrollHP(enabled) {
if(enabled) {
PluginsOnLoad["SetScrollHP"] = "TakeDropScroll";
} else {
PluginsOnLoad["SetScrollHP"] = "";
clearInterval(setTimer[mylogin]);
stepClick = 0;
if (Pause){
ChangeTime();
}
}
}
function TakeDropScroll() {
if (top.frames[external.mainFrameIndex].location.toString().match(/dungeon\d+\.pl/i)){
if (external.inBattle){
clearInterval(setTimer[mylogin]);
if (Pause) { ChangeTime(); }
} else {
var ParsDrop = top.frames[external.mainFrameIndex].document.documentElement.outerHTML;
if (ParsDrop.indexOf("подняли 'Восстановление энергии") > 0){
colScroll = colScroll + 1;
external.AddToChat("Подняли свиток! Свитков на руках = "+colScroll+" шт.");
}
var itemDrop = $('h4',get_mainframe().document).text();
if (!(itemDrop.indexOf("разбросаны")+1) && colScroll > 0){
setTimer[mylogin] = setInterval('setScroll()', getRndTime(timePLmin, timePLmax));
}
}
}
}
function setScroll(){
if (!Pause) { ChangeTime(); }
if (stepClick == 0){
$('img[title="Настройки/Инвентарь"]',top.frames["bottom"].document).each(function() { this.click(); } )
stepClick = 1;
} else if (stepClick == 1){
external.ClickLink("Фильтр",2);
stepClick = 2;
} else if (stepClick == 2) {
var filterText = top.frames[external.mainFrameIndex].document.getElementsByName("filter");
stepClick = 3;
if (filterText[0].value != "восс"){
filterText[0].value = "восс";
}
} else if (stepClick == 3){
$('input[name="subfilter"]',get_mainframe().document).each(function() { this.click(); });
stepClick = 4;
} else if (stepClick == 4){
if (get_mainframe().document.all[0].innerHTML.indexOf('main.pl?set=cureHP') > -1){
external.ClickLink("надеть",2);
} else {
stepClick = 5;
}
} else {
$('input[value="Вернуться"]',get_mainframe().document).each(function() { this.click(); });
clearInterval(setTimer[mylogin]);
stepClick = 0;
colScroll = 0;
if(Pause) { ChangeTime(); }
}
}
function ChangeTime(){
if (!Pause){
// тормозим бота
external.Stop();
Pause = true;
}else{
// возвращаем бота в нормальное состояни
external.Start();
Pause = false;
}
}
function getRndTime(timePLmin, timePLmax){
return Math.floor(Math.random() * (timePLmax - timePLmin + 1)) + timePLmin;
}
Update 1:
Код плагина переработан полностью.
Update 2:
Исправлен программный недочет.
$('h4',get_mainframe().document).text();
с точки зрения кода (строка выше) фразы:
В комнате разбросаны вещи:
Кол-во смертей: Х
одинаковы(текс то есть и там и там) и соответственно при хотя бы одной смерти, скрипт думал, что в клетке есть дроп и ждал пока бот его подберет, что бы в дальнейшем его одеть. А бот шел дальше, так как дропа нет.
Проще говоря в ситуации с наличием смертей - свитки собирались, но не одевались.
Доработано:
Подбирает/одевает все свитки
Исправлена схема подбора свитка (теперь вначале собирает весь дроп в клетке, а потом одевает).
Исправлена схема одевания (убраны прямые ссылки, теперь делает все последовательно, как "живой")
Теперь есть задержка между действиями (Random).
Организованна функция, продолжения процесса одевания свитков, если оно было прервано нападением моба.
Update 3: v.2.0
Добавлен парсинг чата на получение Свитков Восстановления по суточному заданию.
Важно: После парсинга свитка, в случае его обнаружения, идет очистка чата (целиком)
Update 4: v.2.1
Переписал парсилку чата, теперь нет необходимости в очистке чата и соответственно плагин не чистит чат.
Код v 2.1
// Одевание свитков Восстановление энергии v.2.1
var Pause = false;
var setTimer = {};
var timePLmin = 1500; // default
var timePLmax = 2500; // default
var stepClick = 0;
var colScroll = 0;
var messChat = 0;
var messArray = [];
var filterText;
function SetScrollHP(enabled) {
if (enabled) {
PluginsOnLoad["SetScrollHP"] = "TakeDropScroll";
} else {
PluginsOnLoad["SetScrollHP"] = "";
clearInterval(setTimer[mylogin]);
stepClick = 0;
if (Pause) { ChangeTime(); }
}
}
function TakeDropScroll() {
if (top.frames[external.mainFrameIndex].location.toString().match(/dungeon\d+\.pl/i)) {
if (external.inBattle) {
clearInterval(setTimer[mylogin]);
if (Pause) { ChangeTime(); }
} else {
var ParsDrop = top.frames[external.mainFrameIndex].document.documentElement.outerHTML;
if (ParsDrop.indexOf("подняли 'Восстановление энергии") > 0) {
colScroll = colScroll + 1;
external.AddToChat("Подняли свиток! Свитков на руках = "+colScroll+" шт.");
}
var itemDrop = $('h4',get_mainframe().document).text();
if (!(itemDrop.indexOf("разбросаны")+1) && colScroll > 0) {
setTimer[mylogin] = setInterval('setScroll()', getRndTime(timePLmin, timePLmax));
}
}
} else {
if (!external.inBattle && messChat == 0) {
// < - Парсилка чата - >
$(".Chat",top.Chat.Self.arrLogs.oChat.oFrame).each(function(){ var messTMP = this.innerText; if (messTMP.indexOf("Восст") > -1) { FindMess(messTMP); } });
}
}
}
function FindMess(messTMP){
if (messArray.indexOf(messTMP) < 0) {
messArray = messArray + messTMP+" // ";
setTimer[mylogin] = setInterval('setScroll()', getRndTime(timePLmin, timePLmax));
messChat = 1;
}
}
function setScroll(){
if (!Pause) { ChangeTime(); }
if (stepClick == 0) {
$('img[title="Настройки/Инвентарь"]',top.frames["bottom"].document).each(function(){ this.click(); });
stepClick = 1;
} else if (stepClick == 1) {
external.ClickLink("Фильтр",2);
stepClick = 2;
} else if (stepClick == 2) {
filterText = top.frames[external.mainFrameIndex].document.getElementsByName("filter");
if (filterText[0].value != "восс") {
filterText[0].value = "восс";
}
stepClick = 3;
} else if (stepClick == 3) {
$('input[name="subfilter"]',get_mainframe().document).each(function(){ this.click(); });
stepClick = 4;
} else if (stepClick == 4) {
if (get_mainframe().document.all[0].innerHTML.indexOf('main.pl?set=cureHP') > -1) {
external.ClickLink("надеть",2);
} else {
stepClick = 5;
}
} else {
$('input[value="Вернуться"]',get_mainframe().document).each(function(){ this.click(); });
clearInterval(setTimer[mylogin]);
stepClick = 0;
colScroll = 0;
messChat = 0;
if(Pause) { ChangeTime(); }
}
}
function ChangeTime(){
if (!Pause) {
external.Stop();
Pause = true;
} else {
external.Start();
Pause = false;
}
}
function getRndTime(timePLmin, timePLmax){
return Math.floor(Math.random() * (timePLmax - timePLmin + 1)) + timePLmin;
}
Доработано:
Организованна функция, одевания свитков полученных за выполнение суточного Задания
275 2015-05-11 04:05:48
Re: как надевать пешерные свитки? (7 ответов, оставленных в Общий)
работаю над этим вопросом... ни как не могу выцепить ссылку на одевания свитка...
всю башку сломал...
Ссылка имеет вид
http://dreamscity.combats.com/main.pl?set=cureHP45&n=ХХ&sd4=YYYYYYYY&tmp=RRRRRRR
не могу вытащить XX и YYYYYYYY
XX - порядковый номер свитка в инвентаре
YYYYYYYY - номер свитка (наверное ID)
так то линк такой
"http://" + external.SCity.Text + ".combats.com/main.pl?set=cureHP45&n=" + numScroll[1] + "&sd4=" + numScroll[2] + "&tmp=" + Math.random();
надо выцепить переменный numScroll[1] и numScroll[2]
Пытаюсь выцепить через регулярки в главном фрейме, когда там открыт инвентарь....
var ScanScroll = /\?set=cureHP45&n=(\d+)&sd4=(\d+)&/ig;
var numScroll = ScanScroll.exec(external.mainFrameIndex);
но пока что то ни как....