zoukankan      html  css  js  c++  java
  • JavaScript游戏之是男人就下100层

    不知不觉,就到了11月份了,其实我为啥要写js游戏,觉得游戏更能引起共鸣。11月份开篇之作:是男人就下100层,相信大家都玩过。

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

    游戏的大致设计思路:

    1,玩家类Player:一个人能左右移动,以及上下移动的小人。

    拥有的基本方法:{

    左右移动 : 单纯的键盘左右移动,

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

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

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

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

    拥有的基本方法:{

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

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

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

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

    继承的实现方式如下:

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

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

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

    拥有的基本方法:{

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

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

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

    最后献上预览吧。希望大家多多拍砖,能让我多些提高。最好在代码的编写上。 完整源码>>

     方向左右控制移动,界面是做得比较丑。。。大家见谅。

    目前:0
  • 相关阅读:
    Activiti服务类-1 DynamicBpmnService服务类
    Activiti工作流学习(一)——Activiti服务类
    怎么才能将文件流或者图片转化为base64,传到前台展示
    idea导入eclipse项目
    使用IDEA开发Activiti工作流
    idea中创建多module的maven工程
    Git的使用--如何将本地项目上传到Github
    Spring Boot 入门搭建
    Json中相同或者重复记录的值相加组成新的Json
    前端基础之jQuery入门 01
  • 原文地址:https://www.cnblogs.com/floyd/p/1868323.html
Copyright © 2011-2022 走看看