zoukankan      html  css  js  c++  java
  • Egret 小游戏实战教程 跳一跳(搬运一)

    游戏思路

    一般游戏开发可大体分为以下四个步骤,这里主要针对 H5 小游戏:

    第一步:

    准备资源

    这部分没什么好说的,准备好素材就是了,一般就是图片和音频

    当前跳一跳项目中用到的素材有(如下图所示):

    要注意的一点是:这里的方块阴影只是假装有个 3D 的效果,其实就是个图片

    写代码的时候,方块图片的锚点不应该是图片的中心点,而应该是图中的方块中心

    第二步:

    写游戏场景

    什么是场景呢,其实就是 UI 界面

    一般我们可以把游戏分成(至少)3 个场景,分别是开始场景、游戏场景和结束场景(如下图所示)

    然后利用 Egret 的 EUI 功能(可视化布局),我们可以很容易的创建静态场景(要有场景的意识),不用写一句代码,界面就有了,真的是好容易,谁用谁知道!

    提示:静态场景就是那些不会动的东西;会动的东西或重复的物体我们一般在后续会写成一个类或者方法

    第三步:

    写游戏逻辑

    这部分就是游戏的核心了,人与人之间的差别也就在这

    通常来说首尾两个场景交互较少,只要在按钮上添加几个事件监听就好了,而游戏场景中的逻辑才是我们真正要施展才华(写 bug)的地方

    第四步:

    多玩多调试

    这步也不用多说,就是多点点,各种骚操作,多管齐下,bug 总能与你不期而遇,擦出不离不弃的火花

    新建项目

    话不多说,让我们开始策马奔腾吧!

    1、新建一个名叫 jump 的项目并用 Egret Wing 3 编辑器打开

    2、在 resource/assets 目录下新建一个 data 文件夹,并把资源放入其中(包括图片和音频)

    3、打开 src 目录下的 Main.ts 文件,删除 createGameScene 函数里面的内容

    如果你在此时运行的话,将看不到任何效果,因为 createGameScene 函数里面没有做任何操作

    写静态场景

    这步我们将通过 EUI 来完成,不需要写一行代码,贼 TM 爽

    首先在 src 目录下新建一个名叫 scene 的文件夹

    右击该文件夹新建一个 EUI 组件,取名叫 SceneBegin,并修改默认路径(它会自己创建一个目录),具体操作如下图所示:

    从上图中我们可以看到,新建一个 EUI 组件后,会生成两个文件

    一个是 exml 文件,一个是 ts 文件,二者是一一对应的

    其中 exml 用来写 UI 界面,ts 用来写对应页面的逻辑

    所以这一步我们只会动到 exml 文件,打开 SceneBegin.exml,点击中间透明区域,在右侧设置其宽高为 640 ✖ ️1136,具体操作如下图:

    点击左侧界面的资源面板(图标里面有个 E 的),从中选取背景并拖入到界面中

    单击右侧面板中的快捷约束的最后一个按钮,则可使背景铺满整个界面,具体操作如下图:

    点击左侧界面的组件面板(图标有点像拼图的),从中选取 Button 组件,加上 ID 名并替换组件皮肤(也就是按钮背景啦),具体操作如下图:

    这样一来我们就将开始场景写好了,怎么样,是不是很 easy 呢?

    接下来只要用同样的方式去写游戏场景和结束场景即可

    由于我们这里的结束界面是以弹层的形式覆盖在游戏界面上的,所以二者是写在一起的

    ok,话不多说,右击 src 目录下的 scene 文件夹,新建另一个 EUI 组件,取名叫 SceneGame

    因为两个场景是在写一起的,所以我们需要对其进行分组(Group),一个 Group 写游戏场景,一个 Group 写结束场景

    那怎么分组呢,也很简单,找到编辑器左下角的布局面板,将 Group 拖入到界面中,并自适应全屏即可,如下图:

    再然后依葫芦画瓢即可,具体 exml 文件效果图如下:

     

    现在打开 src 目录下的 Main.ts 文件

    并在 createGameScene 函数中把开始场景添加到舞台中,然后运行一下你就能看到开始界面了,具体代码如下:

    protected createGameScene(): void {
        this.addChild(new SceneBegin());
    }

    小结

    至此,我们的静态场景就全部写完了,

    哦不,我们并没有写代码,仅仅是贴图和贴文字而已。

    当中的精髓就在于拖,把左侧面板的资源或控件熟练地拖入到界面中,

    然后在右侧面板设置其属性(宽高或 xy 值等),只要你能熟练地移动鼠标,神马静态场景都不在话下。

     
     
     

    跳一跳源码地址:GitHub

    原文:尤水就下

    *** |  以上内容仅为学习参考、学习笔记使用  | ***

  • 相关阅读:
    hdu 4027 Can you answer these queries? 线段树
    ZOJ1610 Count the Colors 线段树
    poj 2528 Mayor's posters 离散化 线段树
    hdu 1599 find the mincost route floyd求最小环
    POJ 2686 Traveling by Stagecoach 状压DP
    POJ 1990 MooFest 树状数组
    POJ 2955 Brackets 区间DP
    lightoj 1422 Halloween Costumes 区间DP
    模板 有源汇上下界最小流 loj117
    模板 有源汇上下界最大流 loj116
  • 原文地址:https://www.cnblogs.com/ChenZiRong1999/p/13424412.html
Copyright © 2011-2022 走看看