本帖最后由 贰逼 于 2018-10-13 23:09 编辑

项目已弃坑..除了实体选择器能用请搜索SPU

1.13命令迎来了大变革:1.13指令更新列表
修改的内容几乎涵盖了所有指令,包括选择器、方块、物品格式的大改、execute等指令格式的更新
为应对指令的更新,我编写了一个'CommandUpdate'类库,其中**了一套命令转化方法
目前已经开源:https://github.com/tremblestarman/MinecraftCommandUpdate
(使用LGPL3.0协议)
dll下载地址:http://pan.baidu.com/s/1jIacsGA

同时还编写了一款配套的应用程序'Commandto1.13'
exe下载地址:http://pan.baidu.com/s/1miSMU6G

具体使用方法参照下方
目前暂不支持1.12NBT格式升级


Commandto1.13


操作方法:

可操作文件:.mcfunction .txt .pcb
  • 支持批量操作选中文件夹中所有可操作文件,也就是说你可以直接选中一个functions文件夹,将其中所有指令一键升级至1.13版本。
  • 你还可以使用mcedit导出游戏中指令方块里的指令到.txt,通过这个软件升级其中的指令到1.13版本。
  • 对于曾经保存的.pcb文件,你也可以使用本软件升级其中minecraft语法的指令,并在游戏内更新OOC。
    pcb下载地址:http://www.mcbbs.net/thread-533943-1-1.html


CommandUpdate类库


类库**了一套完整的方法,除了支持升级1.11+升级至1.13,还支持1.11-升级至1.11,还可以无视版本直接升级至1.13
使用方法详见https://github.com/tremblestarman/MinecraftCommandUpdate,下方**一些说明:

首先使用命名空间
  1. using CommandUpdate;
复制代码

关于1.13升级
  • 单个指令升级:
  1. CommandUpgrade.to1_13Command.CommandConvert(string input)
复制代码
效果
  1. /execute @r[score_good_min=1] ~ ~ ~ say hi
  2. ->
  3. execute as @a[score_good=1..,sort=random] at @s ~ ~ ~ then say hi
复制代码
  • 多个指令批量升级:
  1. CommandUpgrade.to1_13Command.BatchConvert(string input)
复制代码
效果
  1. /execute @r[score_good_min=1] ~ ~ ~ say hi
  2. scoreboard players operation @a[c=1,m=2] score1 = @e[x=0,y=0,z=0,r=1] score2
  3. ->
  4. execute as @a[score_good=1..,sort=random] at @s ~ ~ ~ then say hi
  5. scoreboard players operation @a[gamemode=adventure,limit=1] score1 = @e[distance=..1,x=0.5,z=0.5,y=0] score2
复制代码
  • 方块格式转化:
  1. CommandUpgrade.to1_13Command.BlockCombine(string blockID, string blockData, string blockNBT)
复制代码
效果
  1. blockID = minecraft:chest, blockData = facing=north, blockNBT = {Items:[{Slot:0b,id:"minecraft:apple",Count:1b,Damage:0s}]}
  2. ->
  3. minecraft:chest[facing=north]{Items:[{Slot:0b,id:"minecraft:apple",Count:1b,Damage:0s}]}
复制代码
  • 物品格式转化:
  1. CommandUpgrade.to1_13Command.ItemCombine(string itemID, string itemData, string itemNBT)
复制代码
效果
  1. itemID = minecraft:apple, itemData = 0, itemNBT = {display:{Name:"my apple"}}
  2. ->
  3. minecraft:apple{display:{Name:"my apple"},Damage:0s}
复制代码
  • 选择器格式转化:
  1. CommandUpgrade.to1_13Command.EntitySelector(string entitySelector, string entityNBT)
复制代码
效果
  1. entitySelector = @e[type=sheep,name=jeb_,score_health_min=1,score_health=7,c=1], entityNBT = {OnGround:1b}
  2. ->
  3. @e[score_health=1..7,limit=1,name="jeb_",type=sheep,nbt={OnGround:1b}]
复制代码

关于1.11升级
  • 单个指令升级:
  1. CommandUpgrade.to1_11Command.CommandConvert(string input)
复制代码
效果
  1. testfor @e[type=Armorstand]
  2. ->
  3. testfor @e[type=armor_stand]
复制代码
多个指令批量升级:
  1. CommandUpgrade.to1_11Command.BatchConvert(string input)
复制代码
效果
  1. testfor @e[type=Armorstand]
  2. testfor @e[type=Sheep]
  3. ->
  4. testfor @e[type=armor_stand]
  5. testfor @e[type=sheep]
复制代码

关于指令直接升级
  • 无论版本,直接指令升级至最新(前一个是单个指令,后一个是批量):
  1. CommandUpgrade.helicopterCommand.CommandConvert(string input)
  2. CommandUpgrade.helicopterCommand.BatchConvert(string input)
复制代码



历史更新及不支持内容

目前类库和软件都在持续追踪指令更新中...
最后更新 9.27版本