h5的游戏开发详解


当前第2页 返回上一页

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

function getkey(event) {  var keyCode;

  if(event == null)

  {

    keyCode = window.event.keyCode;

    window.event.preventDefault();

  else

  {

    keyCode = event.keyCode;

    event.preventDefault();

  switch(keyCode)

  {      case 68:  //按下D

       deal();      break;

     case 72:   //按下H

     playerdone();      break;

     case 78: //按下N

     newgame();

      break;

    default:

    alert("Press d, h, or n.");

      }

   

 }

4. 添加事件监听:

1

2

3

4

var canvas1 = document.getElementById('canvas');

  canvas1.addEventListener('mousedown', startwall, false);//false表示事件冒泡的顺序。

  canvas1.addEventListener('mousemove', stretchwall, false);

  canvas1.addEventListener('mouseup', finish, false);

5.运动的图形一般都是统一加载在一个数组中,定时器每触发一次就重绘一次。每一个对象都有draw方法。

1

2

3

4

5

6

var mypent = new Token(100, 100, 20, "rgb(0,0,250)", 5);

everything.push(mypent);    function drawall() {

    ctx.clearRect(0, 0, cwidth, cheight);        var i;        for (i = 0; i < everything.length; i++) {

        everything[i].draw();

    }

}

6.javascript面向对象的能力没有那些高级语言强,很多功能的实现都是巧妙的运用了数组。比如洗牌的动作。

1

2

3

4

5

6

7

8

9

10

11

     //洗牌就是更换了牌的位置  function shuffle() {  var i = deck.length - 1;//deck代表一副牌

 var s;  while (i>0) {//这里循环一次 每张牌平均更换了两次位置

     s = Math.floor(Math.random()*(i+1));//随机范围是0-i (包括i)

     swapindeck(s,i);//交换位置

     i--;

 }

 }

function swapindeck(j,k) {    var hold = new MCard(deck[j].num,deck[j].suit,deck[j].picture.src); //MCard 是一张牌的对象。

   deck[j] = deck[k];

   deck[k] = hold;

}

7.很多地方要用到数学知识:比如小球碰撞,就需要改变x和y的运动方向即可。判断是否在击中目标。就是判断xy是否在一定的区间。但判断一个移动的物体能不能经过前面的路,且不能能穿越墙。就有点复杂了。像迷宫那个游戏。本质是要判断线段到球心的距离不小于球的半径。

1

.sx +=.sy += (i = 0; i < walls.length; i++= (intersect(wall.sx, wall.sy, wall.fx, wall.fy, .sx, .sy, .sx -=.sy -== fx -= fy -= 0.0 - ((sx - cx) * dx + (sy - cy) * dy) / ((dx * dx) + (dy * (t < 0.0= 0.0  (t > 1.0= 1.0= (sx+t*(fx-sx))-= (sy +t*(fy-sy))-= (dx*dx) +(dy* (rt<(rad*

相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!

推荐阅读:

Nodejs路由与控制器的使用

html5动画实现舞动的雨伞

css3的聊天气泡样式

怎样用nodejs搭建服务器

以上就是h5的游戏开发详解的详细内容,更多文章请关注木庄网络博客

返回前面的内容

相关阅读 >>

HTML5 canvas标签的作用以及canvas标签的历史由来介绍

HTML5 canvas基本绘图之绘制线条

什么是html语义化?html语义化的好处(总结)

HTML5开发手机打电话发短信功能代码实例分享

HTML5 新表单元素

html中的table详解

聊聊你可能不了解的css属性函数 attr()

HTML5后工作做什么

HTML5初窥2之新元素

HTML5多图片预览上传及点击可拖拽控件的实例分享

更多相关阅读请进入《HTML5》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...

    暂无评论...