Игра JavaScript 2048: добавление мыши и колесика ⇐ Javascript
Игра JavaScript 2048: добавление мыши и колесика
Как добавить в игру 2048 функции перемещения мыши и колеса?
event.button === 0 //(для щелчка правой кнопкой мыши)
event.button === 2 // (для щелчка левой кнопкой мыши)
event.deltaY < 0 //(для вверх) event.deltaY > 0 //(для понижения)
Куда это добавить?
const gameBoard = document.getElementById("game-board"); константная сетка = новая сетка (gameBoard); Grid.getRandomEmptyCell().linkTile(новая плитка(gameBoard)); Grid.getRandomEmptyCell().linkTile(новая плитка(gameBoard)); setupInputOnce(); функция setupInputOnce() { window.addEventListener("keydown", handleInput, { Once: true }); window.addEventListener("mousedown", handleInput, { Once: true }); window.addEventListener("wheel", handleInput, { Once: true }); } асинхронная функция handleInput (событие) { console.log(event.key || event.button || event.deltaY); переключатель (event.key || event.button || event.deltaY) { случай «СтрелкаВверх»: если (!canMoveUp()) { setupInputOnce(); возвращаться; } ожидайте перемещения вверх(); перерыв; случай «Стрелка вниз»: если (!canMoveDown()) { setupInputOnce(); возвращаться; } ожидайте перемещения вниз(); перерыв; случай «ArrowLeft»: случай «MouseLeft»: если (!canMoveLeft()) { setupInputOnce(); возвращаться; } ожидайте moveLeft(); перерыв; случай «ArrowRight»: случай «MouseRight»: если (!canMoveRight()) { setupInputOnce(); возвращаться; } ожидайте moveRight(); перерыв; по умолчанию: если (event.deltaY > 0) { если (!canMoveUp()) { setupInputOnce(); возвращаться; } ожидайте перемещения вверх(); перерыв; } еще если (event.deltaY < 0) { если (!canMoveDown()) { setupInputOnce(); возвращаться; } ожидайте перемещения вниз(); перерыв; } setupInputOnce(); возвращаться; } const newTile = новая плитка (gameBoard); Grid.getRandomEmptyCell().linkTile(newTile); if (!canMoveUp() && !canMoveDown() && !canMoveLeft() && !canMoveRight()) { ожидайте newTile.waitForAnimationEnd() Предупреждение("Попробуйте еще раз!") возвращаться; } setupInputOnce(); }
Как добавить в игру 2048 функции перемещения мыши и колеса?
event.button === 0 //(для щелчка правой кнопкой мыши)
event.button === 2 // (для щелчка левой кнопкой мыши)
event.deltaY < 0 //(для вверх) event.deltaY > 0 //(для понижения)
Куда это добавить?
const gameBoard = document.getElementById("game-board"); константная сетка = новая сетка (gameBoard); Grid.getRandomEmptyCell().linkTile(новая плитка(gameBoard)); Grid.getRandomEmptyCell().linkTile(новая плитка(gameBoard)); setupInputOnce(); функция setupInputOnce() { window.addEventListener("keydown", handleInput, { Once: true }); window.addEventListener("mousedown", handleInput, { Once: true }); window.addEventListener("wheel", handleInput, { Once: true }); } асинхронная функция handleInput (событие) { console.log(event.key || event.button || event.deltaY); переключатель (event.key || event.button || event.deltaY) { случай «СтрелкаВверх»: если (!canMoveUp()) { setupInputOnce(); возвращаться; } ожидайте перемещения вверх(); перерыв; случай «Стрелка вниз»: если (!canMoveDown()) { setupInputOnce(); возвращаться; } ожидайте перемещения вниз(); перерыв; случай «ArrowLeft»: случай «MouseLeft»: если (!canMoveLeft()) { setupInputOnce(); возвращаться; } ожидайте moveLeft(); перерыв; случай «ArrowRight»: случай «MouseRight»: если (!canMoveRight()) { setupInputOnce(); возвращаться; } ожидайте moveRight(); перерыв; по умолчанию: если (event.deltaY > 0) { если (!canMoveUp()) { setupInputOnce(); возвращаться; } ожидайте перемещения вверх(); перерыв; } еще если (event.deltaY < 0) { если (!canMoveDown()) { setupInputOnce(); возвращаться; } ожидайте перемещения вниз(); перерыв; } setupInputOnce(); возвращаться; } const newTile = новая плитка (gameBoard); Grid.getRandomEmptyCell().linkTile(newTile); if (!canMoveUp() && !canMoveDown() && !canMoveLeft() && !canMoveRight()) { ожидайте newTile.waitForAnimationEnd() Предупреждение("Попробуйте еще раз!") возвращаться; } setupInputOnce(); }
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение