인간 스톱워치: 두 판 사이의 차이
백괴게임>Riemann 잔글 (점수에 콤보 가중치 먹여야겠다.) |
잔글편집 요약 없음 |
||
(사용자 6명의 중간 판 17개는 보이지 않습니다) | |||
1번째 줄: | 1번째 줄: | ||
{{게임 정보}} | |||
{{#css: | {{#css: | ||
.button {background: black; color: white; border-radius: 5px; text-align: center; padding: 5px; grid-column: 1 / 4;} | .button {background: black; color: white; border-radius: 5px; text-align: center; padding: 5px; grid-column: 1 / 4;} | ||
#clock, #scoreboard {vertical-align: middle; text-align: center;} | #msgame-clock, #msgame-scoreboard {vertical-align: middle; text-align: center;} | ||
#clock, #console, .scoreboard {background: white; color: black; border: 3px solid black; border-radius: 5px; font-family: monospace; padding-left: 5px; padding-right: 5px;} | #msgame-clock, #msgame-console, .scoreboard {background: white; color: black; border: 3px solid black; border-radius: 5px; font-family: monospace; padding-left: 5px; padding-right: 5px;} | ||
#msgame-console {text-align: center} | |||
}} | }} | ||
{{ | {{PluginX|/script.js|인간 스톱워치 플러그인}} | ||
시간을 | 시간을 천분의 일 초까지 정확하게 지키는 습관을 들여봅시다. (주의: 컴퓨터 사양에 따라 천분의 일 초까지는 의미가 없을 수도 있습니다.) | ||
진행 상황에 따라 게임 도중 시계가 사라집니다. 오류가 아닙니다. | |||
<div style="display: grid; width: 100% | <div style="display: grid; width: 100%; grid-template-columns: 100px 1fr 100px; grid-template-rows: unset;"> | ||
<div id="clock" style="grid-column: 1 / 4;"> | <div id="msgame-clock" style="grid-column: 1 / 4;"> | ||
<h2> | <h2> | ||
<span id="clockText">00"000</span> | <span id="msgame-clockText">00"000</span> | ||
</h2> | </h2> | ||
</div> | </div> | ||
<div class="button" id="start">Start</div> | <div class="button" id="msgame-start">Start</div> | ||
<div class="button" id="stop" style="display: none;">Stop</div> | <div class="button" id="msgame-stop" style="display: none;">Stop</div> | ||
<div class="scoreboard">점수: <span id="score">0</span></div> | <div class="scoreboard">점수: <span id="msgame-score">0</span></div> | ||
<div id="console">환영합니다. 위의 '''Start''' 버튼이나 ''' | <div id="msgame-console">환영합니다. 위의 '''Start''' 버튼이나 '''Enter 키'''를 눌러 주세요.</div> | ||
<div class="scoreboard">콤보: <span id="combo">0</span></div> | <div class="scoreboard">콤보: <span id="msgame-combo">0</span></div> | ||
</div> | </div> | ||
2024년 6월 17일 (월) 21:12 기준 최신판
누구나 편집할 수 있는 게임
sc = 0; cb = 0; bl = false; $(document.body).on("keydown", function(ev) { if(ev.which == 13) { if (bl == false) { bl = true; startF(); } else { bl = false; stopF(); } } }); $("#msgame-start").on("click", function() { bl = true; startF(); }); $("#msgame-stop").on("click", function() { bl = false; stopF(); }); function startF() { obj = Math.floor(Math.random() * 5) + 5; $("#msgame-start").css("display", "none"); $("#msgame-stop").css("display", "block"); it = new Date(); si = setInterval(clockUpdate, 20); $("#msgame-console").text(obj + " 초를 세세요."); } function stopF() { $("#msgame-clockText").css("display", "inline"); $("#msgame-stop").css("display", "none"); $("#msgame-start").css("display", "block"); clearInterval(si); ie = new Date(); ifin = ie - it; $("#msgame-clockText").text(toMilliSec(ifin)); finished(obj, ifin); } function clockUpdate() { ic = new Date(); id = ic - it; ii = toMilliSec(id); $("#msgame-clockText").text(ii); if (obj * 1000 - id < 500 * cb && cb > 4 ) { $("#msgame-clockText").fadeOut(); } } function toMilliSec(d) { return (Math.floor(d / 1000) + "\"" + ("" + d % 1000).padStart(3, "0")).padStart(6, "0"); } function finished(a, b) { ath = a * 1000; if (ath == b) { cbm = Math.floor(Math.pow(800, (1 + cb / 10))); $("#msgame-console").text("정확하시군요. " + cbm + " 점 드리겠습니다."); sc += cbm; cb += 1; } else if (Math.abs(ath - b) < 100) { cbm = Math.floor(Math.pow((500 / Math.abs(ath - b)), (1 + cb / 10))); $("#msgame-console").text("정확하시군요. " + cbm + " 점 드리겠습니다."); sc += cbm; cb += 1; } else { $("#msgame-console").text("안타깝습니다. 조금 더 노력해 보세요!"); cb = 0; } $("#msgame-score").text(sc); $("#msgame-combo").text(cb); }
시간을 천분의 일 초까지 정확하게 지키는 습관을 들여봅시다. (주의: 컴퓨터 사양에 따라 천분의 일 초까지는 의미가 없을 수도 있습니다.)
진행 상황에 따라 게임 도중 시계가 사라집니다. 오류가 아닙니다.
00"000
점수: 0
환영합니다. 위의 Start 버튼이나 Enter 키를 눌러 주세요.
콤보: 0