使用egret开发h5游戏的入门demo
main类代码
基本的代码如下所示,都写了注释,应该很好懂的。就不再一步一步分析了:
/**
* 定义全局变量
*/
//定义一个透明度的值用来判断是否需要隐藏或者显示
var number: number;
//定义一个值来表示是图片序号
var count: number = 1;
//定义三个按钮
let button = new eui.Button();
let button3 = new eui.Button();
let button2 = new eui.Button();
//定义一个位图对象
let sky = new egret.Bitmap();
/**
* main方法
*/
class Main extends eui.UILayer {
protected createChildren(): void {
super.createChildren();
egret.lifecycle.addLifecycleListener((context) => {
// custom lifecycle plugin
})
egret.lifecycle.onPause = () => {
egret.ticker.pause();
}
egret.lifecycle.onResume = () => {
egret.ticker.resume();
}
//inject the custom material parser
//注入自定义的素材解析器
let assetAdapter = new AssetAdapter();
egret.registerImplementation("eui.IAssetAdapter", assetAdapter);
egret.registerImplementation("eui.IThemeAdapter", new ThemeAdapter());
this.runGame().catch(e => {
console.log(e);
})
}
private async runGame() {
await this.loadResource()
this.createGameScene();
const result = await RES.getResAsync("description_json")
this.startAnimation(result);
await platform.login();
const userInfo = await platform.getUserInfo();
console.log(userInfo);
}
private async loadResource() {
try {
const loadingView = new LoadingUI();
this.stage.addChild(loadingView);
await RES.loadConfig("resource/default.res.json", "resource/");
await this.loadTheme();