《绯雨骑士团》Demo,框架实现,寻路打怪
在家无事花几天做了个放置挂机demo,做着玩吧。和海拓的《凡人修仙传》类似吧,自动挂机刷怪打boss数值游戏,但是我比较喜欢二次元的,所以选了《绯雨骑士团》的资源。
参考了以下资料:
决战沙城 :mvc,工具类
大富豪3: model层DataCenter数据中心
雷霆传奇:mvp,工具类
骑战三国:新手指引
puremvc:mvc
Laya工具类:Laya.Scene和Laya.Dialog
其他博客:对象池Pool
目前只实现了主场景寻路挂机打怪,得钱得经验。模块太多了,十几个模块,一个模块N个二级页面,肝多少天才能写完啊,遂放弃了 >_<
开发时间 断断续续吧 打打游戏 看看电影 写写代码
体验地址:http://www.biliking.com/game/rainknight/
体验二维码:


框架部分如图:

MVP:

1.控制
Controller 控制管理类主要是注册,注销control,保存controller
BaseControl 控制基类,主要是监听和派发模块内和模块间,以及网络事件。模块view和model之间的逻辑。
2.数据
BaseModel 数据基类,啥也没有。这里不需要和视图交互,不需要派发事件。
DataCenter 数据中心,单例,所有数据保存在数据中心,并通过数据中心获取。
3.视图
BaseView 视图基类
BaseDialog 会话框基类,主要领取奖励,断线提示啊之类的会话框
BasePanel 模块基类,主要是角色,技能,打造等等模块类。
BaseScene 场景基类,主要是登录,游戏场景等
ViewManager 视图管理类,主要是注册,打开,关闭,保存视图,内置模块所需加载资源配表,加载动画等
DialogManager 会话框管理类 ,继承自ViewManager
Panelmananger 模块管理类,继承自ViewManager
SceneManager 场景管理类,继承自ViewManager
自定义组件:

BitmapFont 自定义位图字体,不需要texturemerger制作字体了。支持单张数字图,整张数字图加载并显示位图字体,drawcall=1,字体位图缓存共用,节约内存。
BitmapMovie 自定义影片剪辑,不需要龙骨或texturemerger制作帧动画了。支持单张帧动画,整张帧动画图加载并播放动画,drawcall=1,使用位图缓存效率尚可。
LoadAnim 资源加载,网络请求等loading动画
NativeToUI 微信小游戏,跳转其它小游戏的图标,间隔晃动动画
ScreenLock 屏幕锁定类,部分操作时,锁定屏幕不让操作
ScrollVIew 图片轮播组件
Tips 游戏内提示组件,比如获得经验,获得金币等等提示。
UIPopupMenu 下拉菜单组件
BaseBone 自定义龙骨组件,支持局部换装,全局换装,龙骨资源异步加载等等
BaseMovieClip 自定义龙骨导出的帧动画组件
新手指引:

GuideManager 新手指引管理类,支持注册,下一步,引导配置等等
GuideMask 新手指引遮罩等,镂空一个矩形局域
GuideReverseMask 新手指引遮罩类,支持反向遮罩,镂空一个不规则区域,例如圆形,圆角矩形等等。
手势:

GestureDrag 拖拽手势
GesturePinch 两指放大手势,例如两指放大一张图片
通讯:

Http http通讯类,支持post,get,put通讯,支持通讯失败重新发送,支持序列发送
HttpUrl 通讯接口
NetLock 通讯锁屏,特殊请求必须等待返回才能进行下一步操作时,进行锁屏
ClientSocket websocket通讯,支持连接,断线重连,消息派发,消息加解密,protobuf,json格式
ClientSocketIO socket.io通讯类
ProtoUrl 通讯接口
SocketConst 通讯事件常量
声音:

BaseSound h5平台声音类,封装了egret.Sound和对应的egret.SoundChannel,方便操作
ISoundManager 声音管理类接口
SoundManager h5平台声音管理类,支持播放音效,背景音乐,异步加载音乐,带缓存列表支持同时播放相同音乐
WxSoundManager 微信小游戏平台声音管理类, 功能同上
平台:

DebugPlatform 普通调试环境
IPlatform 平台接口
WxPlatform 微信小游戏平台,封装了微信接口
工具类:

ArrayUtils 数组工具类
BtnTap 按钮事件类,支持按钮点击动画,点击声音
DateTimer 基于系统时间的计时器,不受浏览器休眠影响
DeviesUtils 设备工具类, 主要是微信,移动,pc平台的判断等等
EventManager 事件管理类, 主要是框架模块间的事件监听,派发等管理
LayerMananger 图层管理类, 主要是场景层,弹框层,会话层,提示层等等
LocalStorage 本地缓存工具类
Log 调试信息工具类
NumberUtils 数字工具类
Pool 对象池
ResUtils 资源管理类,支持单个Group加载,多个Group加载,皮肤配置文件加载,静默加载等等
ShakeUtils 震动效果类,有空了应该封装到一个动画的特效类里。
StageUtils 舞台工具类, 主要是保存了stage,并对stage进行操作,或者获取stage属性,额外支持屏幕适配模式设置
TimerManager 计时器管理类,这是唯一个直接复制决战沙城的工具类。。。
VirtualJK 虚拟摇杆组件,这个应该放到自定义组件里,漏了。。
WxAuth 封装微信小游戏平台授权流程,应该放到platform里,漏了。。
WxDeviceMotion 微信设备工具类,支持摇一摇,手机翻转,手机朝下等等判断
Astar

Astar A*寻路算法
Game A*寻路使用demo
Grid 格子
Node 节点
App

