Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 22.11.2011, 09:23
Новичок на форуме
Отправить личное сообщение для Ленинград Посмотреть профиль Найти все сообщения от Ленинград
 
Регистрация: 22.11.2011
Сообщений: 3

Дайсы (проблема)
Здравствуйте.
Дело в том, что очень нужны дайсы заточенные под систему Юкоз. Такие дайсы нашлись, но работать они отказываются.

Утверждать ничего не буду, так как я нуб в Ява, но насколько я понял, код состоит из двух частей.

Собственно, сам дайс:

<!-- DICEscript -->
<script language="javascript" type="text/javascript">
// <!--
function Dice(id,seed1,seed2)
{
var seed = parseInt(seed1)*parseInt(seed2.substring(0,2)+seed 2.substring(3,5));
if (seed==0) { seed = parseInt(seed1)*parseInt(1+seed2.substring(0,2)+se ed2.substring(3,5)); }
var s = document.all[id].innerHTML;
var fi=0;
var ds="";
var ios=0, ioe=0, ios2=0, ioe2=0, ioA,ioB,ioC,A,B,C,res,res1,ress;
var aven=1;
while(s.indexOf("[dice]",fi) != -1)
{
aven++;
ios=s.indexOf("[dice]",fi);
ioe=s.indexOf("]",ios);

// document.write("begin tag: "+s.substring(ios,ioe+1)+"<br>");

if(s.substring(ios,ioe+1)=="[dice]")
{
ios2=s.indexOf("[",ioe);
ioe2=s.indexOf("]",ios2);

// document.write("end tag: "+s.substring(ios2,ioe2+1)+"<br>");

if(s.substring(ios2,ioe2+1)=="[/dice]")
{
ioA=s.indexOf("d",ioe);
A=parseInt(s.substring(ioe+1,ioA));
ioB=s.indexOf("+",ioA);
if(ioB==-1 || ioB>ios2)
{
ioB=s.indexOf("-",ioA);
C=-1;
} else C=1;

// document.write("ioA: "+ioA+"<br>");

// document.write("seed1: "+seed1+"<br>");
// document.write("seed2: "+seed2+"<br>");
// document.write("substr02: "+seed2.substring(0,2)+"<br>");
// document.write("substr35: "+seed2.substring(3,5)+"<br>");
// document.write("substr_summ: "+seed2.substring(0,2)+seed2.substring(3,5)+"<br>" );
// document.write("substr_summ_int: "+parseInt(seed2.substring(0,2)+seed2.substring(3, 5))+"<br>");

// document.write("seed: "+seed+"<br>");

// document.write("sign on position "+ioB+"<br>");

if(ioB==-1 || ioB>ios2)
{
B=parseInt(s.substring(ioA+1,ioe2-1));
C=0;
}
else
{
B=parseInt(s.substring(ioA+1,ioB));
C*=parseInt(s.substring(ioB+1,ioe2-1));
}

// document.write("AdB + C<br>");
// document.write("A = "+A+"<br>");
// document.write("B = "+B+"<br>");
// document.write("C = "+C+"<br>");

var i;
res=0;
ress="";
for(i=0;i<A;i++)
{
res1=Math.floor((Math.log(seed*(ioe2-ios)*aven*(i+1))*10000000)%1*B)+1;
ress+=String(res1);
if(i!=A-1) ress+="+";
res+=parseInt(res1);
}
if(A>1) ress="("+ress+")";

// document.write("res = "+res+"<br>");
//ave+=res;

if(C==0 && A==1) ds="<div class=\"dice\"><img src=\"dice.gif\" style=\"float:left\">&nbsp;Бросок дайсов: "+A+"d"+B+" = <b>"+res+"</b></div>";
else if(C==0 && A>1) ds="<div class=\"dice\"><img src=\"dice.gif\" style=\"float:left\">&nbsp;Бросок дайсов: "+A+"d"+B+" = "+ress+" = <b>"+res+"</b></div>";
else if(C<0) ds="<div class=\"dice\"><img src=\"dice.gif\" style=\"float:left\">&nbsp;Бросок дайсов: "+A+"d"+B+" - "+(-C)+" = "+ress+" - "+(-C)+" = <b>"+(res+C)+"</b></div>";
else if(C>0) ds="<div class=\"dice\"><img src=\"dice.gif\" style=\"float:left\">&nbsp;Бросок дайсов: "+A+"d"+B+" + "+C+" = "+ress+" + "+C+" = <b>"+(res+C)+"</b></div>";
s=s.substring(0,ios)+ds+s.substring(ioe2+1,s.lengt h);
}
}
fi=ios+6;
}

//ave/=aven;
// document.write("!!!! ave = "+ave+" !!!!<br>");

document.all[id].innerHTML=s;
}
//
// -->
</script>
<!-- /DICEscript -->



И вторая часть, которая считывает данные оставленные юзером с поля ввода сообщения. А так же время и ссылку поста.

<script language="javascript" type="text/javascript">
//<!--
Dice("m17",17+2,'9:47');
//-->
</script>


Всё это дело взято с браузера из исходного кода страницы, а потому и не функционирует.

Как это работает можно глянуть здесь
Вводим в поле поста данные: [dice]5d2[/dice] и при нажатии кнопки "добавить" после обновления появляется случайное число.

Буду очень благодарен за помощь.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с Popup окном vovuslik jQuery 5 12.06.2010 16:12
Проблема с дизайном после отправки xmlhttprequest, Проблема с дизайном после отправки cyberx AJAX и COMET 3 01.05.2010 17:07
Проблема с CSS COKOJIOB (X)HTML/CSS 5 04.08.2009 14:19
Проблема, в менюшке Большой джо Элементы интерфейса 0 12.07.2009 17:12
Проблема спама lliberty AJAX и COMET 1 12.03.2009 16:47