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 相关文章推荐
Eval and new funciton not the same thing
Dec 27 Javascript
获取内联和链接中的样式(js代码)
Apr 11 Javascript
防止xss和sql注入:JS特殊字符过滤正则
Apr 18 Javascript
基于JavaScript实现继承机制之构造函数方法对象冒充的使用详解
May 07 Javascript
jquery实现select选择框内容左右移动代码分享
Nov 21 Javascript
AngularJS中的Directive实现延迟加载
Jan 25 Javascript
浅谈时钟的生成(js手写简洁代码)
Aug 20 Javascript
Node.js中用D3.js的方法示例
Jan 16 Javascript
jquery PrintArea 实现票据的套打功能(代码)
Mar 17 Javascript
JS禁止浏览器右键查看元素或按F12审查元素自动关闭页面示例代码
Sep 07 Javascript
Angular利用HTTP POST下载流文件的步骤记录
Jul 26 Javascript
vue实现点击出现操作弹出框的示例
Nov 05 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&&mysql)三
2006/10/09 PHP
修改PHP脚本使WordPress拦截垃圾评论的方法示例
2015/12/10 PHP
JavaScript高级程序设计(第3版)学习笔记7 js函数(上)
2012/10/11 Javascript
深入剖析JavaScript中的枚举功能
2014/03/06 Javascript
JavaScript中的ajax功能的概念和示例详解
2016/10/17 Javascript
Angular的模块化(代码分享)
2016/12/26 Javascript
Web制作验证码功能实例代码
2017/06/19 Javascript
Node.js使用Express.Router的方法
2017/11/14 Javascript
VUE + UEditor 单图片跨域上传功能的实现方法
2018/02/08 Javascript
Vue2.5通过json文件读取数据的方法
2018/02/27 Javascript
vue基于mint-ui实现城市选择三级联动
2020/06/30 Javascript
微信小程序实现手指触摸画板
2018/07/09 Javascript
通过扫小程序码实现网站登陆功能
2019/08/22 Javascript
jQuery设置下拉框显示与隐藏效果的方法分析
2019/09/15 jQuery
从零搭一个自用的前端脚手架的方法步骤
2019/09/23 Javascript
通过js实现压缩图片上传功能
2020/02/25 Javascript
详解Vue之事件处理
2020/07/10 Javascript
解决vue watch数据的方法被调用了两次的问题
2020/11/07 Javascript
微信小程序学习之自定义滚动弹窗
2020/12/20 Javascript
python实现的一个火车票转让信息采集器
2014/07/09 Python
mac PyCharm添加Python解释器及添加package路径的方法
2018/10/29 Python
python selenium实现发送带附件的邮件代码实例
2019/12/10 Python
django 取消csrf限制的实例
2020/03/13 Python
用于ETL的Python数据转换工具详解
2020/07/21 Python
python跨文件使用全局变量的实现
2020/11/17 Python
python 模拟登陆github的示例
2020/12/04 Python
HTML5开发动态音频图的实现
2020/07/02 HTML / CSS
空字符串(“”)和null的区别
2012/11/13 面试题
校班主任推荐信范文
2013/12/03 职场文书
高中体育教学反思
2014/01/29 职场文书
有多年工作经验的自我评价
2014/03/02 职场文书
企业业务员岗位职责
2014/03/14 职场文书
教师党员个人剖析材料
2014/09/29 职场文书
司法局2014法制宣传日活动总结
2014/11/01 职场文书
初中化学教学反思
2016/02/22 职场文书
Python查找算法的实现 (线性、二分,分块、插值查找算法)
2022/04/24 Python