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 相关文章推荐
javascript编写实用的省市选择器
Feb 12 Javascript
js设置document.domain实现跨域的注意点分析
May 21 Javascript
2016年最热门的15 款代码语法高亮工具,美化你的代码
Jan 06 Javascript
Js删除数组中某一项或几项的几种方法(推荐)
Jul 27 Javascript
详解js树形控件—zTree使用总结
Dec 28 Javascript
hovertree插件实现二级树形菜单(简单实用)
Dec 28 Javascript
js生成随机数方法和实例
Jan 17 Javascript
JavaScript对象_动力节点Java学院整理
Jun 23 Javascript
微信小程序实现自定义picker选择器弹窗内容
May 26 Javascript
小程序实现左右来回滚动字幕效果
Dec 28 Javascript
element实现合并单元格通用方法
Nov 13 Javascript
vue excel上传预览和table内容下载到excel文件中
Dec 10 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 基本语法格式
2009/12/15 PHP
PHP实现支持GET,POST,Multipart/form-data的HTTP请求类
2014/09/24 PHP
开启PHP的伪静态模式
2015/12/31 PHP
php使用Jpgraph创建3D饼形图效果示例
2017/02/15 PHP
swoole锁的机制代码实例讲解
2021/03/04 PHP
纯CSS3实现质感细腻丝滑按钮
2021/03/09 HTML / CSS
jQuery jcrop插件截图使用方法
2013/11/20 Javascript
js 3秒后跳转页面的实现代码
2014/03/10 Javascript
图片放大镜jquery.jqzoom.js使用实例附放大镜图标
2014/06/19 Javascript
jQuery中hover与mouseover和mouseout的区别分析
2015/12/24 Javascript
JavaScript来实现打开链接页面的简单实例
2016/06/02 Javascript
在 Angular 中实现搜索关键字高亮示例
2017/03/21 Javascript
用vue和node写的简易购物车实现
2017/04/25 Javascript
React 全自动数据表格组件——BodeGrid的实现思路
2019/06/12 Javascript
[45:34]完美世界DOTA2联赛PWL S3 Rebirth vs CPG 第一场 12.18
2020/12/19 DOTA
Python的Flask框架中实现分页功能的教程
2015/04/20 Python
Python中的列表生成式与生成器学习教程
2016/03/13 Python
用Python写王者荣耀刷金币脚本
2017/12/21 Python
Python实现绘制双柱状图并显示数值功能示例
2018/06/23 Python
python内置数据类型之列表操作
2018/11/12 Python
python中的反斜杠问题深入讲解
2019/08/12 Python
分享一个pycharm专业版安装的永久使用方法
2019/09/24 Python
python3中关于excel追加写入格式被覆盖问题(实例代码)
2020/01/10 Python
Python读取excel文件中带公式的值的实现
2020/04/17 Python
BOSE德国官网:尽探索之力,享音乐之极
2016/12/11 全球购物
Brookstone美国官网:独特新奇产品
2017/03/04 全球购物
美国波西米亚风格服装品牌:Show Me Your Mumu
2018/01/05 全球购物
C#如何进行LDAP用户校验
2012/11/21 面试题
仓库管理员岗位职责
2014/03/19 职场文书
2015年医务人员医德医风自我评价
2015/03/03 职场文书
送达通知书
2015/04/25 职场文书
庭外和解协议书
2016/03/23 职场文书
用Java实现简单计算器功能
2021/07/21 Java/Android
Redis的字符串是如何实现的
2021/10/24 Redis
mysql中DCL常用的用户和权限控制
2022/03/31 MySQL
Java服务调用RestTemplate与HttpClient的使用详解
2022/06/21 Java/Android