egretwing

author author     2023-03-15     692

关键词:

参考技术A Egret Wing是一款开源免费的HTML5游戏开发工具,Egret Wing支持目前市面主流的开发语言和技术,作为一款可视化编辑器,它可以帮你提高开发效率。这款工具还支持 Node.js 开发扩展插件,可以让你更好的定制化自有内容。

渲染模式:dom,cavase,webGL

不同的地图、不同的元素,好玩的道具(充值付费获得道具、融合形成新的道具)

创建项目->资源(json/png)resDepot->模块game

地图、步数、道具、消除

1.地图:元素按照地图排列

最大宽高格子数为8

形状可配置

包含自己的背景图

不同关卡背景图不同

无论地图形状如何改变,尺寸不变

2.步数:

不同关卡步数不同

步数为0时,游戏结束

3.道具

一共五种道具,道具功能不同,使用道具时候不消耗步数,来源于游戏奖励

4.消除:

三个及以上相同元素可消除

元素随机出现

初局开始时,不可有消除元素

没有可消除元素时,自动乱序

数据:地图数据、基础数据、关卡数据、道具数据

视图:元素、背景、关卡、道具

逻辑:主逻辑控制器、数据解析器、地图数据控制器、算法控制器、视图控制器

mapData:

一维数组:数据整理方便,下标

二维数组:空间表示方便,获取位置方便

index = row * 8 + column

json数据描述

地图配置信息如何描述

"map": [0,1,8,9,6,7,14,15] 一维数组记录不展示以及不可放置元素的方格

游戏元素数据设计

元素:type、ID(唯一)、location

eg:

mapData[3][6] = element.ID  

elements[mapData[3][6]] 元素对象池 访问想要的数据

ID:45

location:30

public static unmapnum: number = 0;//空白地图块数量

public static mapData: number[][]; //游戏地图,-1表示块地图不能使用,-2表示,此地图没有元素

public static stepNum: number = 0;//玩家剩余步数

public static levelStepNum: number = 0;//当前关卡步数

public static elementTypes: number[];//当前关卡出现的元素类型

public static unusedElements: number[];//游戏中未使用得元素,仅记录元素ID

public static levelBackgroundImageName = ""; //当前关卡背景图资源名

public static MaxRow: number = 8;//最大的行

public static MaxColumn: number = 8;//最大的列

public static currentElementNum: number = 0;//当前关卡游戏中地图可用元素数量

public static levelReq: LevelRequire;//当前关卡过关条件

public static elements: GameElement[];//游戏中出现得元素数据池,最多为64个,因为8*8

//舞台宽高,此封装为了方便调用

public static stageW: number = 0;

public static stageH: number = 0;

DisplayObjectContainer

public constructor()

        super();

        this.addEventListener(egret.Event.ADDED_TO_STAGE, this.onAddToStage, this);

   

Sprite 类是基本显示列表构造块:一个可包含所有子项的显示列表节点

Sprite() 实例化一个容器

1.背景

var gbg:GameBackGround = new GameBackGround();

this._gameStage.addChild(gbg);

gbg.changeBackground();

2.地图

this.mapc = new MapControl();

this.mapc.createElementAllMap();

3.过关条件

let lec:egret.Sprite = new egret.Sprite();

this._gameStage.addChild(lec);

this.levm = new LevelReqViewManage(lec);

this.levm.createCurrentLevelReq();

4.元素

let cc:egret.Sprite = new egret.Sprite();

this._gameStage.addChild(cc);

this.evm = new ElementViewManage(cc);

this.evm.showAllElements();

1.寻找可消除元素

2.预检索可消除元素算法设计与实现

3.是否可以互相交换

交换后是否可以消除

egretwing4.0.3合并资源图片问题

一发布项目时,选择合并图片资源 选择合图大小 发布后,图片合并。随机了图片名字。   二 随机名的问题当资源不变更的情况下,多次发布,每次发布后资源的图片随机名是不变的。   现在改... 查看详情

egretwing3商城插件下载和使用

 吐槽下官网目前找不到插件商城入口。根据管理员提供的地址:http://store.egret.com/work/21-0.html 平时我们可以在wing里直接打开商城。打开wing使用向导 wing右侧会出现商城 打开商店,会看到很多开发者提供的插件。&n... 查看详情

egretwing3ftp使用方法

FTP挺实用的,不用自己去申请sinasea什么的免费空间来测试项目了。 添加FTP服务器配置默认就行。 指定目录上传至FTP服务器选择免费云测试空间。然后选择bin-release/web目录。  免费上传至云空间上传修改的版本。&n... 查看详情

egretwing

参考技术AEgretWing是一款开源免费的HTML5游戏开发工具,EgretWing支持目前市面主流的开发语言和技术,作为一款可视化编辑器,它可以帮你提高开发效率。这款工具还支持Node.js开发扩展插件,可以让你更好的定制化自有内容。渲... 查看详情

vscode插件开发之插件初步通信(代码片段)

参考了EgretWing,想像EgretWing那样在上方titlebar最右边上面增加一个menu(这个menu相对于一个按钮,当点击这个按钮时会出现一个window弹框,这个window弹框里就包含相关的表单信息以供登录或者注册使用。我是以这个作为参考模板的... 查看详情

怎么加载zip脚本

参考技术A首先使用的是老版的jszip,因为比较小(70多KB,api会稍微有点不同)2.例子是分别使用IntelliJIDEA和EgretWing这两个IDE跑的(Egret5.01)3.压缩文件zip的后缀修改 查看详情

egret学习-初次创建项目

...EgretLauncher,版本号:1.1.4安装引擎,5.2.42.安装开发工具EgretWing3,版本号4.1.63.创建项目,跟着官方文档就好各文件夹功能说明.wing:包括Egret项目的任务配置文件和启动配置文件。wingProperties.json:EgretWing项目配置文件。bin-debug:... 查看详情

白鹭引擎开发h5游戏(项目结构)

...东 2016.12.8http://blog.csdn.net/u010019717  主要使用EgretWing (是白鹭扩展的VisualStudioCode) 新建项目中 选择生成的项目的结构:  src是TypeScript源码目录  resource是我们项目中的资源路径,一般我们把图片音... 查看详情

egret学习笔记(egret打飞机-2.开始游戏)

打开EgretWing,新建一个Egret游戏项目,然后删掉默认生成的createGameScene方法里面的东西 然后新建一个BeginScene.ts的文件,作为我们的游戏的第一个场景1classBeginSceneextendsegret.DisplayObjectContainer{2publicconstructor(){3super();4this.addEventLis... 查看详情

promiseasyncawait在egret的简单应用

EgretEngnie5.1.10EgretWing4.1.5 一、Promise、async、await相关知识Promise介绍阮一峰async函数阮一峰 具体和详细的说明用法可以查看以上资料。说实话,从as3转过来,用这些语法真的不习惯... 二、Egret中promise的用法Egret中原本使... 查看详情

egret白鹭引擎入门(第一章)

...。Egret是一套HTML5游戏开发解决方案,产品包含EgretEngine,EgretWing,EgretVS,ResDepot,TextureMerger,TSConversion,EgretFeather,EgretInspector,DragonBones,Lakeshore等。而核心产品是EgretEngine,是一个基于TypeScript语言开发的一个HTML5游戏引擎,... 查看详情

最近这两天看了关于h5游戏开发的一个教程,实践很短暂,看了很多理论的东西,现在呢也只是想回忆回忆关于eui的部分知识吧

...下几款软件的相关知识做了些了解:EgretEngine(引擎),EgretWing(编辑器),TextureMerger(可将零散纹理拼合为整图,同时也可以解析SWF、GIF动画,导出可供Egret使用的配置文件),EgretFeather(是一款粒子效果编辑器)ResDe 查看详情