保存了所有工具类的引用,这样可以方便使用
//访问登录数据的用户id
let userID:string = App.DataCenter.LoginModel.userID; //打开一个对话框
App.Dialog.open(HttpErrorDialog); //打开登录场景
App.Scene.open(LoginScene); //显示一个提示
App.Tips.show("业务模块就不写了");
游戏代码部分:

Main 入口文件
VersionManager 资源版本管理
其他就是常规的游戏和业务模块了,目前只写了登录,角色,伙伴,游戏主场景。
rpg模块太多了,一个模块下面还有N个二级界面,一个人要写到死哦。业务模块也没什么含金量。就不写了。累。
《绯雨骑士团》Demo,框架实现,寻路打怪的更多相关文章
- Maven+Spring+Hibernate+Shiro+Mysql简单的demo框架(二)
然后是项目下的文件:完整的项目请看 上一篇 Maven+Spring+Hibernate+Shiro+Mysql简单的demo框架(一) 项目下的springmvc-servlet.xml配置文件: ...
- Dubbo入门介绍---搭建一个最简单的Demo框架
Dubbo入门---搭建一个最简单的Demo框架 置顶 2017年04月17日 19:10:44 是Guava不是瓜娃 阅读数:320947 标签: dubbozookeeper 更多 个人分类: D ...
- Dubbo入门—搭建一个最简单的Demo框架
一.Dubbo背景和简介 1.电商系统的演进 Dubbo开始于电商系统,因此在这里先从电商系统的演变讲起. a.单一应用框架(ORM) 当网站流量很小时,只需一个应用,将所有功能如下单支付等都部署在一 ...
- Dubbo入门---搭建一个最简单的Demo框架(转)
Dubbo背景和简介 Dubbo开始于电商系统,因此在这里先从电商系统的演变讲起. 单一应用框架(ORM) 当网站流量很小时,只需一个应用,将所有功能如下单支付等都部署在一起,以减少部署节点和成本. ...
- Dubbo简介---搭建一个最简单的Demo框架
Dubbo背景和简介 Dubbo开始于电商系统,因此在这里先从电商系统的演变讲起. 单一应用框架(ORM) 当网站流量很小时,只需一个应用,将所有功能如下单支付等都部署在一起,以减少部署节点和成本. ...
- Intel® QAT加速卡之编程demo框架
QAT demo流程框架 示例一: 代码路径:qat1.5.l.1.13.0-19\quickassist\lookaside\access_layer\src\sample_code\functio ...
- Maven+Spring+Hibernate+Shiro+Mysql简单的demo框架(一)
相关的maven的 pom.xml <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="ht ...
- Dubbo入门---搭建一个最简单的Demo框架
参考文档: https://blog.csdn.net/noaman_wgs/article/details/70214612/
- Bootstrap入门Demo——制作路径导航栏
今天在在群里聊天的时候看到一仅仅程序猿发了一张用Bootstrap做的界面.感觉挺好看.然后去官网看了下组件.发现都挺美丽的,然后看到了路径导航栏,刚好要做这个东西,然后就下了Bootstrap的源代 ...
随机推荐
- JMeter聚合报告的参数含义
Label----每个请求的名称,比如HTTP请求等 #Samples----发给服务器的请求数量 Average----单个请求的平均响应时间 毫秒ms Median----50%请求的响应时间 ...
- Objective-C 消息发送与转发机制原理(摘)
八面玲珑的 objc_msgSend 此函数是消息发送必经之路,但只要一提 objc_msgSend,都会说它的伪代码如下或类似的逻辑,反正就是获取 IMP 并调用: id objc_msgSend( ...
- 关于maven导入工程pom文件报错问题及解决
pom文件头报错 1.导入maven文件,经常遇到表头出错问题.报错:Failure to transfer org.apache.maven.shared:maven-filtering:pom:1 ...
- FFT代码详解
关于FFT原理部分的介绍,在网上已经有很多了,所以在此只讲代码实现部分的内容. 原理可以参考https://www.cnblogs.com/RabbitHu/p/FFT.html 推荐看完它的原理解释 ...
- AsyncAPI 几个方便的工具
AsyncAPI 类似openapi 也提供了一些周边工具 editor 类似openapi 的,但是目前官方已经不推荐使用了,推荐使用playground,以下是构建一个容器镜像 clone 代码 ...
- vue使用插件的流程
1.引入vue 2.引入插件 3.通过vue.use()调用 例子:使用router插件 import Vue from "vue"; import VueRouter from ...
- 再见Spring Boot 1.x
记得很早很早之前有过一次面试,面试前端说自己喜欢JavaScript,然后面试官问,你知道当前JavaScript最新标准和规范吗?我无言以对,因为平时没有关注认真对待这些信息,然后就没有然后了. 或 ...
- 【题解】洛谷 P1080 国王游戏
目录 题目 思路 \(Code\) 题目 P1080 国王游戏 思路 贪心+高精度.按\(a \times b\)从小到大排序就可以了. \(Code\) #include<bits/stdc+ ...
- Macbook Pro 键盘触摸板失灵,只有电源键有反应 修复手札
上次说到换完电池后键盘和触摸板就没反应了,只好硬着头皮把所有的元件一个个拆下来试. 经过3天的测试(试了网上所有能找到的办法,最多的就是重置smc和nvmp),最终确定故障应该在触摸板排线上. 没有废 ...
- RMQ问题(超详细!!!)
一.简介 RMQ是询问某个区间内的最大值或最小值,暴力解法对每个询问区间用循环找最值,当n.q>10000会TLE. 常用RMQ的求解方法——ST算法. ST算法通常用在要多次询问一些区间的最值 ...