[HTML源码] HTML5游戏设计 —— 射击游戏 html5网站模板免费下载

[复制链接]
查看1809 | 回复14 | 2017-12-31 11:15:52 | 显示全部楼层 |阅读模式
HTML5游戏设计 —— 射击游戏 html5网站模板免费下载
功能说明:

  游戏中在躲避敌人攻击的同时,需要收集三种不同的钥匙,开启对应的门,最后到达目的地。

  该游戏同样基于自己开发的HTML5游戏框架cnGameJS。

  推荐用chrome浏览器查看。

效果预览:

HTML5游戏设计 —— 射击游戏 html5网站模板免费下载

HTML5游戏设计 —— 射击游戏 html5网站模板免费下载

  方向键控制移动,空格键射击,shift键打开门。


请用支持HTML5 canvas的浏览器查看请用支持HTML5 canvas的浏览器查看

实现分析:

  在上一篇文章《HTML5实现3D迷宫》中,通过放射线法模拟出3D场景的效果,而本文则在3D效果的基础上,添加更多的游戏元素,构建成一个较完整的第一人称射击游戏。

  关于如何模拟出3D场景效果上文中已经有较详细的描述,本文则主要介绍如何实现游戏互动部分。

  1.游戏元素在地图上的对象和在屏幕上的对象的对应关系?

  首先,每个游戏元素都对应两个游戏对象,一个游戏对象为左边地图上的对象,另一个则为右边屏幕上的对象。例如,一个敌人的位置,是否射击状态等信息都由左边的地图对象来表示,而敌人在屏幕上的显示,则是根据在左边地图上对象的信息进行绘制。简而言之,左边的地图对象负责游戏元素位置,状态的判别,它真正存储游戏信息。而右边的屏幕对象则只负责游戏元素的呈现。
  • newEnemy.relatedObj=new enemy2({src:srcObj.enemy,context:screenContext});
  •         newEnemy.relatedObj.relatedParent=newEnemy;

复制代码

  如上,地图上的对象和屏幕上的对象保持互相引用的关系,这样就可以轻易通过地图对象访问屏幕对象,反之亦然。

  2.如何使敌人在发现玩家后进行射击?

  要实现该功能,我们需要知道玩家相对于敌人的角度,该参数我们可以根据敌人到玩家的距离和它们x,y的差值求出。之后我们就可以在敌人对象的位置向该方向发射出一条射线,如果该射线能在不触碰墙壁的时候触碰到玩家,就证明敌人可以看到玩家。这时候敌人就可以向玩家射击了。
击中敌人之后,需要break跳出循环,停止检测,防止击中在该敌人后面的敌人。


游客,如果您要查看本帖隐藏内容请回复
回复

使用道具 举报

galaxy | 2018-1-2 22:45:58 | 显示全部楼层
棒棒哒!楼主辛苦了,希望多发好贴!
回复

使用道具 举报

galaxy | 2018-1-2 22:48:08 | 显示全部楼层
棒棒哒!楼主辛苦了,希望多发好贴!
回复

使用道具 举报

wkymxx | 2018-4-8 13:03:58 | 显示全部楼层
我只是看看不说话,悠悠飘过!
回复

使用道具 举报

Mirandawsj | 2020-11-2 19:18:24 | 显示全部楼层
我是来白嫖悟空源码的积分的!!!!!
回复

使用道具 举报

子非鱼JXX | 2021-12-7 08:07:13 | 显示全部楼层
我是来白嫖资源的!
回复

使用道具 举报

把心掏給珎丶 | 2022-6-1 23:48:23 | 显示全部楼层
6666悟空源码资源多!
回复

使用道具 举报

聚雅阁砚堂 | 2022-6-2 01:30:44 | 显示全部楼层
祝愿悟空源码越办越好!
回复

使用道具 举报

yhzdmb342 | 2022-6-2 09:33:14 | 显示全部楼层
资源太多了,准备办个会员
回复

使用道具 举报

做农告根乎 | 2022-7-9 05:45:35 | 显示全部楼层
这个站很好,资源多,教程全
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则