ゴールドラッシュ ドロップシミュレータ
ゴールドラッシュのコンプリートに何回挑戦すればいいか、体感してみましょう。
by zohnam
HTML
<div name='stage' style='border:1px solid black;' data-charisma='30' data-stamina='2'>
<h3>ゴールドラッシュ射程強化</h3>
<button name='GR'>1回ずつ挑戦する</button>
<button name='complete'>コンプするまで挑戦する</button>
<label>
<input type='checkbox' value='zuttomo'>ズッ友あり(GRでは+5%効果)</input>
</label>
<p> <span name='play'>0</span>回挑戦(消費カリスマ:<span name='charisma'>0</span> 消費スタミナ:<span name='stamina'>0</span>)</p>
<div name='item' data-drop='7' data-zuttomo='true'><span name='item_name'>金の聖霊</span>:<span name='count'>0</span>個(<span name='drop'></span>%:右の2匹目のオーラ弓)</div>
<div name='item' data-drop='20' data-zuttomo='true'><span name='item_name'>銀の聖霊</span>:<span name='count'>0</span>個(<span name='drop'></span>%:最後の左の騎馬)</div>
<div name='item' data-drop='70' data-zuttomo='true'><span name='item_name'>銅の聖霊</span>:<span name='count'>0</span>個(<span name='drop'></span>%:最後の右の騎馬)</div>
<div name='item'><span name='item_name'>ストレイ</span>:<span name='count'>0</span>個</div>
<div name="result"></div>
</div>
<div name='stage' style='border:1px solid black;' data-charisma='30' data-stamina='2'>
<h3>ゴールドラッシュ超猛毒</h3>
<button name='GR'>1回ずつ挑戦する</button>
<button name='complete'>コンプするまで挑戦する</button>
<label>
<input type='checkbox' value='zuttomo'>ズッ友あり(GRでは+5%効果)</input>
</label>
<p> <span name='play'>0</span>回挑戦(消費カリスマ:<span name='charisma'>0</span> 消費スタミナ:<span name='stamina'>0</span>)</p>
<div name='item' data-drop='7' data-zuttomo='true'><span name='item_name'>金の聖霊</span>:<span name='count'>0</span>個(<span name='drop'></span>%:最後の山羊)</div>
<div name='item' data-drop='10'><span name='item_name'>カリオペ</span>:<span name='count'>0</span>個(<span name='drop'></span>%:最後のウィッチ)</div>
<div name='item' data-drop='70'> <span name='item_name'>花束</span> :<span name='count'>0</span>個(<span name='drop'></span>%:31匹目のゴブリンメイジ)</div>
<div name='item'><span name='item_name'>フェドラ</span>:<span name='count'>0</span>個</div>
...
CSS
a {
text-decoration : none;
}
a:hover {
text-decoration : underline;
}
JavaScript
$(function () {
var Try = function (i, ref) {
var stage = ref.parent();
var result = stage.find("[name='result']");
var play = stage.find("[name='play']");
play.text(parseInt(play.text()) + 1);
var charisma = stage.find("[name='charisma']");
charisma.text(parseInt(charisma.text()) + stage.data('charisma'));
var stamina = stage.find("[name='stamina']");
stamina.text(parseInt(stamina.text()) + stage.data('stamina'));
var nodrop = true;
var tmp = [];
stage.find("[name='item'][data-drop]").each(function(j){
var item = jQuery(this);
var count = item.data('count') || 1;
for (var c=0;c<count;++c){
tmp[j] = parseInt(item.find("[name='count']").text());
var drop = parseInt(item.find("[name='drop']").text());
if (Math.floor(Math.random() * 100) < drop) {
tmp[j]++;
nodrop = false;
result.append(item.find("[name='item_name']").text() + " ");
item.find("[name='count']").html(tmp[j]);
}
}
});
if (nodrop) {
result.append("<span style='font-weight:bold;color:rgb(120, 0, 0)'>ノードロップ…</span><br />");
} else {
result.append(" をドロップ!<br />");
}
var comp = stage.find("[name='count']:eq(3)");
if (tmp[0] && tmp[1] && tmp[2] && !parseInt(comp.text())) {
comp.text(1);
var item = stage.find("[name='item']:eq(3)");
result.append("<span style='font-weight:bold;color:rgb(10, 229, 10)'>Complete!!</span> " + item.find("[name='item_name']").text() + " をゲット!<br />");
}
};
jQuery("button[name='GR']").each(function (i) {
var ref = jQuery(this);
ref.click(function () {
Try(i, jQuery(this));
});
});
jQuery("button[name='complete']").each(function (i)...