Приветствую Вас Гость | RSS Главная | Аддон Макс обкаст для плагина дозоров - Форум организации Око Тьмы. | Регистрация | Вход
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Архив - только для чтения
Модератор форума: miller13  
Аддон Макс обкаст для плагина дозоров
StrangerKzДата: Среда, 2007-10-31, 6:50 AM | Сообщение # 1
Группа: Удаленные





Сабж пока еще находится в состоянии бета версии, но сопсно уже работает
Почитать описание настроек и взять версию от разработчика можно здесь (в ней сопсно прописаны маги и звери): http://unk.no-ip.org/dp/obkast/

теперь немного о том что можно получить с его помощью:
автоматический каст нужных заклов для получения требуемых значений: быра+..., сила +..., удача + ... и т.д. на основе заклов имеющихся на рефлексе и доступных для каста в быту

я не силен в программировании, но сопсно у меня получилось с помощью разработчика аддона сделать варианты для зверей (только для оборотней, для перевертов есть свои тонкости по сбору энки) и вампиров (для вампов сбора энки нет, поэтому перед запуском скрипта и после него нужно вручную укусить чела чтобы была энка).
С данным аддоном существует одна проблема - значения кастов нужно прописывать индивидуально для каждого (не у всех зверей например коготь на +8 ложится).

Сопсно чтобы использовать нижеприведенный код нужно следующее:
скопировать нужный код (полностью то что между выделенным красным цветом текстом) вставить в текстовый документ, сохранить текстовый файл a формате *.js
полученный файл положить сюда: c:\Program Files\Mozilla Firefox\DozoryPlg\addons\
в лисе нажать Инструменты/Dozory Plugin/обновить дополнения
потом F5 в игре
Для использования кликаем на значке орги перса (большом) и видим меню.
Код еще возможно где-то кривой, в будущем (если будет время постараюсь удалить из него все лишнее не относящееся к отдельным классам).
При работе скрипта може показаться что лиса зависла, это связано со скоростью интернета и количеством кастов закла для получения требуемого результата

для вампиров-рукопашников (прописан каст крыльев на +7, каст тумана на +3, каст силы на +5):

//$Id: obkast.js,v 1.6 2007/10/13 17:34:12 cvsuser Exp $
//obkast.js
//v0.2
//© guest under BSD/BSDL.

