Добрый день
Есть вот такой скрипт дайсов. Нужна помощь с тем, чтобы кнопка активации скрипта показывалась только в конкретном топике и не была доступна в остальных.
<!---CКРИПТ ДАЙСОВ---->
<script type="text/javascript">
function unhtml(s)
{ return s.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">"); }
function numword(s,one,two,many)
{ return(((s%100>=10 && s%100<=20) || s%10>=5) ? many :
(s%10==1 ? one : two)); }
function dice()
{
var FoundErrors = '';
var diceRes=""
var CountCube = prompt("Сколько дайсов кидаешь?", "1");
if(CountCube>100 || CountCube<=0) {
alert("Нельзя столько дайсов в одни руки."); return false;}
var SideCube = prompt("Сколько граней у твоего дайса?", "6");
if(SideCube>1000 || SideCube<=0){
alert("Попробуй ещё раз. Не бывает таких дайсов."); return false;}
var ReasonCube = unhtml(prompt("По какому поводу испытываешь свою удачу?", "").
replace(/\s+/g," ").replace("]"," "));
for(i=0; i<CountCube;i++)
{
var dice = (Math.round(Math.random()*SideCube));
if(dice==0) dice=1;
diceRes += dice*1936+"-";
}
smile('[dice='+diceRes+CountCube+':'+SideCube+
':'+ReasonCube+']');
}
function addDice(post, from, internal) {
var str = post.innerHTML;
var a = $(post).closest('.post').innerHTML;
var u = "";
var num = +post.id.match(/\d+/g)[0];
var date = new Date(+$(post).attr('data-posted')*1000).getSeconds();
var fCanRandomise = 1;
var ran = num + date;
return str
.replace(
/\[dice=((?:\d+[-—])*)(?:(\d)(\d+)|(\d+)(:)(\d+)(?::)()(?:([^\]]*))?)]/g,
function(a, dice, diceC, diceS, adieC, fNewScheme, adieS, adieB, adieR) {
dice = dice.replace(/[-—]/g, '-');
adieB = adieB.replace(/[-—]/g, '-');
diceC = parseInt(fNewScheme ? adieC : diceC);
diceS = parseInt(fNewScheme ? adieS : diceS);
adieB = parseInt(adieB ? adieB : 0);
if(adieB > 0) adieB='+'+adieB;
if(!fCanRandomise && fNewScheme)
return '<div class="quote-box"><blockquote><p><b>ДАЙСЫ ПОДВЕЛИ — СООБЩИТЕ АДМИНАМ</b></p></blockquote></div>';
var i,
diceR = 0,
s = '<div class="quote-box"><blockquote '
+ 'style="text-align:left"><p>'
+ '<b>На столе '
+ diceC + numword(diceC,' дайс с ',' дайса с ',' дайсов с ')
+ diceS + numword(diceS,' гранью',' гранями',' гранями')
+ (adieB ? (adieB>0 ? ' и бонусом ' : ' и пенальти ')+adieB : '')
+ (adieR ? ', узнаём:</b><br><i>'+adieR+'</i><b>' : '')
+ '<br /><br />Звёзды посчитали'
+ (fNewScheme ? '' : '(старая схема)')+'</b>: (';
dice = dice.split("-");
for (var i=0; i < dice.length-1; ++i) {
var d = parseInt(dice[i]/1936);
date=((date>>1)+((date&1)<<21))&0x3fffff;
num=((num>>1)+((num&1)<<22))&0x7fffff;
if(fNewScheme)
d = (ran=(((ran>>1)+(((ran&1) ? 0 : 1)<<23)+d+date)^num)&0xffffff)%diceS + 1;
diceR += d;
s+= (i?' + ':'') + d;
}
if (adieB)
diceR += parseInt(adieB);
return (s + (adieB ? ')'+adieB : ')')
+ '=' + diceR + '</p></blockquote></div>');
}
);
}
$(document).ready(function() {
if (! FORUM.topic) return;
$('.post-content').each(function(i, post) {
post.innerHTML = addDice(post);
});
});
</script><!---CКРИПТ ДАЙСОВ----> <input class="button dice-button" type="button" onclick="dice()" value="Кинуть дайсы" />











