鬼姫島の鬼退治
ラウンド a1. 梨太郎が島に渡るとすぐ、餓鬼が数匹現れる。
餓鬼の様子を表示しています...
<!DOCTYPE html>
<html>
<head>
<title>鬼姫島の鬼退治</title>
</head>
<body>
<h1>鬼姫島の鬼退治</h1>
<p id="round-info">ラウンド a1. 梨太郎が島に渡るとすぐ、餓鬼が数匹現れる。</p>
<button id="nuisance-button" onclick="attack()">成敗!</button>
<p id="nuisance-info">餓鬼の様子を表示しています...</p>
<script>
// Round 1
let round = 1;
let nuiCount = 0;
let nuiNames = ["ちずる", "まどか", "よしの", "かおり", "みさき", "えれな", "あかり", "ともえ", "かなこ", "まりな"];
let nuiAges = [15, 16, 17, 18, 19, 20, 21, 22];
let nuiHairstyles = ["長い黒髪", "青い短髪", "金髪のポニーテール", "丸くて黒いツインテール", "赤毛のショートカット", "かわいいボブカット", "ふわふわしたピンク色の髪", "白髪のロングヘア", "緑色の三つ編み", "金髪のストレートヘア"];
let nuiFaces = ["小さなおでこ", "ぽっちゃりした頬", "エキゾチックな顔立ち", "美しい瞳", "真っ赤な唇", "ほくろのある小さな鼻", "やんちゃな微笑み", "優雅な表情", "抜けるような青い目", "強気な眉毛"];
let nuiOutfits = ["薄い紫色のワンピース", "ピンクの半袖シャツとデニムショートパンツ", "白いブラウスと緑のスカート", "オレンジ色のタンクトップとチェック柄の短パン", "灰色のスウェットシャツとグレーのジーンズ", "紺色のタンクトップと黄色いチューブトップスカート", "白いTシャツとカーキ色の半ズボン", "黒いドレス", "黄色いワンピース", "赤いタンクトップとオレンジ色の短パン"];
let nuiBodies = ["スレンダーで胸は小さい", "女性らしい曲線がある", "筋肉質でがっしりとした体格", "ややぽっちゃりしているが美しい体形", "長い脚とへそ出しのスタイル", "クビレがあり、胸が大きい", "美しい腰つきとヒップライン", "ミニマムな体型でロリータ風の雰囲気", "大柄で豊かな胸", "スタイルがよく、胸が大きい"];
let nuiLines = ["ざーこ!", "生意気よね!", "覚悟しな!", "あんた死んじゃうわ!", "アイツはもうやられたの?", "お前らにだって覚悟なんて出来るの?", "私たち、強くなってるんだからね。", "私が負けるはずないわ!", "ガキみたいな勝負をするつもりなの?", "アウトだってこと、知っているんでしょう?"];
let nuiHp = [1, 2, 3];
function showNui() {
let name = nuiNames[Math.floor(Math.random() * 10)];
let age = nuiAges[Math.floor(Math.random() * 8)];
let hairstyle = nuiHairstyles[Math.floor(Math.random() * 10)];
let face = nuiFaces[Math.floor(Math.random() * 10)];
let outfit = nuiOutfits[Math.floor(Math.random() * 10)];
let body = nuiBodies[Math.floor(Math.random() * 10)];
let line = nuiLines[Math.floor(Math.random() * 10)];
let hp = nuiHp[Math.floor(Math.random() * 3)];
let info = `名前:${name}、年齢:${age}歳\n髪型:${hairstyle}、顔立ち:${face}\n服装:${outfit}、体型:${body}\nセリフ:${line}、体力:${hp}`;
document.getElementById("nuisance-info").innerHTML = info;
}
// Round 2
let hp = 3;
let grunts = ["ぎゅぶゥ!", "んふぅ!", "オホぉ!", "ぶぇッ!", "ひいィィ!","いっいいいい!","しゃくッ!"];
let results = ["味方につくんだよ!", "負けないわよ!", "死ななければ、不死鳥さえもなれる……。" ,"私たちの力は鍛え上げられている。", "こんなことくらいで決まらないわ!"];
function attack() {
if (hp <= 0) {
return;
}
hp--;
let grunt = grunts[Math.floor(Math.random() * 7)];
let result = results[Math.floor(Math.random() * 5)];
let nuiInfo = `「${grunt}」\n${result}`;
if (hp > 0) {
nuiInfo += `\n体力:${hp}`;
}
document.getElementById("nuisance-info").innerHTML = nuiInfo;
if (hp <= 0) {
document.getElementById("nuisance-button").disabled = true;
document.getElementById("round-info").innerHTML = `ラウンド a${round}. 餓鬼を倒した!`;
setTimeout(function() {
nuiDefeat();
}, 2000);
}
}
// Round 3
let adversities = ["ブヒィィっ!", "ハギャアン!", "あァン…ァン!!", "ウッ!?…ゥブゥ!"];
let finalLines = ["この私が倒されるなんて……!", "どうして、あなたが……?", "鬼に負けるなんて、私はまだまだ……。", "強い鬼を産める母にならなくちゃ……。"];
function nuiDefeat() {
let adversity = adversities[Math.floor(Math.random() * 4)];
let finalLine = finalLines[Math.floor(Math.random() * 4)];
let collapse = ["だらしないな姿", "無様な表情", "衣類の乱れ"];
let collapseDesc = collapse[Math.floor(Math.random() * 3)];
let nuiDesc = `「${adversity}」\n最期に胸先から母乳を吹いて倒れる様子。\n横たわる餓鬼の姿:${collapseDesc}`
document.getElementById("nuisance-info").innerHTML = nuiDesc;
setTimeout(function() {
nuiCount++;
if (nuiCount === 5) {
document.getElementById("round-info").innerHTML = `鬼を5人倒した!ハッピーエンド。鬼姫城の鬼たちが全滅した。`;
} else {
round++;
hp = 3;
document.getElementById("round-info").innerHTML = `ラウンド a${round}. 次の餓鬼が現れた!`;
document.getElementById("nuisance-button").disabled = false;
showNui();
}
}, 2000);
}
showNui(); // initial round
</script>
</body>
</html>