实战案例|摇奖游戏的开发教程
admin
2023-02-16 14:20:04
0次

今天,我们跟大家分享一个实战小案例-----具有互动特效的摇奖游戏。在这个小案例中,可以看到随风徐徐下落的花瓣,点击时还会有元宝掉落。这个实战案例可以直接用于抽奖游戏,或者游戏特效使用。

逻辑图
实战案例|摇奖游戏的开发教程

1、创建项目

打开Wing,创建一个游戏项目
实战案例|摇奖游戏的开发教程

(因为游戏中用的素材背景图是400x800的分辨率,所以我将屏幕的大小也设置成480x800)

2、添加素材到项目中

将游戏中用到的素材添加到项目中,并在资源配置文件中进行配置
实战案例|摇奖游戏的开发教程

3、显示背景与摇钱树

在createGameScene函数中添加如下代码:

       var sky:egret.Bitmap = this.createBitmapByName("bg_jpg");
        this.addChild(sky);
        var stageW:number = this.stage.stageWidth;
        var stageH:number = this.stage.stageHeight;
        sky.width = stageW;
        sky.height = stageH;

        var normalTree_png:egret.Bitmap =  this.createBitmapByName("normalTree_png");
        this.addChild(normalTree_png);
        normalTree_png.y = this.height/2 - normalTree_png.height/2;
        normalTree_png.x = this.stage.stageWidth / 2 - normalTree_png.width / 2;
        private createBitmapByName(name:string):egret.Bitmap {
        var result:egret.Bitmap = new egret.Bitmap();
        var texture:egret.Texture = RES.getRes(name);
        result.texture = texture;
        return result;
    }

**4、添加花瓣飘落的特效---粒子特效制作

4.1 安装粒子编辑器**

粒子特效是指为模拟显示中的水、火、雾、气等效果,将无数的单个粒子组合,使其呈现出固定形态,借由控制器、脚本来控制整体或者单个粒子的运动,从而模拟出真实的效果。

白鹭引擎提供了一款容易上手的粒子编辑器--------EgretFeather,能让我们很快地在短短几分钟内创造和试验我们自己的粒子特效。

可以通过下面的链接下载粒子编辑器。https://www.egret.com/downloads/feather.html

实战案例|摇奖游戏的开发教程

4.2 编辑粒子特效

实战案例|摇奖游戏的开发教程

在主界面上包含了几个面板,分别是:纹理面板、颜色面板、动作面板、基本属性面板、可视调节面板、渲染面板。

其中,“基本属性”面板详细定义了粒子发射器的相关参数,“动作属性“面板定义了粒子运动环境参数,这二者决定了粒子的运动状态。在编辑器中,我们可以实时看到生成的例子效果,非常直观方便。

或者,我们可以通过”可视调节区“,通过拖拽鼠标来模拟自然现象进行调整。

实战案例|摇奖游戏的开发教程

基本属性中有几个参数需要解释说明一下:

发射时长:例子出现的总时间,单位毫秒,-1是永远出现。

发射位置y:例子出现的y坐标。

发射位置浮动y:y坐标,例子出现在那个范围内。

4.3 添加粒子库

在Egret中粒子特效是以第三方库的形式使用的,所以首先我们需要在自己的项目中配置第三方库particle.

我是在下面的链接中下载的第三方库,官网为我们总结好了常用的第三方库。

https://bbs.egret.com/thread-24868-1-1.html

打开我下载的压缩包,找到particle.

实战案例|摇奖游戏的开发教程

如图将particle目录拷贝到项目中的libs目录下,注意要放在modules目录外面。

实战案例|摇奖游戏的开发教程

然后在,egretProperties.json文件中进行配置。

{
  "engineVersion": "5.2.33",
  "compilerVersion": "5.2.33",
  "template": {},
  "target": {
    "current": "web"
  },
  "modules": [
    {
      "name": "egret"
    },
    {
      "name": "game"
    },
    {
      "name": "tween"
    },
    {
      "name": "assetsmanager"
    },
    {
      "name": "promise"
    },
    {
      "name":"particle",
      "path":"./libs/particle"
    }
  ]
}

4.4 创建粒子对象,添加到显示队列中

添加成员属性

private systemLeaf:particle.ParticleSystem;

在createGameScene中添加如下代码

                       var texture = RES.getRes("leaftexiao_png");
        var config = RES.getRes("leaftexiao_json");
        this.systemLeaf = new particle.GravityParticleSystem(texture, config);
        this.addChild(this.systemLeaf);
        this.systemLeaf.start();

5、添加点击事件,增加元宝掉落的特效

给摇钱树添加点击事件

       normalTree_png.touchEnabled = true;
       normalTree_png.addEventListener(egret.TouchEvent.TOUCH_TAP, this.rainHandler, this);
 private _rainParticle:particle.GravityParticleSystem;
    private rainHandler(e:egret.TouchEvent):void {
        if (this._rainParticle == null) {
            var texture = RES.getRes("silver_png");
            var config = RES.getRes("silverRain_json");
            this._rainParticle = new particle.GravityParticleSystem(texture, config);
            this.addChild(this._rainParticle);
        }

        this._rainParticle.start(1000);
    }

另:关于图片格式jpg与png的区别

在游戏中常用的图片格式是jpg和png,常用的绘图软件都可以生成这两种格式的文件,他们之间的区别是:jpg图片没有透明通道,而png图片可以保存透明部分。即如果图像中间需要不规则边界,或者中间需要透明部分,应保存为png格式;如果仅仅是矩形图像,没有透明的部分,则保存成jpg格式。通常同样的图像,jpg格式会比png格式小一些。

源码地址:https://github.com/WQQPsyche/yaoqianshu

大家在使用Egret Wing的过程中,如果有独特的方法或心得体验,欢迎与我们交流并分享给诸多开发者朋友!谢谢大家!

相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...