чем можно открыть файл ca2 ?
Блокнотом
нужно вытащить пасс от чара
пасс зашифрован, и это не md5
Как ее купить если Зерг все время офф?
а зерг уже не у дел)
анахроник, как я понял, в отпуске.
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
Combots Бот для БК » Сообщения от Exile
чем можно открыть файл ca2 ?
Блокнотом
нужно вытащить пасс от чара
пасс зашифрован, и это не md5
Как ее купить если Зерг все время офф?
а зерг уже не у дел)
анахроник, как я понял, в отпуске.
Вот уже где-то месяца два-три я просматриваю события чаров комбатса с сервиса 7клана.
За это время 95% закрытых чаров за ботоводство - лучники 8-9 уровней (остальные 5% - хайлевелы или чары с комплектом, отличным от лука).
Возникает вопрос:
а) Такой высокий процент блоков из-за того, что большинство ботоводов качают лукарей.
б) Есть какой-то лукоориентированный палевный клиент бота неизвестного происхождения.
в) Combots где-то палится в режиме стрелка.
А что думаете Вы?
Ребят, как написать эту строку, чтоб продавал любое количество бутылок
var sellTimer = {};
var done = false;
var itemsToSell = [];
itemsToSell.push("вещь");
function SellInShop(enabled)
{
if(enabled)
{
sellTimer[mylogin] = setInterval("SellAction()", 3000);
}
else
{
clearInterval(sellTimer[mylogin]);
}
}
Array.prototype.inArray = function(item)
{
for (var i in this)
if (item.indexOf(this[i]) > -1)
return true;
return false;
}
function SellAction()
{
try
{
if(!external.dungeonEnabled) return;
if(top.Battle.bInBattle || top.frames[external.mainFrameIndex].location.toString().match(/dungeon\d+\.pl/i))
{
done = false;
return;
}
var s = top.frames[external.mainFrameIndex].document.all[0].innerHTML;
if(!done)
{
if(s.match(/drwfl\("Илена",/i) || s.match(/drwfl\("Бартоломей",/i))
external.ClickLink("подойти к прилавку",2);
else if (external.room_name == "Центральная грибница" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Прилавки с товарами",3);
else if (external.room_name == "Грибница" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Грибная поляна",2);
else if (external.room_name == "Грибная поляна" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Странное Место",3);
else if (external.room_name == "Странное Место" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Грибная лужайка",3);
else if (external.room_name == "Грибная лужайка" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Центральная грибница",3);
else if (external.room_name == "Прилавки с товарами")
external.ClickLink("Илена",3);
else if (external.room_name == "Пещеры Мглы" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Внутренний двор",2);
else if (external.room_name == "Внутренний двор" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Последний Привал",3);
else if (external.room_name == "Последний Привал" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Цветочный Пустырь",3);
else if (external.room_name == "Цветочный Пустырь" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Центральный Оазис",3);
else if (external.room_name == "Центральный Оазис" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Базар",3);
else if (external.room_name == "Базар" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Лавка Бартоломея",3);
else if (external.room_name == "Лавка Бартоломея")
external.ClickLink("Бартоломей",3);
else if(external.room_name == "Магазин")
{
if(s.match(/Отдел \"Скупка\"/i) == null)
external.ClickLink("Продать вещи",4);
else
{
var items = s.match(/<a\shref="shop\.pl\?sl=[^"]*">продать за .*? кр.<\/a><\/td>[\s\n\r]*<td[^>]*><a [^>]*>[^&<]*/ig);
if(items != null)
for(var i = 0; i < items.length; i++)
{
items[i] = items[i].match(/<a\shref="(shop\.pl\?sl=[^"]*)">продать за .*? кр.<\/a><\/td>[\s\n\r]*<td[^>]*><a [^>]*>([^&<]*)/i);
items[i][1] = items[i][1].replace(/&/g, '&');
if(itemsToSell.inArray(items[i][2]))
{
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/" + items[i][1];
return;
}
}
done = true;
}
}
}
else
{
if (external.room_name == "Магазин" && top.frames[external.mainFrameIndex].is_accessible)
{
if(s.match(/Лавка Бартоломея/)) external.ClickLink("Лавка Бартоломея",2);
if(s.match(/Прилавки с товарами/)) external.ClickLink("Прилавки с товарами",2);
}
else if (external.room_name == "Лавка Бартоломея" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Базар",3);
else if (external.room_name == "Базар" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Центральный Оазис",3);
else if (external.room_name == "Центральный Оазис" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Цветочный Пустырь",3);
else if (external.room_name == "Цветочный Пустырь" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Последний Привал",3);
else if (external.room_name == "Последний Привал" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Внутренний двор",3);
else if (external.room_name == "Внутренний двор" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Пещеры Мглы",3);
else if (external.room_name == "Прилавки с товарами" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Центральная грибница",3);
else if (external.room_name == "Центральная грибница" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Грибная лужайка",3);
else if (external.room_name == "Грибная лужайка" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Странное Место",3);
else if (external.room_name == "Странное Место" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Грибная поляна",3);
else if (external.room_name == "Грибная поляна" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Грибница",3);
}
}
catch(err)
{
external.AddToChat("error");
}
}
Попробуй так.
Вы должны зайти под своим именем, чтобы увидеть скрытый текст.
попробуй так
А моя не работает?(
f(room == "Спуск в катакомбы"
Ты переменную объявил?)
В неё название комнаты спарсил?)
Так что не работает)
По задумке должно проверять каждые 5 минут, если ты не на входе - то будет заходить.
Исправленная версия:
function toDungeon(enabled)
{
if(enabled)
{
toDungeonTimer = setInterval("toDungeonHandler()",36000);
}
else
{
clearInterval(toDungeonTimer);
}
}
function toDungeonHandler()
{
if(external.room_name == "Спуск в катакомбы" && top.frames[external.mainFrameIndex].document.all[0].innerHTML.match(/Никогда и никому не говорите пароль от своего персонажа/))
external.ClickLink("Спуск в Катакомбы",1);
}
ArrowEnds - стрелы кончаются. Т.е. если стрелы есть, должен быть фолс. Если ставишь тру - это ошибка явно...
external.ArrowsEnds - возвращает false, если не нашлось нужных стрел. Значение true после этого надо задавать самому. Используется чито для контроля, на бота не влияет.
Дезинформируете, сударь)
Exile
Пока плагин крутится, наблюдаю за его работой, оставил needToBuy = 1 т.к. практически после каждого проигранного боя бот ходит покупать стрелы (не могу пока догнать почему так, может просто совпадение). Вообщем смотрим.
Посмотри что хранится в external.ArrowEnds
Может быть каким-то хером бот не обновляет состояние переменной, хотя external.ArrowsEnds = true; имеется при переходе в зал.
Exile
Вот уррра! Хотя в чем разница? Клик по амуниции аналогичный
Тут, видимо, из-за того, что когда включался плагин, а стрел уже нету - то leftToBuy оставался равным нулю.
gorlum пишет:А в закладку "Амуниция" заходит?
В том-то и дело, что не заходит
Exile
Вот здесь ошибка.
Пробовал и 2 и 4 все равно не выбирает Амуницию.
Хм...
var min = 1000;
var max = 3000;
var randomValue;
var needToBuy = 1;
var leftToBuy = 1;
var buyingFinished = false;
var room = '';
var streluTimer = {}
var itemName = "Обычные стрелы для арбалета";
function strelu(enabled)
{
if(enabled)
{
leftToBuy = needToBuy;
streluTimer[mylogin] = setInterval("streluHandler()",2000);
}
else
{
clearInterval(streluTimer[mylogin]);
}
}
function streluHandler()
{
try
{
clearInterval(streluTimer[mylogin]);
randomValue = Math.floor(Math.random()*(max - min) + min);
streluTimer[mylogin] = setInterval("streluHandler()", randomValue);
if(external.ArrowsEnds)
{
leftToBuy = needToBuy;
return;
}
if(get_mainframe().document.all[0].innerHTML.match(/Недостаточно места в рюкзаке/) || get_mainframe().document.all[0].innerHTML.match(/Недостаточно денег/))
buyingFinished = true;
external.SBattleAbovePercent.Text = 101;
var s = top.frames[external.mainFrameIndex].document.all[0].innerHTML;
if(room = s.match(/<nobr>([^<]+)<\/nobr>/))
room = String(room[1]);
if(!buyingFinished)
{
if(room == null)
{
if(s.match(/drwfl\("Илена",/i)) external.ClickLink("пройти к прилавкам",2);
//тут идут условия для остальных ботов
}
else if(room.match(/Зал воинов/i) && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("\'Бойцовский Клуб\'",3);
else if(room == "Бойцовский Клуб" && external.SCity.Text == "suncity" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Центральная грибница",3);
else if (room == "Центральная грибница" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Прилавки с товарами",3);
else if (room == "Прилавки с товарами" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Илена",3);
else if(room == "Бойцовский Клуб" && (external.SCity.Text == "lowcity" || external.SCity.Text == "oldcity" || external.SCity.Text == "dreamcity") && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Центральная Площадь",3);
else if (room == "Центральная Площадь" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Магазин",3);
else if(room == "Магазин")
{
if(s.match(/Отдел \"Амуниция\"/i) == null) external.ClickLink("Амуниция",2);
else
{
if(leftToBuy == 0)
{
buyingFinished = true;
return;
}
if(external.level <= 7)
{
//покупка за зубы. Хз как сделать
}
else
{
external.ClickLink(itemName,3);
buyingFinished = true;
top.frames[external.mainFrameIndex].document.getElementsByName("count")[0].value = needToBuy;
top.frames[external.mainFrameIndex].document.forms[0].submit();
}
}
}
}
else
{
if(room == "Магазин" && external.SCity.Text == "suncity" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Прилавки с товарами",2);
else if (room == "Прилавки с товарами")
external.ClickLink("Центральная грибница",3);
else if (room == "Центральная грибница" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Бойцовский Клуб",3);
else if(room == "Бойцовский Клуб" && top.frames[external.mainFrameIndex].is_accessible)
{
external.ClickLink("Зал воинов",3);
external.ArrowsEnds = true;
buyingFinished = false;
external.SBattleAbovePercent.Text = 100;
}
}
}
catch(err)
{
external.AddToChat("err");
}
}
Если и это не заработает - то я уже и хз.
external.level - как-то криво работает. Иногда выбивает как 0
if(s.match(/Отдел \"Амуниция\"/i) == null)
external.ClickLink("Амуниция",4);
Вот здесь ошибка.
Вопрос по clicklink:
при id = 2 поиск производится только по innerHTML?
А если вместо итемнейма вписать bolt_common100 например?
Тоже не выйдет, по той причине что, даже если и кликнет по покупке за зубы - выбьет confirm-алерт, который программно не подтвердишь.
В нубогороде не хочет заходить в магаз почему-то. И почему нельзя сделать покупку за зубы вот так?
пардон, ошибся в условии.
var min = 1000;
var max = 3000;
var randomValue;
var needToBuy = 10;
var leftToBuy = 0;
var buyingFinished = false;
var room = '';
var streluTimer = {}
var itemName = "Обычные стрелы для арбалета";
function strelu(enabled)
{
if(enabled)
{
streluTimer[mylogin] = setInterval("streluHandler()",2000);
}
else
{
clearInterval(streluTimer[mylogin]);
}
}
function streluHandler()
{
try
{
clearInterval(streluTimer[mylogin]);
randomValue = Math.floor(Math.random()*(max - min) + min);
streluTimer[mylogin] = setInterval("streluHandler()", randomValue);
if(external.ArrowsEnds)
{
leftToBuy = needToBuy;
return;
}
if(get_mainframe().document.all[0].innerHTML.match(/Недостаточно места в рюкзаке/) || get_mainframe().document.all[0].innerHTML.match(/Недостаточно денег/))
buyingFinished = true;
external.SBattleAbovePercent.Text = 101;
var s = top.frames[external.mainFrameIndex].document.all[0].innerHTML;
if(room = s.match(/<nobr>([^<]+)<\/nobr>/))
room = String(room[1]);
if(!buyingFinished)
{
if(room == null)
{
if(s.match(/drwfl\("Бартоломей",/i)) external.ClickLink("подойти к прилавку",2);
//тут идут условия для остальных ботов
}
else if(room.match(/Зал воинов/i) && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("\'Бойцовский Клуб\'",3);
else if(room == "Бойцовский Клуб" && external.SCity.Text == "sandcity" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Центральный Оазис",3);
else if (room == "Центральный Оазис" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Базар",3);
else if (room == "Базар" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Лавка Бартоломея",3);
else if (room == "Лавка Бартоломея")
external.ClickLink("Бартоломей",3);
else if(room == "Бойцовский Клуб" && (external.SCity.Text == "lowcity" || external.SCity.Text == "oldcity" || external.SCity.Text == "dreamcity") && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Центральная Площадь",3);
else if (room == "Центральная Площадь" && top.frames[external.mainFrameIndex].is_accessible)
if(!external.ClickLink("Магазин",3)) alert("tt");
else if(room == "Магазин")
{
if(s.match(/Отдел \"Амуниция\"/i) == null) external.ClickLink("Амуниция",2);
else
{
if(leftToBuy == 0)
{
buyingFinished = true;
return;
}
if(external.level <= 7)
{
//покупка за зубы. Хз как сделать
}
else
{
external.ClickLink(itemName,3);
buyingFinished = true;
top.frames[external.mainFrameIndex].document.getElementsByName("count")[0].value = needToBuy;
top.frames[external.mainFrameIndex].document.forms[0].submit();
}
}
}
}
else
{
if(room == "Магазин" && external.SCity.Text == "sandcity" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Лавка Бартоломея",2);
else if (room == "Лавка Бартоломея")
external.ClickLink("Базар",3);
else if (room == "Базар" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Центральный Оазис",3);
else if (room == "Центральный Оазис" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Бойцовский Клуб",3);
else if(room == "Бойцовский Клуб" && top.frames[external.mainFrameIndex].is_accessible)
{
external.ClickLink("Зал воинов",3);
external.ArrowsEnds = true;
buyingFinished = false;
external.SBattleAbovePercent.Text = 100;
}
}
}
catch(err)
{
external.AddToChat("err");
}
}
И почему нельзя сделать покупку за зубы вот так?
Во-первых, делать клики циклом категорически неправильно.
Во-вторых, как думаешь, что произойдет по external.ClickLink(itemName,3); ??? Подскажу: lib.combats.com
gorlum
Испытал. Порадовало что бот проверяет есть ли задание и если есть, то идет копать.
Но опять встал на первой клетке данжа.
external.DungeonLoadPath("имя") указывал и так и external.DungeonLoadPath("имя.path")
Все равно стоит. Может что не так делаю?
Попробуй поменять строки
external.DungeonEnabled и external.DungeonLoadPath местами. Мало ли, вдруг сработает.
так что, дальше никто не поможет?( а то мне не хватает знаний, могу как тестер только выступать(
в чем именно нужна помощь?
()
вот тут ж вроде уже работая версия, только сделана только под два города.
else if (room == "Внутренний двор" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Последний Привал",3);А зачем 3?
Если указать 1(кстати, 1-й какрас был создан для переходов по локациям...но не подходит для данжей, т.к. данжи только внешне схожи), то можно забить на top.frames[external.mainFrameIndex].is_accessible - у меня это предусмотрено...и даже чуть красивее
А хрен с ним, уже в лом править.
Буду знать на будущее.
Да, кстати, не помешал бы экстернал для диалога типа external.InDialog (true - если ведется диалог с ботом);
var sellTimer = {};
var done = false;
var room ='';
var itemsToSell = [];
itemsToSell.push("вещь");
function SellInShop(enabled)
{
if(enabled)
{
sellTimer[mylogin] = setInterval("SellAction()", 3000);
}
else
{
clearInterval(sellTimer[mylogin]);
}
}
Array.prototype.inArray = function(item)
{
for (var i in this)
{
if (this[i] === item)
return true;
}
return false;
}
function SellAction()
{
try
{
if(!external.dungeonEnabled) return;
if(top.Battle.bInBattle || top.frames[external.mainFrameIndex].location.toString().match(/dungeon\d+\.pl/i))
{
done = false;
return;
}
var s = top.frames[external.mainFrameIndex].document.all[0].innerHTML;
if(room = s.match(/<nobr>([^<]+)<\/nobr>/))
room = String(room[1]);
if(!done)
{
if(room == null && (s.match(/drwfl\("Илена",/i) || s.match(/drwfl\("Бартоломей",/i)))
external.ClickLink("подойти к прилавку",2);
else if (room == "Центральная грибница" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Прилавки с товарами",3);
else if (room == "Грибница" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Грибная поляна",2);
else if (room == "Грибная поляна" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Странное Место",3);
else if (room == "Странное Место" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Грибная лужайка",3);
else if (room == "Грибная лужайка" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Центральная грибница",3);
else if (room == "Прилавки с товарами")
external.ClickLink("Илена",3);
else if (room == "Пещеры Мглы" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Внутренний двор",2);
else if (room == "Внутренний двор" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Последний Привал",3);
else if (room == "Последний Привал" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Цветочный Пустырь",3);
else if (room == "Цветочный Пустырь" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Центральный Оазис",3);
else if (room == "Центральный Оазис" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Базар",3);
else if (room == "Базар" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Лавка Бартоломея",3);
else if (room == "Лавка Бартоломея")
external.ClickLink("Бартоломей",3);
else if(room == "Магазин")
{
if(s.match(/Отдел \"Скупка\"/i) == null)
external.ClickLink("Продать вещи",4);
else
{
var items = s.match(/<a\shref="shop\.pl\?sl=[^"]*">продать за .*? кр.<\/a><\/td>[\s\n\r]*<td[^>]*><a [^>]*>[^&<]*/ig);
if(items != null)
for(var i = 0; i < items.length; i++)
{
items[i] = items[i].match(/<a\shref="(shop\.pl\?sl=[^"]*)">продать за .*? кр.<\/a><\/td>[\s\n\r]*<td[^>]*><a [^>]*>([^&<]*)/i);
items[i][1] = items[i][1].replace(/&/g, '&');
if(itemsToSell.inArray(items[i][2]))
{
top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text + ".combats.com/" + items[i][1];
return;
}
}
done = true;
}
}
}
else
{
if (room == "Магазин" && top.frames[external.mainFrameIndex].is_accessible)
{
if(s.match(/Лавка Бартоломея/)) external.ClickLink("Лавка Бартоломея",2);
if(s.match(/Прилавки с товарами/)) external.ClickLink("Прилавки с товарами",2);
}
else if (room == "Лавка Бартоломея" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Базар",3);
else if (room == "Базар" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Центральный Оазис",3);
else if (room == "Центральный Оазис" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Цветочный Пустырь",3);
else if (room == "Цветочный Пустырь" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Последний Привал",3);
else if (room == "Последний Привал" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Внутренний двор",3);
else if (room == "Внутренний двор" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Пещеры Мглы",3);
else if (room == "Прилавки с товарами" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Центральная грибница",3);
else if (room == "Центральная грибница" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Грибная лужайка",3);
else if (room == "Грибная лужайка" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Странное Место",3);
else if (room == "Странное Место" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Грибная поляна",3);
else if (room == "Грибная поляна" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Грибница",3);
}
}
catch(err)
{
external.AddToChat("error");
}
}
var min = 1000;
var max = 3000;
var randomValue;
var needToBuy = 10;
var leftToBuy = 0;
var buyingFinished = false;
var room = '';
var streluTimer = {}
var itemName = "Обычные стрелы для арбалета";
function strelu(enabled)
{
if(enabled)
{
streluTimer[mylogin] = setInterval("streluHandler()",2000);
}
else
{
clearInterval(streluTimer[mylogin]);
}
}
function streluHandler()
{
try
{
clearInterval(streluTimer[mylogin]);
randomValue = Math.floor(Math.random()*(max - min) + min);
streluTimer[mylogin] = setInterval("streluHandler()", randomValue);
if(external.ArrowsEnds)
{
leftToBuy = needToBuy;
return;
}
if(!get_mainframe().document.all[0].innerHTML.match(/Недостаточно места в рюкзаке/) && !get_mainframe().document.all[0].innerHTML.match(/Недостаточно денег/))
buyingFinished = true;
external.SBattleAbovePercent.Text = 101;
var s = top.frames[external.mainFrameIndex].document.all[0].innerHTML;
if(room = s.match(/<nobr>([^<]+)<\/nobr>/))
room = String(room[1]);
if(!buyingFinished)
{
if(room == null)
{
if(s.match(/drwfl\("Бартоломей",/i)) external.ClickLink("подойти к прилавку",2);
//тут идут условия для остальных ботов
}
else if(room.match(/Зал воинов/i) && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("\'Бойцовский Клуб\'",3);
else if(room == "Бойцовский Клуб" && external.SCity.Text == "sandcity" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Центральный Оазис",3);
else if (room == "Центральный Оазис" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Базар",3);
else if (room == "Базар" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Лавка Бартоломея",3);
else if (room == "Лавка Бартоломея")
external.ClickLink("Бартоломей",3);
else if(room == "Бойцовский Клуб" && (external.SCity.Text == "lowcity" || external.SCity.Text == "oldcity" || external.SCity.Text == "dreamcity") && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Центральная Площадь",3);
else if (room == "Центральная Площадь" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Магазин",3);
else if(room == "Магазин")
{
if(s.match(/Отдел \"Амуниция\"/i) == null) external.ClickLink("Амуниция",2);
else
{
if(leftToBuy == 0)
{
buyingFinished = true;
return;
}
if(external.level <= 7)
{
//покупка за зубы. Хз как сделать
}
else
{
external.ClickLink(itemName,3);
buyingFinished = true;
top.frames[external.mainFrameIndex].document.getElementsByName("count")[0].value = needToBuy;
top.frames[external.mainFrameIndex].document.forms[0].submit();
}
}
}
}
else
{
if(room == "Магазин" && external.SCity.Text == "sandcity" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Лавка Бартоломея",2);
else if (room == "Лавка Бартоломея")
external.ClickLink("Базар",3);
else if (room == "Базар" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Центральный Оазис",3);
else if (room == "Центральный Оазис" && top.frames[external.mainFrameIndex].is_accessible)
external.ClickLink("Бойцовский Клуб",3);
else if(room == "Бойцовский Клуб" && top.frames[external.mainFrameIndex].is_accessible)
{
external.ClickLink("Зал воинов",3);
external.ArrowsEnds = true;
buyingFinished = false;
external.SBattleAbovePercent.Text = 100;
}
}
}
catch(err)
{
external.AddToChat("err");
}
}
черновик
если прикручивать покупку за зубы - придется выдирать кусок кода из плагина покупки за зубы.
Значит мне вообще не надо ставить clearInterval(streluTimer) в тот код, который ты написал выше?
Да, что-то я не подумал. clearInterval там не нужен. Плагин ж будет крутиться нон-стоп проверяя значение в ArrowsEnds
Стоп, я изначально сделал функцию
function strelu(enabled)
{
if(enabled)
{
streluTimer = setInterval("streluHandler()",2000);
}
else
{
clearInterval(streluTimer);
}По идее мне вообще не надо ещё что-либо ставить? есть же выставленный интервал, или я туплю?
Да, уже есть. Твой метод streluHandler будет выполняться каждые две секунды.
Да, не понял сразу) Если плагин называется strelu, то переменная должна быть streluHandler, как и название основной функции, правильно же?
Не.
Когда ты устанавливаешь таймер, метод setInterval возвращает идентификатор таймера, который нужен нам для остановки таймера, т.е.
var someVarName = setInterval(func() {...},time);
вот этот someVarName - и есть идентификатор установленного таймера. Его и надо юзать в clearInterval:
clearInterval(someVarName);
Не хочет работать с клиринтервал
if(leftToBuy <= 0)
{
clearInterval("на вот этом вот символе видит синтаксическую ошибку"...);
return;
}
ээээ. Ты что, вместо троеточия не вставил имя переменной от setInterval-а?
anahronik пишет:Экстернал рабочий - просто надо маршрут указывать ещё.
Плагины выложить всегда успеешьТак его надо указывать в плагине чтоль?
external.DungeonLoadPath("имя");
вот такой метод есть (по крайней мере был)
Combots Бот для БК » Сообщения от Exile