Skip to content

id列表与enums

有些人装了一些模组,模组新增了东西时用命令助手里没有,很麻烦

今天就来解决这个问题!

首先,我们要知道id列表怎么添加

  • idlist:自定义指令 格式:idlist:{}

我们先要定义一个id列表

id列表的定义格式是:

json
{
    "name": "名称",
    "list": "类型"
}

常见的id列表值包括:

  • "block":所有方块ID
  • "item":所有物品ID
  • "entity":所有实体ID
  • "sound":所有音效ID
  • "particle":所有粒子ID
  • "animation":所有动画ID
  • "loot_table":所有战利品表ID

比如这样:

json
{
    "idlist":"block","item","entity","sound","particle","animation","loot_table"]
}

如何添加 enums

  • enums:自定义指令 格式:enums:{}

给一个示例:

json
{
    "enums": {
        "block": {
            "minecraft:stone": "石头" // 这里是添加的东西,格式是"id":"name"
        }
	//  "xxx":{"xxx":"xxx"}
    }
}

最后,我们来看看怎么用

还记的这个吗:

参数类型作用示例
selector选择玩家或实体。{"type": "selector", "name": "目标", "target": "player"}
string输入字符串,可带自动补全。{"type": "string", "name": "物品ID", "suggestion": "block"}
int / uint输入整数/无符号整数。{"type": "int", "name": "数量"}
float输入浮点数。{"type": "float", "name": "时间"}
position输入坐标。{"type": "position", "name": "位置"}
enum关键类型,从预定义的下拉菜单中选择。{"type": "enum", "name": "游戏模式", "list": "gamemode"}
plain显示固定文本(非输入)。{"type": "plain", "name": "kill", "prompt": "击杀"}
rawtext / rawjson输入原始文本或JSON文本。{"type": "rawtext", "name": "消息"}

这里的enum和string就有用了

大家可以自己看一下

例如:

json
{
	"commands":{
		"awa":{
			"description":"给玩家发奖励",
			"parameters":{
				"default":{
					"params":{
						{
							"type":"enum",
							"name":"奖励等级",
							"list":{
								"level1":"一级奖励",
								"level2":"二级奖励",
								"level3":"三级奖励"
							}
						}
					}
				}
			}
		}
	}
}
本教程 by 地灯dideng