[javascript] 자바스크립트로 터치 이벤트를 활용한 게임 만들기

이번 포스트에서는 자바스크립트를 사용하여 터치 이벤트를 활용한 간단한 게임을 만드는 방법을 알아보겠습니다. 터치 이벤트를 활용하면 모바일 기기에서도 게임을 즐길 수 있으며, 사용자와의 상호작용성을 높일 수 있습니다.

1. HTML 및 CSS 설정

게임을 만들기 위해 먼저 HTML과 CSS를 설정해야 합니다. 다음은 간단한 게임 화면을 만들기 위한 HTML과 CSS 예제입니다.

HTML

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <link rel="stylesheet" href="styles.css">
  <title>터치 이벤트 게임</title>
</head>
<body>
  <div class="game-container">
    <div class="player"></div>
  </div>
  <script src="app.js"></script>
</body>
</html>

CSS

body, html {
    margin: 0;
    padding: 0;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .game-container {
    width: 300px;
    height: 300px;
    background-color: #f0f0f0;
    position: relative;
  }
  .player {
    width: 50px;
    height: 50px;
    background-color: #ff0000;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 10px;
  }

2. 자바스크립트로 터치 이벤트 처리하기

이제 자바스크립트를 사용하여 플레이어를 움직이는 터치 이벤트를 처리해보겠습니다.

const player = document.querySelector('.player');

let isDragging = false;

player.addEventListener('touchstart', (e) => {
  isDragging = true;
});

player.addEventListener('touchend', (e) => {
  isDragging = false;
});

player.addEventListener('touchmove', (e) => {
  if (isDragging) {
    const touch = e.touches[0];
    player.style.left = touch.clientX + 'px';
  }
});

위의 코드는 .player 엘리먼트에 터치 이벤트를 등록하여 손가락 움직임에 따라 플레이어를 움직이는 기능을 구현한 것입니다.

3. 게임 로직 추가하기

플레이어가 목표 지점에 도달하면 게임 승리 메시지를 보여주는 등의 게임 로직을 추가할 수 있습니다. 이를 통해 터치 이벤트를 활용한 게임을 보다 흥미롭게 만들 수 있습니다.

위의 예제를 참고하여 자바스크립트로 터치 이벤트를 활용한 게임을 만들어 보세요.