Skip to content

背包

背包可以用于存放用户的物品。

声明一个物品

你可以在 game.config.ts 中声明一个物品。修改其中的 config 变量:

typescript
export default Adv.defineConfig({
    // ... 其余属性
    items: {
        Water: {},
    },
});

items 字段用于声明物品。上述代码中,声明了一个 id 为 Water 的物品。请注意,id 不能为 id

物品的配置项

name

name 字段用于配置物品的名称。程序将以该字段所指示的名称展示给玩家。默认与 id 相同。

typescript
export default Adv.defineConfig({
    // ... 其余属性
    items: {
        Water: {
            name: '水',
        },
    },
});

在上面的例子中,在玩家眼中,这个物品叫水,而不是 Water

介绍字段

  • summary 用于使用一句话介绍这个物品。
  • desc 是使用一段话介绍这个物品的用法等等。允许使用 HTML。
  • lore 用来详细介绍这个物品。可以介绍这个物品的来源、背景等等。允许使用 HTML。
  • default 游戏开始时玩家拥有的的数量。
typescript
export default Adv.defineConfig({
    // ... 其余属性
    items: {
        Water: {
            name: '水',
            summary: '一瓶清澈透明的普通清水,可以解渴并恢复少量体力。',
            desc: '饮用后立即恢复 <b>15</b> 点生命值,并在接下来的 <i>30 秒</i> 内略微提升耐力回复速度。可在战斗中使用,但需要 <b>2 秒</b> 的饮用时间。',
            lore: '水是万物之源。在古老的创世神话中,第一位神明便是从一滴露水中诞生。这瓶水取自永歌森林深处的<b>月语泉</b>,传说在满月之夜饮用该泉水,能够听见精灵的低语。数百年来,冒险者们都会在远行前灌满一壶,作为旅途中最朴素的慰藉。然而也需警惕——在幽暗地域中,看似清澈的液体可能已被<b>暗影毒素</b>污染,饮用后会遭受持续的诅咒。',
        },
    },
});

事件

onUse

  • 触发时机:当物品被使用。
  • 参数
    • num:使用了多少个该物品。

若不填写或为 null,则表示不允许被使用。

onDiscard

  • 触发时机:当物品被丢弃。
  • 参数
    • num:丢弃了多少个该物品。

若不填写,则表示允许被丢弃,且不会有任何动作。请注意,这和 onUse 不一样。

若为 null,则表示不允许被丢弃。

物品的修改和查询

使用以下代码获得物品对象:

typescript
Adv.bag.[id];

以上代码会获取一个 number,标识该物品现存多少个。

使用以下代码改变物品数量:

typescript
Adv.bag.[id] = 10