Egret 游戏项目
2018-08-01 15:53:19 0 举报
AI智能生成
机器人项目结构图
作者其他创作
大纲/内容
项目结构
.wings(项目启动相关配置)
bin-debug(项目编译后的代码,主要是ts文件编译 成js)
libs(引入模块对应的类库文件)
scripts(项目编译等相关配置)
src(源代码)
LoadingUI.ts(loading组件)
main.ts(主入口类)
global文件夹(动画基础变量配置)
util文件夹(页面组件库)
game文件夹(动画代码)
CommonView.ts(引入组件库,编写公用方法,定义动画步骤)
引入各种组件(按钮、几种可可人物、舞台背景、定时器、评测)
原生交互
egret.ExternalInterface.addCallback("sendToJS",function(){});(安卓给H5发的消息)(根据消息控制h5调用以下函数)
nextBtnFunc
prevBtnFunc
pauseBtnFunc
hideEvaluateResult
showEvaluateResult
egret.ExternalInterface.call("sendToNative", function(){});(h5给安卓发消息)
hideEvaluateResult方法中调用
createStepsArr(数组,定义动画步骤的别名与函数的对照表)
constructor(初始化)
initView(初始化函数,添加动画容器,加载左上角步骤变化,评测加载(未显示))
kekeView、keke2View、keke3View、keke4View、keke5View(载入可可,暂不显示)
topView(设置头部三部分按钮的位置和图片)
topBtnAddEvent(绑定顶部按钮事件)
importBtnFunc、openBtnFunc、endBtnFunc
bgView(设置初始化加载背景)
meunView(初始化按钮:上一步、下一步、暂停、结束、重来)、setButtonView(显示下一步或者对勾)
meunAddEvent(给上一步、下一步、暂停按钮绑定事件)
nextBtnFunc、prevBtnFunc、pauseBtnFunc
voiceView(载入声音,暂不播放)
其他各种函数方法(很多是提供给GameSceneView中调用)
showEvaluateResult(显示评测结果)、hideEvaluateResult(隐藏评测结果)、kekeAnimateSet(可可动画)、kekeAnimateStop(可可停止动画)、showKeke(显示指定可可)
videoBgView(视频背景加载后,调用视频动画videoAction(就是中间的小黑框内的视频))
videoAction 根据动画步骤判断加载哪个动画函数(譬如小黑框中的视频,或者背景图切换)
playSoundCommon(播放音频),playBgSoundCommon(播放背景音频)
goToStep(跳到指定的动画步骤)、showStep(打印当前动画步骤下调用的函数)
onKeyBoardEvent(监听键盘事件,控制上一步、下一步、暂停等操作)
clear(清除所有东西)
pauseKekeAnimate(根据那个可可显示,让该可可暂停动画)、resumeKekeAnimate(可可继续动画)
hideFunView(隐藏所有的场景动画、视频动画、评测)、onSoundComplete(结束所有动画)
setPaustBtnSikn(设置暂停按钮背景图片:播放、暂停或重载)
setTopBtnSkin(根据步骤判断是在哪一部分,让该“部分”按钮高亮)
changeBgView(改背景图片)
showVoiceView(播放声音)、hideVoiceView(停止声音)
GameSceneView(继承CommonView,定义动画每一步的函数)
constructor
initGoView(初始化,进入第一步动画)
picsInit(载入五个场景背景图)
importFun1......、openFun1.......、endFun1......、等,所有CommonView中createStepsArr中定义的步骤与函数的对照表中的所有涉及的函数动画
template(app用到的runtime)
resource(图片、音频、动画)
assets(图片、动画、音频)
Animate(动画的资源,用Texture Merger导入图片生成)
json文件(动画帧的详细配置)
png图片(动画中每一张图片的集成雪碧图)
Common(动画公用图片)
Loading(开始加载动画的相关图片)
Music(动画相关音频)
WhatHave(动画中特殊的图片)
default.res.json(设置资源别名与资源的对照表,代码中直接使用别名)
引入的库
egret核心库
game游戏库
tween缓存动画库
assetsmanager资源管理库
socket网络通讯库
eui界面制作库
promise接口库
experimental
项目运行过程
index.html页面中声明了入口类(data-entry-class="Main")
加载src/main.ts中Main类中的构造函数
Main继承自白鹭的基本容器egert.DisplayObjectContainer并且会自动添加到舞台stage中
自动添加时会触发onAddToStage,初始化生命周期管理器egret.lifecycle,并运行runGame
加载过渡动画loadResource及创造游戏场景createGameScene
createGameScene中将GameSceneView类(继承CommonView)实例化
收藏
0 条评论
下一页