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获取单选框或复选框值及操作
Dec 18 Javascript
JS中for循序中延迟加载动态效果的具体实现
Aug 18 Javascript
node.js中的url.parse方法使用说明
Dec 10 Javascript
jQuery中is()方法用法实例
Jan 06 Javascript
JS+JSP通过img标签调用实现静态页面访问次数统计的方法
Dec 14 Javascript
jquery 重写 ajax提交并判断权限后 使用load方法报错解决方法
Jan 19 Javascript
jQuery查找节点方法完整实例
Sep 13 Javascript
Angularjs 动态改变title标题(兼容ios)
Dec 29 Javascript
canvas 弹幕效果(实例分享)
Jan 11 Javascript
微信小程序 MinUI组件库系列之badge徽章组件示例
Aug 20 Javascript
解决vue-router路由拦截造成死循环问题
Aug 05 Javascript
vue动态绑定style样式
Apr 20 Vue.js
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
Discuz 6.0+ 批量注册用户名
2009/09/13 PHP
php ajax实现文件上传进度条
2016/03/29 PHP
php set_include_path函数设置 include_path 配置选项
2016/10/30 PHP
form自动提交实例讲解
2017/07/10 PHP
jquery动画3.创建一个带遮罩效果的图片走廊
2012/08/24 Javascript
Javascript表格翻页效果实现思路及代码
2013/08/23 Javascript
JS基于myFocus库实现各种功能的tab选项卡切换效果
2015/09/19 Javascript
JavaScript根据CSS的Media Queries来判断浏览设备的方法
2016/05/10 Javascript
flexslider.js实现移动端轮播
2017/02/05 Javascript
jQuery中ztree 点击文本框弹出下拉框的实例代码
2017/02/05 Javascript
AngularJS对动态增加的DOM实现ng-keyup事件示例
2018/03/12 Javascript
vue全局使用axios的方法实例详解
2018/11/22 Javascript
js使用swiper实现层叠轮播效果实例代码
2018/12/12 Javascript
小程序开发踩坑:页面窗口定位(相对于浏览器定位)(推荐)
2019/04/25 Javascript
koa2 从入门到精通(小结)
2019/07/23 Javascript
layui动态渲染生成左侧3级菜单的方法(根据后台返回数据)
2019/09/23 Javascript
[48:12]Secret vs Optic Supermajor 胜者组 BO3 第三场 6.4
2018/06/05 DOTA
Python实现的NN神经网络算法完整示例
2018/06/19 Python
解决python报错MemoryError的问题
2018/06/26 Python
python matlibplot绘制多条曲线图
2021/02/19 Python
python for循环输入一个矩阵的实例
2018/11/14 Python
对Python的交互模式和直接运行.py文件的区别详解
2019/06/29 Python
python使用 cx_Oracle 模块进行查询操作示例
2019/11/28 Python
python读写数据读写csv文件(pandas用法)
2020/12/14 Python
python 实现百度网盘非会员上传超过500个文件的方法
2021/01/07 Python
九年级数学教学反思
2014/02/02 职场文书
葛优非诚勿扰搞笑征婚台词
2014/03/17 职场文书
实习公司领导推荐函
2014/05/21 职场文书
2014入党积极分子破除“四风”思想汇报
2014/09/14 职场文书
中级会计大学生职业生涯规划书
2014/09/16 职场文书
神龙架导游词
2015/02/11 职场文书
2019如何书写演讲稿?
2019/07/01 职场文书
2019职场单身人才调研报告:互联网行业单身比例最高
2019/08/07 职场文书
浅谈python数据类型及其操作
2021/05/25 Python
详解PHP服务器如何在有限的资源里最大提升并发能力
2021/05/25 PHP
浅谈react useEffect闭包的坑
2021/06/08 Javascript