if (document.location.pathname == "/cgi-bin/main.cgi" &&
typeof __act != "undefined") {

//Настройки:
// Максимально допустимое ко-во кастов одного закла
var maxTries = 20;

//Список кастов в формате:
// текст отображаемый в меню.
// пример: 'Ход на +'
//
// Требуемый результат каста:
// Если 0, то результат каста не важен.;
//
// Параметры запроса к серверу или javascript код
// запрос - эта строка будет добавлена к "/cgi-bin/main.cgi?";
// пример: "act=spell_24_" + __act + "&rm=action"
// javascript - строка начинается с "EVAL:",
// вызываемый код должен возвращать null при ошибке.
// пример: "EVAL:myFunction(param1, param2)"
//
// Регулярное выражение для выделения из ответа
// сервера результата каста. Вызывается так:
// encodeURI(response).replace(spell[3], "$3");
// пример: /(.*)(uskoren\.gif\'\,\'.{100}\+([0-9]{1,}))(.*)/
//
// Номер цепочки кастов:
// 0 - индивидуальный каст (не включается в цепочку)
// Номера цепочек должны начинаться с 1 и итди подряд.
// Рекомендуется в цепочках заклы ставить в порядке "тяжелые"
// (требуется кастовать много раз для получения результата)
// - "легкие". Либо ставить в конец заклы с не продолжительным
// временем действия (например ярость).

var spells = new Array(

//Цепочка кастов номер 1
//ДЛЯ Вампиров
//Крылья
Array(
"Крылья +", //Текст меню
7, //Требуемый результат каста
"act=spell_210_" + __act + "&rm=action", //Запрос
/(.*)(uskoren\.gif\'\,\'.{97,104}\+([0-9]{1,}))(.*)/, //Рег. выр.'
3 //Номер цепочки
),
//Туман
Array(
"Туман +", //Текст меню
3, //Требуемый результат каста
"act=spell_149_" + __act + "&rm=action", //Запрос
/(.*)(razyaren\.gif\'\,\'.{51}([0-9]{1})\'\,\'\'\,)(.*)/, //Рег. выр.'
3 //Номер цепочки
),
//Коготь
Array(
"Коготь", //Текст меню
5, //Требуемый результат каста
"act=spell_146_" + __act + "&rm=action", //Запрос
/(.*)(usilen\.gif\'\,\'.{70}\+([0-9]{1,}))(.*)/, //Рег. выр.'
3 //Номер цепочки
)

//Тут можно добавить свое
);
}
//Конец настроек

function __spellSend(spell)
{
if (spell.indexOf("EVAL:") == 0) {
try {
var result = eval(spell.substr(5));
return result;
} catch(err) {
return null;
}
}

var req = new XMLHttpRequest();
req.open("GET", "/cgi-bin/main.cgi?" + spell, false);
req.send(null);
if ((req.readyState != 4) || (req.status != 200)) return null;
return req.responseText;
}

function __display(msg)
{
var chatDoc = window.parent.frames[1].document;
if (!chatDoc) return;

var chatDiv = chatDoc.getElementById("chat");
if (!chatDiv) return;

var msgDiv = chatDoc.createElement("div");

msgDiv.class = "message";
msgDiv.innerHTML = '<SPAN class="system"><SPAN class="private">' +
'<MSG>' +
'<STRONG>[guest]: </STRONG>' +
'<B>' + msg + '</B>' +
'</MSG></SPAN></SPAN>';

chatDiv.appendChild(msgDiv);
return;
}

function cheatDo(spell)
{
var successFlag = false;
var spellText = spell[0];
var spellNeed = spell[1];
var spellCode = spell[2];
var spellRegExp = spell[3];
var spellMacro = spell[4];

if (spellNeed == 0) {
//Выполняем 1 раз, результат не проверяем.
var i = 1;
var curVal = "";

if (__spellSend(spellCode))
successFlag = true;

} else {
//Выполняем не более maxTries раз, результат нужен.
for (var i = 0; i < maxTries; i++) {
var response = __spellSend(spellCode);
var curVal = encodeURI(response).replace(spellRegExp, "$3");
if (curVal >= spellNeed) {
successFlag = true;
i++;
break;
}
}
}

if (spellMacro > 0) return successFlag;

if (successFlag == true)
__display("Готово: " + spellText + curVal + " было " + i +" попыток.");
else
__display("не получилось");

//обновим экран.
document.location.href = "/cgi-bin/main.cgi";
}

function get_energy()
{
//если мы не в реале, то ничего не делаем
if (dm.current != 0)
return true;

if (person.magic_align == "Dark") {

if (person.class_name == "Оборотень") {
var isZver = false;

for (var i = 0; i < acts_mg.length; i++) {
if (acts_mg[i][3] == "spell_160") {
//яра доступна значит в зверьке.
isZver = true;
break;
}
}

//трансформ в зверя
if (isZver == false)
__spellSend("act=spell_130_" + __act + "&rm=action");

//грызем чела
__spellSend("act=spell_198_" + __lact + "&rm=action");

} else if (person.class_name == "Вампир") {
//Нет тестового перса - в лес
} else {
//обратить к тьме + собрать энку
__spellSend("act=spell_137_" + __lact + "&act=spell_138_" + __lact + "&rm=action");
}
} else {
if (person.class_name == "Маг-перевертыш") {
var isZver = false;

for (var i = 0; i < acts_mg.length; i++) {
if (acts_mg[i][3] == "spell_160") {
//яра доступна значит в зверьке.
isZver = true;
break;
}
}

//трансформ в чела
if (isZver == true)
__spellSend("act=spell_130_" + __act + "&rm=action");

//обратить к свету + энка + трансформ в тотем
__spellSend("act=spell_136_" + __lact +
"&act=spell_138_" + __act +
"&act=spell_130_" + __act + "&rm=action");

} else {
//обратить к свету + собрать энку
__spellSend("act=spell_136_" + __lact + "&act=spell_138_" + __lact + "&rm=action");

}
}

return true;
}

//main()
if (document.location.pathname == "/cgi-bin/main.cgi" &&
typeof __act != "undefined")
{

var hero = document.getElementById("hero");

if (hero) {
var orgImg = document.evaluate("//img[contains(@src,'/img/znaki/')]", hero, null, XPathResult.ANY_TYPE, null).iterateNext();

if (orgImg) {
var macroCode = new Array(); //код цепочек
var macroText = new Array(); //текст цепочек
var singleSpells = ""; //одиночные заклы

for (var i = 0; i < spells.length; i++) {
var spell = spells[i];

if (spell[4] == 0) {
//одиночный закл
singleSpells += '+ <a href="JavaScript: cheatDo(spells[' +
i +']);">' + spell[0];

if (spell[1] > 0)
singleSpells += spell[1];

singleSpells += '</a><br />';
} else {
//Закл входит в цепочку
if (typeof macroCode[spell[4] - 1] == "undefined")
macroCode[spell[4] - 1] = "";
macroCode[spell[4] - 1] += 'if(f==true)f=cheatDo(spells[' + i + ']);';

if (typeof macroText[spell[4] - 1] == "undefined")
macroText[spell[4] - 1] = "";
macroText[spell[4] - 1] += spell[0];

if (spell[1] > 0)
macroText[spell[4] - 1] += spell[1]

macroText[spell[4] - 1] += ' ';
}
}

var macroSpells = "";

if (macroCode.length > 0)
macroSpells = '<font size=2>= <u><b>Обкаст</b></u> =</font> <br />';

var i = 0;
while (i < macroCode.length) {
macroSpells += '+ <a href="JavaScript:var f=true;' + macroCode[i] +
'if(f==true)__display(\'Готово: '+ macroText[i] +
'\');else __display(\'Не получилось\');' +
'document.location.href=\'/cgi-bin/main.cgi\';">' +
macroText[i] +'</a><br />';
i++;
}

orgImg.setAttribute("id", "cheatz");

tooltips.cheats = {
info_content_align: 'center',
INFO_CONTENT: 'Cheats Меню',
PROMO_CONTENT:
'<div class="competitor_сheats"><font size=2>= <u><b>' +
'Одиночные заклы</b></u> =</font> <br />'+
singleSpells + macroSpells + '</div>'
}

Tooltip.bind('cheatz','click_hidebale','info_promo',{},'cheats',{});

}//orgImg
} //hero
} //addon

Для вампомагов (сопсно только каст крыльев на +7):

//$Id: obkast.js,v 1.6 2007/10/13 17:34:12 cvsuser Exp $
//obkast.js
//v0.2
//© guest under BSD/BSDL.

if (document.location.pathname == "/cgi-bin/main.cgi" &&
typeof __act != "undefined") {

//Настройки:
// Максимально допустимое ко-во кастов одного закла
var maxTries = 20;

//Список кастов в формате:
// текст отображаемый в меню.
// пример: 'Ход на +'
//
// Требуемый результат каста:
// Если 0, то результат каста не важен.;
//
// Параметры запроса к серверу или javascript код
// запрос - эта строка будет добавлена к "/cgi-bin/main.cgi?";
// пример: "act=spell_24_" + __act + "&rm=action"
// javascript - строка начинается с "EVAL:",
// вызываемый код должен возвращать null при ошибке.
// пример: "EVAL:myFunction(param1, param2)"
//
// Регулярное выражение для выделения из ответа
// сервера результата каста. Вызывается так:
// encodeURI(response).replace(spell[3], "$3");
// пример: /(.*)(uskoren\.gif\'\,\'.{100}\+([0-9]{1,}))(.*)/
//
// Номер цепочки кастов:
// 0 - индивидуальный каст (не включается в цепочку)
// Номера цепочек должны начинаться с 1 и итди подряд.
// Рекомендуется в цепочках заклы ставить в порядке "тяжелые"
// (требуется кастовать много раз для получения результата)
// - "легкие". Либо ставить в конец заклы с не продолжительным
// временем действия (например ярость).

var spells = new Array(

//Цепочка кастов номер 1
//ДЛЯ Вампиров
//Крылья
Array(
"Крылья +", //Текст меню
7, //Требуемый результат каста
"act=spell_210_" + __act + "&rm=action", //Запрос
/(.*)(uskoren\.gif\'\,\'.{97,104}\+([0-9]{1,}))(.*)/, //Рег. выр.'
3 //Номер цепочки

)

//Тут можно добавить свое
);
}
//Конец настроек

function __spellSend(spell)
{
if (spell.indexOf("EVAL:") == 0) {
try {
var result = eval(spell.substr(5));
return result;
} catch(err) {
return null;
}
}

var req = new XMLHttpRequest();
req.open("GET", "/cgi-bin/main.cgi?" + spell, false);
req.send(null);
if ((req.readyState != 4) || (req.status != 200)) return null;
return req.responseText;
}

function __display(msg)
{
var chatDoc = window.parent.frames[1].document;
if (!chatDoc) return;

var chatDiv = chatDoc.getElementById("chat");
if (!chatDiv) return;

var msgDiv = chatDoc.createElement("div");

msgDiv.class = "message";
msgDiv.innerHTML = '<SPAN class="system"><SPAN class="private">' +
'<MSG>' +
'<STRONG>[guest]: </STRONG>' +
'<B>' + msg + '</B>' +
'</MSG></SPAN></SPAN>';

chatDiv.appendChild(msgDiv);
return;
}

function cheatDo(spell)
{
var successFlag = false;
var spellText = spell[0];
var spellNeed = spell[1];
var spellCode = spell[2];
var spellRegExp = spell[3];
var spellMacro = spell[4];

if (spellNeed == 0) {
//Выполняем 1 раз, результат не проверяем.
var i = 1;
var curVal = "";

if (__spellSend(spellCode))
successFlag = true;

} else {
//Выполняем не более maxTries раз, результат нужен.
for (var i = 0; i < maxTries; i++) {
var response = __spellSend(spellCode);
var curVal = encodeURI(response).replace(spellRegExp, "$3");
if (curVal >= spellNeed) {
successFlag = true;
i++;
break;
}
}
}

if (spellMacro > 0) return successFlag;

if (successFlag == true)
__display("Готово: " + spellText + curVal + " было " + i +" попыток.");
else
__display("не получилось");

//обновим экран.
document.location.href = "/cgi-bin/main.cgi";
}

function get_energy()
{
//если мы не в реале, то ничего не делаем
if (dm.current != 0)
return true;

if (person.magic_align == "Dark") {

if (person.class_name == "Оборотень") {
var isZver = false;

for (var i = 0; i < acts_mg.length; i++) {
if (acts_mg[i][3] == "spell_160") {
//яра доступна значит в зверьке.
isZver = true;
break;
}
}

//трансформ в зверя
if (isZver == false)
__spellSend("act=spell_130_" + __act + "&rm=action");

//грызем чела
__spellSend("act=spell_198_" + __lact + "&rm=action");

} else if (person.class_name == "Вампир") {
//Нет тестового перса - в лес
} else {
//обратить к тьме + собрать энку
__spellSend("act=spell_137_" + __lact + "&act=spell_138_" + __lact + "&rm=action");
}
} else {
if (person.class_name == "Маг-перевертыш") {
var isZver = false;

for (var i = 0; i < acts_mg.length; i++) {
if (acts_mg[i][3] == "spell_160") {
//яра доступна значит в зверьке.
isZver = true;
break;
}
}

//трансформ в чела
if (isZver == true)
__spellSend("act=spell_130_" + __act + "&rm=action");

//обратить к свету + энка + трансформ в тотем
__spellSend("act=spell_136_" + __lact +
"&act=spell_138_" + __act +
"&act=spell_130_" + __act + "&rm=action");

} else {
//обратить к свету + собрать энку
__spellSend("act=spell_136_" + __lact + "&act=spell_138_" + __lact + "&rm=action");

}
}

return true;
}

//main()
if (document.location.pathname == "/cgi-bin/main.cgi" &&
typeof __act != "undefined")
{

var hero = document.getElementById("hero");

if (hero) {
var orgImg = document.evaluate("//img[contains(@src,'/img/znaki/')]", hero, null, XPathResult.ANY_TYPE, null).iterateNext();

if (orgImg) {
var macroCode = new Array(); //код цепочек
var macroText = new Array(); //текст цепочек
var singleSpells = ""; //одиночные заклы

for (var i = 0; i < spells.length; i++) {
var spell = spells[i];

if (spell[4] == 0) {
//одиночный закл
singleSpells += '+ <a href="JavaScript: cheatDo(spells[' +
i +']);">' + spell[0];

if (spell[1] > 0)
singleSpells += spell[1];

singleSpells += '</a><br />';
} else {
//Закл входит в цепочку
if (typeof macroCode[spell[4] - 1] == "undefined")
macroCode[spell[4] - 1] = "";
macroCode[spell[4] - 1] += 'if(f==true)f=cheatDo(spells[' + i + ']);';

if (typeof macroText[spell[4] - 1] == "undefined")
macroText[spell[4] - 1] = "";
macroText[spell[4] - 1] += spell[0];

if (spell[1] > 0)
macroText[spell[4] - 1] += spell[1]

macroText[spell[4] - 1] += ' ';
}
}

var macroSpells = "";

if (macroCode.length > 0)
macroSpells = '<font size=2>= <u><b>Обкаст</b></u> =</font> <br />';

var i = 0;
while (i < macroCode.length) {
macroSpells += '+ <a href="JavaScript:var f=true;' + macroCode[i] +
'if(f==true)__display(\'Готово: '+ macroText[i] +
'\');else __display(\'Не получилось\');' +
'document.location.href=\'/cgi-bin/main.cgi\';">' +
macroText[i] +'</a><br />';
i++;
}

orgImg.setAttribute("id", "cheatz");

tooltips.cheats = {
info_content_align: 'center',
INFO_CONTENT: 'Cheats Меню',
PROMO_CONTENT:
'<div class="competitor_сheats"><font size=2>= <u><b>' +
'Одиночные заклы</b></u> =</font> <br />'+
singleSpells + macroSpells + '</div>'
}

Tooltip.bind('cheatz','click_hidebale','info_promo',{},'cheats',{});

}//orgImg
} //hero
} //addon

Для зверей у кого есть яра (прописано: грызть чела, каст когтя +8, каст яры +3, грызть чела и одиночный каст силы на любой результат):

//$Id: obkast.js,v 1.6 2007/10/13 17:34:12 cvsuser Exp $
//obkast.js
//v0.2
//© guest under BSD/BSDL.

if (document.location.pathname == "/cgi-bin/main.cgi" &&
typeof __act != "undefined") {

//Настройки:
// Максимально допустимое ко-во кастов одного закла
var maxTries = 20;

//Список кастов в формате:
// текст отображаемый в меню.
// пример: 'Ход на +'
//
// Требуемый результат каста:
// Если 0, то результат каста не важен.;
//
// Параметры запроса к серверу или javascript код
// запрос - эта строка будет добавлена к "/cgi-bin/main.cgi?";
// пример: "act=spell_24_" + __act + "&rm=action"
// javascript - строка начинается с "EVAL:",
// вызываемый код должен возвращать null при ошибке.
// пример: "EVAL:myFunction(param1, param2)"
//
// Регулярное выражение для выделения из ответа
// сервера результата каста. Вызывается так:
// encodeURI(response).replace(spell[3], "$3");
// пример: /(.*)(uskoren\.gif\'\,\'.{100}\+([0-9]{1,}))(.*)/
//
// Номер цепочки кастов:
// 0 - индивидуальный каст (не включается в цепочку)
// Номера цепочек должны начинаться с 1 и итди подряд.
// Рекомендуется в цепочках заклы ставить в порядке "тяжелые"
// (требуется кастовать много раз для получения результата)
// - "легкие". Либо ставить в конец заклы с не продолжительным
// временем действия (например ярость).

var spells = new Array(

//Цепочка кастов номер 1
//ДЛЯ ОБОРОТНЕЙ
//если надо трансформ и грызем чела
Array(
"Энка", //Текст меню
0, //Требуемый результат каста
"EVAL:get_energy();", //Запрос
"fake", //Рег. выр.
3 //Номер цепочки
),
//Коготь
Array(
"Коготь +", //Текст меню
8, //Требуемый результат каста
"act=spell_66_" + __act + "&rm=action", //Запрос
/(.*)(uskoren\.gif\'\,\'.{97,104}\+([0-9]{1,}))(.*)/, //Рег. выр.'
3 //Номер цепочки
),
//Яра
Array(
"Яра +", //Текст меню
3, //Требуемый результат каста
"act=spell_160_" + __act + "&rm=action", //Запрос
/(.*)(razyaren\.gif\'\,\'.{51}([0-9]{1})\'\,\'\'\,)(.*)/, //Рег. выр.'
3 //Номер цепочки
),
//грызем чела
Array(
"Энка", //Текст меню
0, //Требуемый результат каста
"EVAL:get_energy();", //Запрос
"fake", //Рег. выр.
3 //Номер цепочки
),
//Клык
Array(
"Клык", //Текст меню
0, //Требуемый результат каста
"act=spell_65_" + __act + "&rm=action", //Запрос
/(.*)(usilen\.gif\'\,\'.{70}\+([0-9]{1,}))(.*)/, //Рег. выр.'
3 //Номер цепочки
)

//Тут можно добавить свое
);
}
//Конец настроек

function __spellSend(spell)
{
if (spell.indexOf("EVAL:") == 0) {
try {
var result = eval(spell.substr(5));
return result;
} catch(err) {
return null;
}
}

var req = new XMLHttpRequest();
req.open("GET", "/cgi-bin/main.cgi?" + spell, false);
req.send(null);
if ((req.readyState != 4) || (req.status != 200)) return null;
return req.responseText;
}

function __display(msg)
{
var chatDoc = window.parent.frames[1].document;
if (!chatDoc) return;

var chatDiv = chatDoc.getElementById("chat");
if (!chatDiv) return;

var msgDiv = chatDoc.createElement("div");

msgDiv.class = "message";
msgDiv.innerHTML = '<SPAN class="system"><SPAN class="private">' +
'<MSG>' +
'<STRONG>[guest]: </STRONG>' +
'<B>' + msg + '</B>' +
'</MSG></SPAN></SPAN>';

chatDiv.appendChild(msgDiv);
return;
}

function cheatDo(spell)
{
var successFlag = false;
var spellText = spell[0];
var spellNeed = spell[1];
var spellCode = spell[2];
var spellRegExp = spell[3];
var spellMacro = spell[4];

if (spellNeed == 0) {
//Выполняем 1 раз, результат не проверяем.
var i = 1;
var curVal = "";

if (__spellSend(spellCode))
successFlag = true;

} else {
//Выполняем не более maxTries раз, результат нужен.
for (var i = 0; i < maxTries; i++) {
var response = __spellSend(spellCode);
var curVal = encodeURI(response).replace(spellRegExp, "$3");
if (curVal >= spellNeed) {
successFlag = true;
i++;
break;
}
}
}

if (spellMacro > 0) return successFlag;

if (successFlag == true)
__display("Готово: " + spellText + curVal + " было " + i +" попыток.");
else
__display("не получилось");

//обновим экран.
document.location.href = "/cgi-bin/main.cgi";
}

function get_energy()
{
//если мы не в реале, то ничего не делаем
if (dm.current != 0)
return true;

if (person.magic_align == "Dark") {

if (person.class_name == "Оборотень") {
var isZver = false;

for (var i = 0; i < acts_mg.length; i++) {
if (acts_mg[i][3] == "spell_160") {
//яра доступна значит в зверьке.
isZver = true;
break;
}
}

//трансформ в зверя
if (isZver == false)
__spellSend("act=spell_130_" + __act + "&rm=action");

//грызем чела
__spellSend("act=spell_198_" + __lact + "&rm=action");

} else if (person.class_name == "Вампир") {
//Нет тестового перса - в лес
} else {
//обратить к тьме + собрать энку
__spellSend("act=spell_137_" + __lact + "&act=spell_138_" + __lact + "&rm=action");
}
} else {
if (person.class_name == "Маг-перевертыш") {
var isZver = false;

for (var i = 0; i < acts_mg.length; i++) {
if (acts_mg[i][3] == "spell_160") {
//яра доступна значит в зверьке.
isZver = true;
break;
}
}

//трансформ в чела
if (isZver == true)
__spellSend("act=spell_130_" + __act + "&rm=action");

//обратить к свету + энка + трансформ в тотем
__spellSend("act=spell_136_" + __lact +
"&act=spell_138_" + __act +
"&act=spell_130_" + __act + "&rm=action");

} else {
//обратить к свету + собрать энку
__spellSend("act=spell_136_" + __lact + "&act=spell_138_" + __lact + "&rm=action");

}
}

return true;
}

//main()
if (document.location.pathname == "/cgi-bin/main.cgi" &&
typeof __act != "undefined")
{

var hero = document.getElementById("hero");

if (hero) {
var orgImg = document.evaluate("//img[contains(@src,'/img/znaki/')]", hero, null, XPathResult.ANY_TYPE, null).iterateNext();

if (orgImg) {
var macroCode = new Array(); //код цепочек
var macroText = new Array(); //текст цепочек
var singleSpells = ""; //одиночные заклы

for (var i = 0; i < spells.length; i++) {
var spell = spells[i];

if (spell[4] == 0) {
//одиночный закл
singleSpells += '+ <a href="JavaScript: cheatDo(spells[' +
i +']);">' + spell[0];

if (spell[1] > 0)
singleSpells += spell[1];

singleSpells += '</a><br />';
} else {
//Закл входит в цепочку
if (typeof macroCode[spell[4] - 1] == "undefined")
macroCode[spell[4] - 1] = "";
macroCode[spell[4] - 1] += 'if(f==true)f=cheatDo(spells[' + i + ']);';

if (typeof macroText[spell[4] - 1] == "undefined")
macroText[spell[4] - 1] = "";
macroText[spell[4] - 1] += spell[0];

if (spell[1] > 0)
macroText[spell[4] - 1] += spell[1]

macroText[spell[4] - 1] += ' ';
}
}

var macroSpells = "";

if (macroCode.length > 0)
macroSpells = '<font size=2>= <u><b>Обкаст</b></u> =</font> <br />';

var i = 0;
while (i < macroCode.length) {
macroSpells += '+ <a href="JavaScript:var f=true;' + macroCode[i] +
'if(f==true)__display(\'Готово: '+ macroText[i] +
'\');else __display(\'Не получилось\');' +
'document.location.href=\'/cgi-bin/main.cgi\';">' +
macroText[i] +'</a><br />';
i++;
}

orgImg.setAttribute("id", "cheatz");

tooltips.cheats = {
info_content_align: 'center',
INFO_CONTENT: 'Cheats Меню',
PROMO_CONTENT:
'<div class="competitor_сheats"><font size=2>= <u><b>' +
'Одиночные заклы</b></u> =</font> <br />'+
singleSpells + macroSpells + '</div>'
}

Tooltip.bind('cheatz','click_hidebale','info_promo',{},'cheats',{});

}//orgImg
} //hero
} //addon

 
Не_помню_ЛОГ_персаДата: Среда, 2007-10-31, 9:45 AM | Сообщение # 2
Группа: Удаленные





Крутая тема... я всегда думал, почему для мозилы этого раньше сделать немогли.
 
Поджигатель6Дата: Среда, 2007-10-31, 4:23 PM | Сообщение # 3
Группа: Удаленные





супер Странж Респект

только сори у мну быстрей получается по старинке: 2,3,4 Контрал Q

 
StrangerKzДата: Среда, 2007-10-31, 4:35 PM | Сообщение # 4
Группа: Удаленные





Поджигатель6, аддон расчитан на получение максимальных значений, так что кому-то будет удобнее без него
 
Не_помню_ЛОГ_персаДата: Среда, 2007-10-31, 5:36 PM | Сообщение # 5
Группа: Удаленные





StrangerKz, я непользовался ещё , но думаю легче будет крылья выкастовывать...
 
StrangerKzДата: Среда, 2007-10-31, 6:25 PM | Сообщение # 6
Группа: Удаленные





Не_помню_ЛОГ_перса, я себе поставил вариант "только крылья", Спайк с полным звериным ходит
 
  • Страница 1 из 1
  • 1
Поиск:


Copyright MyCorp © 2025