leaf_complex
我知道这是指令别名的文件夹
可是我想要这样
让/gamemode 1 (这里是变量)
变成/1 (这里是变量)
要怎么设置?
意思就是说怎么给指令别名设置变量

SumCraft
你仔细看下这个文件开头,会有一个网站,点击去就是用法

leaf_complex
xiazhen3938 发表于 2015-4-22 12:33
你仔细看下这个文件开头,会有一个网站,点击去就是用法

怎么弄?

SumCraft

http://wiki.bukkit.org/Commands.yml
这是个用法的网站

leaf_complex
xiazhen3938 发表于 2015-4-22 13:34
http://wiki.bukkit.org/Commands.yml
这是个用法的网站

看不懂
你能说说 各种$的意思吗?
什么$$1 $2

SumCraft
方式
描述
新的指令
config写法举例
添加一个执行/version的指令
在这个例子中我们添加"icanhasbukkit"来执行/version.
p.s. version指令同样有效
/icanhasbukkit
aliases:    icanhasbukkit:    - "version"


SumCraft

$$1 这些你直接看下面的例子,应该就能知道啥意思了,我没法表述出来。

jiuerd
$1是代表一个字符串,可以输入任何东西;
$$1代表这个一个命令必须的参数,比如玩家id;
如果在1后面加一个"-"的话就代表后面的全部内容都是$1或者$$1的内容;

还是以你的问题来说明吧;
这个是原来的命令  /gamemode [player] <1/0>
这里有2个参数,一个是玩家id,一个是1/0;
其中玩家id是可选的,不填就是对自己生效,1/0是必须的;
  1. aliases:
  2.     g:
  3.     - "gamemode $1 $2"
复制代码
这样子的话就是要求你输入/g $$1 $$2才会识别,使用的时候可以用/g jiuerd 1和/g jiuerd 0这种命令;
  1. aliases:
  2.     g:
  3.     - "gamemode $1 1"
复制代码
这样的话就只要输入/g jiuerd就可以等价/gamemode jiuerd 1了;但是你不能用/g jiuerd 0了;
  1. aliases:
  2.     g:
  3.     - "gamemode $1 $2"
复制代码
这个你还是能用/g jiuerd 1和/g jiuerd 0来输入命令,但是你也可以输入/g jiuerd jiuerd这种不符合gamemode命令参数的指令,虽然不会生效;
那么$1和$$1这种的差别在哪儿呢?差别就在自动补全以及显示可选参数;
使用$1的时候/g jiu的时候按Tab键是不会自动补全成jiuerd的;
这个例子的优势不明显,你换成/effect之后就知道了;
  1. aliases:
  2. g:
  3. - "gamemode $1-"
复制代码
还有这种偷懒型的,$1-代表从这里开始往后面的内容,就相当于把gamemode换成g而已,后面输入什么都不管,你可以随意输入,可以包含空格,实际使用一般是作为非参数的文字,比如ban指令的原因,msg指令的内容这中包含大量主动输入的内容.







jiuerd
jiuerd 发表于 2015-4-22 14:23
$1是代表一个字符串,可以输入任何东西;
$$1代表这个一个命令必须的参数,比如玩家id;
如果在1后面加一个"-" ...

才发现你是要/1这种...
这种是不可以的,因为你需要一个别名,而不是用"/"这个符号做别名,你可以做/1 1这种...虽然这种alias不符合别名的可识别性要求..
不过gamemode自带别名gm...


jiuerd
jiuerd 发表于 2015-4-22 14:23
$1是代表一个字符串,可以输入任何东西;
$$1代表这个一个命令必须的参数,比如玩家id;
如果在1后面加一个"-" ...

啊,我搞错了,原来的命令是gamemode <2/1/0> [player]
不过意思还是一样的,你把上面的$$1和$$2换一下位置就好了;

问答版不给修改真是不方便啊.