docs-test

ScriptAPIを使ったアドオンの作り方

manifest.jsonを用意

manifest.json
1{
2  "format_version": 2,
3  "header": {
4    "name": "ScriptAPI サンプル",
5    "description": "サンプルです。",
6    "uuid": "<生成したUUID>",
7    "version": [ 1, 0, 0 ],
8    "min_engine_version": [ 1, 20, 30 ]
9  },
10  "modules": [
11    {
12      "version": [ 1, 0, 0 ],
13      "type": "data",
14      "uuid": "<生成したUUID>",
15      "description": "data module"
16    },
17    {
18      "version": [ 1, 0, 0 ],
19      "type": "script",
20      "language": "javascript",
21      "entry": "scripts/main.js", // 読み込むファイルへのパス
22      "uuid": "<生成したUUID>",
23      "description": "script module"
24    }
25  ],
26  "dependencies": [ // 使うモジュールを指定する
27    {
28      "module_name": "@minecraft/server",
29      "version": "1.5.0"
30    }
31  ]
32}

コードを書く

@minecraft/server 1.5.0以上で動きます

scripts/index.js
1import { world } from "@minecraft/server"; 
2
3world.afterEvents.itemUse.subscribe(event => {
4  const { itemStack, source } = event;
5  
6  if (itemStack.typeId === "minecraft:stick") {
7    source.runCommand("give @s diamond");
8  }
9  
10  if (itemStack.typeId === "minecraft:iron_sword") {
11    source.runCommand("effect @s speed 120 1 true");
12  }
13});

Edit on Github