跳到主要内容

示例8:对数据进行组合

前几个触发器中的案例使用的都是基本数据类型(数值、字符串等),接下来将会介绍如何把这些基本数据类型进行组合,从而使用复合数据类型。复合数据类型有很多,本节先介绍数组和简单表及其应用。

数组

数组是多个相同类型数据的集合。可以把一维数组想象成一个有序的列表,每个列表项都有一个编号(也叫下标),从0开始递增,通过这个编号,可以访问或修改列表中的任意一个数据。此外,还可以使用for循环遍历数组,获取数组的每个数据。

在星火编辑器中,可以通过加入一个数组变量来快速创建一个数组。数组旁边尖括号包起来的类型代表这个数组内存放的是什么类型的数据,比如数组<数值>代表这个数组存放的是数值类型数据。此外,可以点击新建数组旁边的加号来为该数组设置初始值。

此外,数组还可以嵌套使用,比如数组< 数组<数值> >就是一个数值类型的二维数组。

数组基本操作

在数组末尾添加元素

创建数组之后,可以用该语句向数组内添加元素。

示例:

添加元素后,数组的值为[1, 2, 3]。

在数组中删除和添加元素

使用该语句可以在数组中的指定位置删除指定数量的元素,并添加任意元素。

示例:

执行后,此时数组的值为[3, 4]。

循环遍历(数组)

使用循环遍历可以访问数组所有的索引和值。

示例:

运行结果:

1
2
3

获取数组长度

返回该数组的元素数量。注意:该语句需要从“基于变量”中找到。

示例:

运行后,可以发现该数组的长度为4。

数组案例

下面是两个创建和使用数组的例子:

  1. 首先创建了一个数组并对其初始化,然后通过『在数组中删除和添加元素』来对数组指定索引位置的值进行删除,在原位添加新的数值。

    通过『向数组末尾添加元素』的办法来加入新的值:

    原来的数组元素为:1、2、3,经过上述操作后,运行时会输出:1、7、3、99

  2. 建立一个空的数组,为它添加元素、输出它的长度以及使用for循环遍历输出数组内容:

    运行结果:

    数组的长度是:5
    数组的索引是:0 当前索引对应的值是:1
    数组的索引是:1 当前索引对应的值是:2
    数组的索引是:2 当前索引对应的值是:3
    数组的索引是:3 当前索引对应的值是:4
    数组的索引是:4 当前索引对应的值是:5

简单表

简单表是一系列键和对应值的集合,或者说是键值对的集合,键和对应值是一一对应的关系。它和数组的最大区别是:数组是由整数下标索引的,而简单表可以用任何符合键类型的数据索引值。与数组一样,简单表也可以嵌套简单表。

在星火编辑器中,可以通过简单表来实现玩家存档、数据记录等操作。下面用简单表实现一个按下按键生成对应物品的例子:

首先创建一个简单表,并在游戏开始时初始化简单表的数据。为了实现按下按键生成不同物品的功能,需要将按键作为索引(键),物品数编ID作为值,保存在这张简单表中。这里可以用『设置简单表中元素的值』语句向简单表中添加对应的元素。

接下来新建一个触发器,需要通过键盘按键从简单表获取物品ID,再通过创建物品语句生成物品,并打印调试信息。

下面是调试结果(从左到右分别是按下E、Q、R的结果):