add hotkeys for replay speed up/down pause
This commit is contained in:
parent
514b3c6b22
commit
3447681f10
7 changed files with 48 additions and 5 deletions
File diff suppressed because one or more lines are too long
1
build/public/assets/index.c6197c7d.js
Normal file
1
build/public/assets/index.c6197c7d.js
Normal file
File diff suppressed because one or more lines are too long
|
|
@ -4,7 +4,7 @@
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
|
|
||||||
<title>🧩 jigsaw.hyottoko.club</title>
|
<title>🧩 jigsaw.hyottoko.club</title>
|
||||||
<script type="module" crossorigin src="/assets/index.ab1d6e0f.js"></script>
|
<script type="module" crossorigin src="/assets/index.c6197c7d.js"></script>
|
||||||
<link rel="modulepreload" href="/assets/vendor.684f7bc8.js">
|
<link rel="modulepreload" href="/assets/vendor.684f7bc8.js">
|
||||||
<link rel="stylesheet" href="/assets/index.8f0efd0f.css">
|
<link rel="stylesheet" href="/assets/index.8f0efd0f.css">
|
||||||
</head>
|
</head>
|
||||||
|
|
|
||||||
|
|
@ -358,6 +358,9 @@ const INPUT_EV_PLAYER_NAME = 8;
|
||||||
const INPUT_EV_MOVE = 9;
|
const INPUT_EV_MOVE = 9;
|
||||||
const INPUT_EV_TOGGLE_PREVIEW = 10;
|
const INPUT_EV_TOGGLE_PREVIEW = 10;
|
||||||
const INPUT_EV_TOGGLE_SOUNDS = 11;
|
const INPUT_EV_TOGGLE_SOUNDS = 11;
|
||||||
|
const INPUT_EV_REPLAY_TOGGLE_PAUSE = 12;
|
||||||
|
const INPUT_EV_REPLAY_SPEED_UP = 13;
|
||||||
|
const INPUT_EV_REPLAY_SPEED_DOWN = 14;
|
||||||
const CHANGE_DATA = 1;
|
const CHANGE_DATA = 1;
|
||||||
const CHANGE_TILE = 2;
|
const CHANGE_TILE = 2;
|
||||||
const CHANGE_PLAYER = 3;
|
const CHANGE_PLAYER = 3;
|
||||||
|
|
@ -381,6 +384,9 @@ var Protocol = {
|
||||||
INPUT_EV_PLAYER_NAME,
|
INPUT_EV_PLAYER_NAME,
|
||||||
INPUT_EV_TOGGLE_PREVIEW,
|
INPUT_EV_TOGGLE_PREVIEW,
|
||||||
INPUT_EV_TOGGLE_SOUNDS,
|
INPUT_EV_TOGGLE_SOUNDS,
|
||||||
|
INPUT_EV_REPLAY_TOGGLE_PAUSE,
|
||||||
|
INPUT_EV_REPLAY_SPEED_UP,
|
||||||
|
INPUT_EV_REPLAY_SPEED_DOWN,
|
||||||
CHANGE_DATA,
|
CHANGE_DATA,
|
||||||
CHANGE_TILE,
|
CHANGE_TILE,
|
||||||
CHANGE_PLAYER,
|
CHANGE_PLAYER,
|
||||||
|
|
|
||||||
|
|
@ -60,6 +60,10 @@ const INPUT_EV_MOVE = 9
|
||||||
const INPUT_EV_TOGGLE_PREVIEW = 10
|
const INPUT_EV_TOGGLE_PREVIEW = 10
|
||||||
const INPUT_EV_TOGGLE_SOUNDS = 11
|
const INPUT_EV_TOGGLE_SOUNDS = 11
|
||||||
|
|
||||||
|
const INPUT_EV_REPLAY_TOGGLE_PAUSE = 12
|
||||||
|
const INPUT_EV_REPLAY_SPEED_UP = 13
|
||||||
|
const INPUT_EV_REPLAY_SPEED_DOWN = 14
|
||||||
|
|
||||||
const CHANGE_DATA = 1
|
const CHANGE_DATA = 1
|
||||||
const CHANGE_TILE = 2
|
const CHANGE_TILE = 2
|
||||||
const CHANGE_PLAYER = 3
|
const CHANGE_PLAYER = 3
|
||||||
|
|
@ -90,6 +94,10 @@ export default {
|
||||||
INPUT_EV_TOGGLE_PREVIEW,
|
INPUT_EV_TOGGLE_PREVIEW,
|
||||||
INPUT_EV_TOGGLE_SOUNDS,
|
INPUT_EV_TOGGLE_SOUNDS,
|
||||||
|
|
||||||
|
INPUT_EV_REPLAY_TOGGLE_PAUSE,
|
||||||
|
INPUT_EV_REPLAY_SPEED_UP,
|
||||||
|
INPUT_EV_REPLAY_SPEED_DOWN,
|
||||||
|
|
||||||
CHANGE_DATA,
|
CHANGE_DATA,
|
||||||
CHANGE_TILE,
|
CHANGE_TILE,
|
||||||
CHANGE_PLAYER,
|
CHANGE_PLAYER,
|
||||||
|
|
|
||||||
|
|
@ -13,6 +13,10 @@
|
||||||
<tr><td>🧩✔️ Toggle fixed pieces:</td><td><div><kbd>F</kbd></div></td></tr>
|
<tr><td>🧩✔️ Toggle fixed pieces:</td><td><div><kbd>F</kbd></div></td></tr>
|
||||||
<tr><td>🧩❓ Toggle loose pieces:</td><td><div><kbd>G</kbd></div></td></tr>
|
<tr><td>🧩❓ Toggle loose pieces:</td><td><div><kbd>G</kbd></div></td></tr>
|
||||||
<tr><td>🔉 Toggle sounds:</td><td><div><kbd>M</kbd></div></td></tr>
|
<tr><td>🔉 Toggle sounds:</td><td><div><kbd>M</kbd></div></td></tr>
|
||||||
|
|
||||||
|
<tr><td>⏫ Speed up (replay):</td><td><div><kbd>I</kbd></div></td></tr>
|
||||||
|
<tr><td>⏬ Speed down (replay):</td><td><div><kbd>O</kbd></div></td></tr>
|
||||||
|
<tr><td>⏸️ Pause (replay):</td><td><div><kbd>P</kbd></div></td></tr>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
|
||||||
|
|
@ -92,7 +92,12 @@ function addCanvasToDom(TARGET_EL: HTMLElement, canvas: HTMLCanvasElement) {
|
||||||
return canvas
|
return canvas
|
||||||
}
|
}
|
||||||
|
|
||||||
function EventAdapter (canvas: HTMLCanvasElement, window: any, viewport: any) {
|
function EventAdapter (
|
||||||
|
canvas: HTMLCanvasElement,
|
||||||
|
window: any,
|
||||||
|
viewport: any,
|
||||||
|
MODE: string
|
||||||
|
) {
|
||||||
let events: Array<GameEvent> = []
|
let events: Array<GameEvent> = []
|
||||||
|
|
||||||
let KEYS_ON = true
|
let KEYS_ON = true
|
||||||
|
|
@ -174,6 +179,20 @@ function EventAdapter (canvas: HTMLCanvasElement, window: any, viewport: any) {
|
||||||
if (ev.key === ' ') {
|
if (ev.key === ' ') {
|
||||||
addEvent([Protocol.INPUT_EV_TOGGLE_PREVIEW])
|
addEvent([Protocol.INPUT_EV_TOGGLE_PREVIEW])
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (MODE === MODE_REPLAY) {
|
||||||
|
if (ev.key === 'I' || ev.key === 'i') {
|
||||||
|
addEvent([Protocol.INPUT_EV_REPLAY_SPEED_UP])
|
||||||
|
}
|
||||||
|
|
||||||
|
if (ev.key === 'O' || ev.key === 'o') {
|
||||||
|
addEvent([Protocol.INPUT_EV_REPLAY_SPEED_DOWN])
|
||||||
|
}
|
||||||
|
|
||||||
|
if (ev.key === 'P' || ev.key === 'p') {
|
||||||
|
addEvent([Protocol.INPUT_EV_REPLAY_TOGGLE_PAUSE])
|
||||||
|
}
|
||||||
|
}
|
||||||
if (ev.key === 'F' || ev.key === 'f') {
|
if (ev.key === 'F' || ev.key === 'f') {
|
||||||
PIECE_VIEW_FIXED = !PIECE_VIEW_FIXED
|
PIECE_VIEW_FIXED = !PIECE_VIEW_FIXED
|
||||||
RERENDER = true
|
RERENDER = true
|
||||||
|
|
@ -396,7 +415,7 @@ export async function main(
|
||||||
-(TABLE_HEIGHT - canvas.height) /2
|
-(TABLE_HEIGHT - canvas.height) /2
|
||||||
)
|
)
|
||||||
|
|
||||||
const evts = EventAdapter(canvas, window, viewport)
|
const evts = EventAdapter(canvas, window, viewport, MODE)
|
||||||
|
|
||||||
const previewImageUrl = Game.getImageUrl(gameId)
|
const previewImageUrl = Game.getImageUrl(gameId)
|
||||||
|
|
||||||
|
|
@ -699,7 +718,13 @@ export async function main(
|
||||||
// LOCAL ONLY CHANGES
|
// LOCAL ONLY CHANGES
|
||||||
// -------------------------------------------------------------
|
// -------------------------------------------------------------
|
||||||
const type = evt[0]
|
const type = evt[0]
|
||||||
if (type === Protocol.INPUT_EV_MOVE) {
|
if (type === Protocol.INPUT_EV_REPLAY_TOGGLE_PAUSE) {
|
||||||
|
replayOnPauseToggle()
|
||||||
|
} else if (type === Protocol.INPUT_EV_REPLAY_SPEED_DOWN) {
|
||||||
|
replayOnSpeedDown()
|
||||||
|
} else if (type === Protocol.INPUT_EV_REPLAY_SPEED_UP) {
|
||||||
|
replayOnSpeedUp()
|
||||||
|
} else if (type === Protocol.INPUT_EV_MOVE) {
|
||||||
const diffX = evt[1]
|
const diffX = evt[1]
|
||||||
const diffY = evt[2]
|
const diffY = evt[2]
|
||||||
RERENDER = true
|
RERENDER = true
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue