如何为现有命令创建别名?

时间:2019-08-16 10:54:06

标签: java minecraft minecraft-forge

因此,我正在制作一个Minecraft mod,该模块允许为现有命令(例如<TextView ... android:layout_width="0dp" ... /> /tp/spawnpoint等)创建别名,并在其中创建许多命令一个将由订单执行的命令,例如:

/setblock

我已经作为/alias add sun "time set day" "weather clear" 命令本身的基础了,但是我仍然不知道如何实现它的功能。

/alias

1 个答案:

答案 0 :(得分:0)

您需要做几件事:

  1. 所有已注册别名的列表
  2. 别名执行器,将在键入时执行别名命令
  3. 将别名命令注册到bukkit

以下是其中的一个示例:

  1. 别名列表
<div class="parent"><div class="child"></div></div>

<div class="other" style="max-width:50px"></div>

添加别名时,需要将其添加到别名的命令中:

HashMap<String, String> aliasList = new HashMap<String>;
  1. 别名执行器,将在键入时执行别名命令
aliasList.put(myAliasString, commandToReplace);
  1. 在命令输入时对其进行注册:
executeAlias(String alias, ICommandSender sender, String[] args) {
    if(aliasList.contains(alias) {
        String aliasedCommand = aliastList.get(alias);

        // Here you will need to convert the args array to a spaced string (if needed). 
        // Then send the command:
        Bukkit.getServer().dispatchCommand(sender, commandString);
    }
}