返回列表 發帖

20121006=ok

  1. <!DOCTYPE html>
  2. <head>
  3. <meta charset="utf-8">
  4. </head>
  5. <body>
  6. <div id="gameArea"><canvas id="gameCanvas"></canvas></div>
  7. <script>
  8. var gameHeight = window.innerHeight; //取得瀏覽器內容的高度,放進設定的遊戲視窗高度。
  9. var gameWidth = window.innerWidth; //取得瀏覽器內容的寬度,放進設定的遊戲視窗寬度。

  10. var gameArea = document.getElementById("gameArea"); //利用"gameArea"這個ID來取得該Div
  11. var gameCanvas = document.getElementById("gameCanvas"); //利用"gameCanvas"這個ID來取得該Canvas
  12. gameArea.style.height = gameHeight; //設定gameArea的高度為遊戲視窗高度
  13. gameArea.style.width = gameWidth; //設定gameArea的寬度為遊戲視窗寬度
  14. gameCanvas.height = gameHeight; //設定gameCanvas的高度為遊戲視窗高度
  15. gameCanvas.width = gameWidth; //設定gameCanvas的高度為遊戲視窗寬度
  16. gameCanvas.addEventListener("mousedown",doMouseDown,false);

  17. function doMouseDown(event)
  18. {
  19.         alert("x="+event.pageX+";y="+event.pageY);
  20. }

  21. var ctx = gameCanvas.getContext("2d"); //取得gameCanvas的2D容器(Context)

  22. function clearScreen()
  23. {
  24.         ctx.fillStyle = "rgb(255,255,255)";
  25.         ctx.fillRect(0,0,gameWidth,gameHeight);
  26. }

  27. function drawArc(x,y,r,color)
  28. {
  29.         ctx.beginPath();
  30.         ctx.fillStyle = color;
  31.         ctx.arc(x,y,r,0,Math.PI*2,true);
  32.         ctx.fill();
  33. }

  34. var x = 500;
  35. var y = 100;
  36. var r = 30;
  37. var d = 7;
  38. var balls = 7;

  39. var seats = new Array(balls);
  40. for(var i=0;i<balls;i++)
  41.         seats[i] = new Array(balls);

  42. function initGame()
  43. {
  44.         for(var i=0;i<balls;i++)
  45.                 for(var j=0;j<i;j++)
  46.                         seats[i][j] = 0;
  47. }

  48. function gameLoop()
  49. {
  50.         clearScreen();
  51.         for(var i = 0;i < balls;i++)
  52.         {
  53.         for(var j=0;j<=i;j++)
  54.         {
  55.                 if(seats[i][j]==0)
  56.                         drawArc(x-i*(r*2+d)/2+(r*2+d)*j,y+r*2*i,r,"rgb(0,255,128)");
  57.                 else
  58.                         drawArc(x-i*(r*2+d)/2+(r*2+d)*j,y+r*2*i,r,"rgb(0,128,128)");
  59.                 }
  60.         }
  61.        
  62.         setTimeout(gameLoop,200);
  63. }       
  64. initGame();
  65. gameLoop();
  66. </script>
  67. </body>
複製代碼

返回列表