본문 바로가기

개발자노트/웹

HTML - 주사위게임 ( setTimeout 사용 )

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>주사위 게임</title>
<style type="text/css">
   #title {
      width: 500px;
      height: 50px;
      background-color: lightpink;
      line-height: 50px;
      text-align: center;
      cursor: pointer;
      margin: 0 auto;
   }
   #content {
      width: 500px;
      height: 400px;
      background-color: lightgreen;
      margin: 0 auto;
   }
   #com {
      float: left;
   }
   #guest {
      float: right;
   }
</style>
</head>
<body>

<div id="title">게임시작!</div>
<div id="content">
   <img id="com" alt="컴퓨터" src="images/1.png">
   <img id="guest" alt="사용자" src="images/1.png">
</div>

<script type="text/javascript">
   document.querySelector('#title').onclick=function(){
      if(this.firstChild.nodeValue=='게임시작!'){ // 여기서 this.firstChild는 title의 첫번째 자식인 '게임시작!' 부분을 말한다.
         this.firstChild.nodeValue='결과 확인하기';
         this.style.backgroundColor='lightblue';
         startGame();
      }
      else{
         this.firstChild.nodeValue='게임시작!';
         this.style.backgroundColor='lightpink';
         endGame();
      }
   }
   
   function startGame(){
      document.querySelector('#com').src='images/dice.gif';
      document.querySelector('#guest').src='images/dice.gif';
   }
   
   function endGame(){
      var com=Math.floor(Math.random()*6)+1;
      var guest=Math.floor(Math.random()*6)+1;
      document.querySelector('#com').src='images/'+com+'.png';
      document.querySelector('#guest').src='images/'+guest+'.png';
      setTimeout(function(){ // setTimeout(함수명,시간) -> 어떤 기능을 얼마만큼의 시간을 두고 수행할것인지
         if(com<guest){
            alert('Player Win!');
         }
         else if(com==guest){
            alert('Draw!');
         }
         else{
            alert('COM Win!');
         }
      },1000);
   }
</script>

</body>
</html>