JavaScript游戏之是男人就下100层代码打包


Posted in Javascript onNovember 08, 2010

这次的游戏的编写难度比之前的都高很多。本次鄙人用了js的继承以及设计模式的工厂模式,也算是一个突破。。。 

游戏的大致设计思路:
1,玩家类Player:一个人能左右移动,以及上下移动的小人。
拥有的基本方法:{
左右移动 : 单纯的键盘左右移动,

向下移动 : 属于向下加速度移动,每次移动都会加一个重力加速度的值,

向上移动 : 其实是跟着方块一起向上移动, 匀速向上运动,

弹跳 : 就是玩家先向上一个减速度运动,然后,当速度小于1时,像下加速度运动 

2,方块基类BlockBase:所有方块的基类,拥有公共的方法以及接口。

拥有的基本方法:{

移动 : 方块的向上匀速移动,

检测玩家是否在方块上  : 判断玩家是否停留在方块上 

以及一些抽象的接口函数,只有名字,需要在子类中实现,具体看源码。

 

3,各种子类,如 普通方块类NormalBlcok、弹跳方块类FlipBlock等

继承的实现方式如下:

在构造函数中:BlockBase.call(this);继承非prototype的属性与方法

在函数外部:子类方块.prototype = new BlockBase(); 继承基类的prototype的属性与方法

 

4, 工厂类BlockFactory:负责生产方块,以及击中处理方块

拥有的基本方法:{

生成方块 :  重点的方法,就是随机生成一块方块 

其实我也不知道怎么说,还是看源码吧。里面我注释得很具体了。

还有,bug肯定是会有的,希望大家谅解。。。 

最后献上预览吧。希望大家多多拍砖,能让我多些提高。最好在代码的编写上。 
 方向左右控制移动,界面是做得比较丑。。。大家见谅。
演示代码:http://demo.3water.com/js/DownFloor/index.html

完整源码打包>> /201011/yuanma/DownFloor.rar 

Javascript 相关文章推荐
js实现带搜索功能的下拉框实时搜索实时匹配
Nov 05 Javascript
javascript禁制后退键(Backspace)实例代码
Nov 15 Javascript
js制作简易年历完整实例
Jan 28 Javascript
jQuery中使用each处理json数据
Apr 23 Javascript
Bootstrap 源代码分析(未完待续)
Aug 17 Javascript
AngularJS模块详解及示例代码
Aug 17 Javascript
AngularJS常见过滤器用法实例总结
Jul 06 Javascript
关于meta viewport中target-densitydpi属性详解(推荐)
Aug 18 Javascript
vue2组件之select2调用的示例代码
Oct 12 Javascript
微信小程序使用toast消息对话框提示用户忘记输入用户名或密码功能【附源码下载】
Dec 09 Javascript
vue.js高德地图实现热点图代码实例
Apr 18 Javascript
vue移动端弹起蒙层滑动禁止底部滑动操作
Jul 22 Javascript
JavaScript游戏之优化篇
Nov 08 #Javascript
javascript开发中因空格引发的错误
Nov 08 #Javascript
window.ActiveXObject使用说明
Nov 08 #Javascript
发布一个基于javascript的动画类 Fx.js
Nov 05 #Javascript
微博@符号的用户名提示效果。(想@到谁?)
Nov 05 #Javascript
js focus不起作用的解决方法(主要是因为dom元素是否加载完成)
Nov 05 #Javascript
细说浏览器特性检测(2)-通用事件检测
Nov 05 #Javascript
You might like
PHP随机生成随机个数的字母组合示例
2014/01/14 PHP
PHP中加密解密函数与DES加密解密实例
2014/10/17 PHP
PHP+Mysql+jQuery文件下载次数统计实例讲解
2015/10/10 PHP
PHP中set error handler函数用法小结
2015/11/11 PHP
PHP从二维数组得到N层分类树的实现代码
2016/10/11 PHP
PHP后台微信支付和支付宝支付开发
2017/04/28 PHP
ThinkPHP 模板引擎使用详解
2017/05/07 PHP
php的无刷新操作实现方法分析
2020/02/28 PHP
在javascript中关于节点内容加强
2013/04/11 Javascript
JavaScript instanceof 的使用方法示例介绍
2013/10/23 Javascript
js跑步算法的实现代码
2013/12/04 Javascript
JavaScript实现获取某个元素相邻兄弟节点的prev与next方法
2016/01/25 Javascript
JS中多种方式创建对象详解
2016/03/22 Javascript
Three.js利用Detector.js插件如何实现兼容性检测详解
2017/09/26 Javascript
jquery如何实现点击空白处隐藏元素
2017/12/05 jQuery
vue和react等项目中更简单的实现展开收起更多等效果示例
2018/02/22 Javascript
VUE实现图片验证码功能
2020/11/18 Javascript
简单了解JavaScript sort方法
2019/11/25 Javascript
javascript开发实现贪吃蛇游戏
2020/07/31 Javascript
Vue elementui字体图标显示问题解决方案
2020/08/18 Javascript
vue单应用在ios系统中实现微信分享功能操作
2020/09/07 Javascript
[00:32]2018DOTA2亚洲邀请赛OpTic出场
2018/04/03 DOTA
跟老齐学Python之从if开始语句的征程
2014/09/14 Python
使用python和pygame绘制繁花曲线的方法
2018/02/24 Python
pytorch 图像预处理之减去均值,除以方差的实例
2020/01/02 Python
在python中logger setlevel没有生效的解决
2020/02/21 Python
PyQt5中QTableWidget如何弹出菜单的示例代码
2020/02/23 Python
python 模块导入问题汇总
2021/02/01 Python
雅诗兰黛(Estee Lauder)英国官方网站:世界顶级化妆品牌
2016/12/29 全球购物
大学本科毕业生求职信范文
2013/12/18 职场文书
运动会通讯稿300字
2014/02/02 职场文书
七匹狼男装广告词
2014/03/21 职场文书
三问三解心得体会
2014/09/05 职场文书
整改报告怎么写
2014/11/06 职场文书
2015年学校远程教育工作总结
2015/07/20 职场文书
Smart 2 车辆代号 HC11 全新谍照曝光
2022/04/21 数码科技