本帖最后由 贰逼 于 2017-10-2 10:17 编辑
目前以OneCommand指令(简称OOC)制作模块为流行。编译成OneCommand是件易事,可以使用各种滤器或者生成软件进行编译;
然而为了学习其他指令制作这的方法或者想解析模块的各种指令,OneCommand有很费眼,由于模块指令众多,所以很难分离指令。
v0.4源码已公布:(提供给编程玩家作为技术参考)
源代码:http://pan.baidu.com/s/1eQNwgiI
源工程文件:http://pan.baidu.com/s/1pK0Zrnl
全部:http://pan.baidu.com/s/1o7sTMIm
pastebin:http://pastebin.com/B5h2hzyL
⊙熟悉界面
界面包含了:
三个部分

最新版本:
全部文件:
经本人多次实验各种OneCommand,此软件能正确运行,如有Bug请在本帖下方提出,感谢合作。
常见问题:
OOC编译器(非原创)CP to OneCommand
来自群组: Command Block Logic
目前以OneCommand指令(简称OOC)制作模块为流行。编译成OneCommand是件易事,可以使用各种滤器或者生成软件进行编译;
然而为了学习其他指令制作这的方法或者想解析模块的各种指令,OneCommand有很费眼,由于模块指令众多,所以很难分离指令。
本软件可以方便指令方块玩家进行提取OOC中的指令,并且进行分类,甚至解析计分板。
本软件考虑到了各种各样的OOC编译器的编译算法,进行了三次反编译算法革新(版本历史记录可见),
所以现在能完美反编译几乎所有OOC指令。
v0.4源码已公布:(提供给编程玩家作为技术参考)
源代码:http://pan.baidu.com/s/1eQNwgiI
源工程文件:http://pan.baidu.com/s/1pK0Zrnl
全部:http://pan.baidu.com/s/1o7sTMIm
pastebin:http://pastebin.com/B5h2hzyL
使用教程
(适用于v0.3版本以上)
⊙熟悉界面
界面包含了:
- OneCommand源指令
- 解析所有指令
- 分类与优化指令
三个部分
① 初步使用
Ⅰ 输入源指令
1.通过直接Ctrl+V 或者 “粘贴指令”按钮 来获取剪贴板中的OneCommand源指令
2.点击确定即可
Ⅱ 解析所有指令
1.点击“寻找‘所有指令’”按钮,等待一会,正在努力寻找
2.寻找完成后会提示消息,点击确定即可
3.单击指令可以获取其在源码中的位置
Ⅲ 优化与分类指令
1.点击“一件分化与优化所有解析出的指令”按钮,再点击确定即可
2.同样单击指令可以获取其位置
②复制与输出
Ⅰ 复制单指令
1.选中一条指令,点击“复制选中指令”按钮,再点击确定即可(所有指令列表均通用)
2.Ctrl+V或者右键+粘贴都可以输出指令
Ⅱ 复制多指令——所有指令
1.点击“复制‘所有指令’”,然后点击确定即可
2.Ctrl+V或者右键+粘贴都可以输出指令(此处复制也许指令有一定错误,所以推荐优化后再复制,优化按钮同样会优化所有指令部分)
Ⅲ 复制多指令——输出面板
1.分类(以文字输出列表演示)
灰色字部分提示点击分类名称获取分类指令,点击即可,同上输出方法。
2.所有效果指令
点击灰色字即可,同上输出方法
3.所有实意指令同理
Ⅳ 复制多指令——全部已分类优化指令
1.点击“将全部指令复制”按钮,再点击确定即可
2.Ctrl+V或者右键+粘贴都可以输出指令(此处复制无错误,且已分类,推荐)
Ⅴ 开启顺序模式
1.点击方框开启,确定即可
2.开启顺序模式后复制多指令有数字作为输出顺序,更加直观
3.再次点击取消后,点击确定

4.复制指令无输出顺序
③寻找功能
Ⅰ 获取寻找指令
1.选中指令后双击不仅会提示这段指令内容
2.还会被复制到寻找面板中
Ⅱ 使用寻找功能
1.假如选中了其他指令回不来了
2.点击寻找会在源指令回到寻找指令的位置
3."清空选中"会清空所有列表的选中项目
4.寻找功能亦可输入其他字符,用于寻找计分板名或者指令及任何其他内容
补充内容:
- 寻找到的所有指令包括单次执行指令和循环指令
- 文字效果指/say或者/tellraw内容,为模块附加输出
- 方块效果指/fill或者/setblock内容,为模块初始生成时单次指令,通常能生成模块外围
- 计分板添加为/scoreboard objectives add 指令
- 计分板列表为模块自带计分板
- 若实意指令中含有空白项或者非指令项,非本解析器Bug,而是作者自行添加的内容或者一些OOC生成器为了前后对应而添加内容,可手动删除。
- 对于OOCSS滤器能看见许多相对放置方块,那是因为此滤器提供整个复制区域的OneCommand,非针对于模块
下载地址:
解压文件获得文件夹,不要删除文件夹,运行exe文件即可最新版本:
全部文件:
历史记录:
v 0.4 - 修复了RichTextBox控件bug
v 0.3 - 修复bug,针对于几乎所有滤器生成器产生公共算法
v 0.2 - 修复bug,针对FallingSand滤器和MineCart滤器
v 0.1 - 建立雏形,针对单个滤器
经本人多次实验各种OneCommand,此软件能正确运行,如有Bug请在本帖下方提出,感谢合作。
常见问题:
OOC编译器(非原创)CP to OneCommand
来自群组: Command Block Logic
我不会OneCommand,所以有了软件也看不懂QAQ
为什么不开提示这个
{:10_503:}

{:10_503:}

本帖最后由 姚氏帅哥 于 2015-6-21 16:29 编辑
国内终于有个关于OOC的软件了!
国内终于有个关于OOC的软件了!
MsYqgzt 发表于 2015-6-21 16:25
为什么不开提示这个
查看c:\windows\system32\目录下是否存在richtx32.ocx,
若存在存在的话,从开始菜单点“运行”,输入cmd,按回车,调出命令行界面,输入:regsvr32 richtx32.ocx 进行注册。
若不存在,就从网上或其他地方找一个richtx32.ocx,复制到c:\windows\system32\
基本上机器都不自带richtx32.ocx的,VB6的话你可以把ocx放进资源文件
修改程序,在调用richtextbox控件的窗体加载之前把ocx释放到system32
不用判定X86/x64问题,在X64系统下对system32的操作会自动重定向到syswow64
最后,,VB党好评,升级.Net更好233~
修改程序,在调用richtextbox控件的窗体加载之前把ocx释放到system32
不用判定X86/x64问题,在X64系统下对system32的操作会自动重定向到syswow64
最后,,VB党好评,升级.Net更好233~
建议折叠图片
怎么编译成OneCommand
求推荐生成软件
求推荐生成软件
1378495772 发表于 2015-6-21 22:30
怎么编译成OneCommand
求推荐生成软件
添加在了本贴的最后
还不错的
经常看到国外玩家玩ooc 可是不知道怎么回事 涨姿势了
能不能生成OneCommand。。。
siiftun1857 发表于 2015-6-22 12:05
能不能生成OneCommand。。。
本帖最后给出了滤器
這是什麼有趣的東西?打開時出現了程序錯誤


q820634195 发表于 2015-6-26 11:30
打開時出現了程序錯誤
按照常见问题的解决方式解决
为什么没法替换指令
我可以要一下源代码吗?
林扬骐 发表于 2015-8-16 09:54
总算是翻到你的滤器了,我有新的单指令法,不知道用不用得了滤器
3秒单指令
http://www.mcbbs.net/thread-4 ...
此贴是反编译器ok?
林扬骐 发表于 2015-8-16 10:43
看上去挺高级的,就是one_command方法老了
反正这个编译器不管什么编译方法都能反编译
贰逼 发表于 2015-6-21 16:29
查看c:\windows\system32\目录下是否存在richtx32.ocx,
若存在存在的话,从开始菜单点“运行”,输入cmd ...
为什么我装了这个还是提示与window版本不兼容,难道w10不能用吗?
42142特防 发表于 2015-8-16 12:10
为什么我装了这个还是提示与window版本不兼容,难道w10不能用吗?
vb确实win10有问题,不过点击“更多信息”后就有"仍要运行"
点击之后即可。
需要注意大部分win7 xp可以直接运行;
小部分win8 win10不包含richtextbox控件,可以手动下载,在v0.4中打包了了richtextbox控件,接着按照<常见问题>解决即可
贰逼 发表于 2015-8-16 13:46
vb确实win10有问题,不过点击“更多信息”后就有"仍要运行"
点击之后即可。
需要注意大部分win7 xp可以直 ...
现在可以了,但有些指令为何无法分离?
42142特防 发表于 2015-8-17 18:11
现在可以了,但有些指令为何无法分离?
源指令发过来
真心表示不错 继续努力。
贰逼 发表于 2015-8-17 18:24
源指令发过来
summon FallingSand ~ ~4 ~ {Time:1,Block:redstone_block,Riding:{id:FallingSand,Time:1,Block:command_block,Riding:{id:FallingSand,Time:1,Block:command_block,Riding:{id:FallingSand,Time:1,Block:command_block,Riding:{id:FallingSand,Time:1,Block:command_block,Riding:{id:FallingSand,Time:1,Block:command_block,Riding:{id:FallingSand,Time:1,Block:command_block,Riding:{id:FallingSand,Time:1,Block:command_block,Riding:{id:FallingSand,Time:1,Block:command_block,Riding:{id:FallingSand,Time:1,Block:command_block,Riding:{id:FallingSand,Time:1,Block:command_block,Riding:{id:FallingSand,Time:1,Block:command_block,Riding:{id:FallingSand,Time:1,Block:command_block,Riding:{id:FallingSand,Time:1,Block:redstone_block,Riding:{id:FallingSand,Time:1,Block:command_block,TileEntityData:{Command:/gamerule commandBlockOutput false}}},TileEntityData:{Command:/kill @e[name=Player,type=ArmorStand]}},TileEntityData:{Command:/summon ArmorStand ~5 ~-3.5 ~ {NoGravity:1,CustomName:Player,Invisible:1,Invincible:1}}},TileEntityData:{Command:/execute @e[name=Player,type=ArmorStand] ~ ~ ~ /fill ~ ~-1 ~2 ~4 ~3 ~-2 wool 0 outline}},TileEntityData:{Command:/execute @e[name=Player,type=ArmorStand] ~ ~ ~ /fill ~ ~ ~2 ~4 ~2 ~-2 barrier 0 replace wool 0}},TileEntityData:{Command:/execute @e[name=Player,type=ArmorStand] ~ ~ ~ /fill ~1 ~ ~-1 ~3 ~3 ~1 air 0}},TileEntityData:{Command:/scoreboard objectives add Record dummy}},TileEntityData:{Command:/scoreboard objectives add Recorder dummy}},TileEntityData:{Command:/scoreboard teams add Record}},TileEntityData:{Command:summon FallingSand ~ ~-4 ~ {Time:1,Block:redstone_block,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,TileEntityData:{Command:/execute @e[name=Player,type=ArmorStand] ~1 ~ ~1 summon FallingSand ~ ~4 ~ {Time:0,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,TileEntityData:{Command:/fill ~ ~ ~-1 ~2 ~2 ~-1 redstone_block}},TileEntityData:{Command:/execute @e[type=Zombie,name=Player,score_Record=1] ~ ~ ~ /scoreboard players set @e[type=ArmorStand,name=Player] Record 0}},TileEntityData:{Command:/execute @e[type=Zombie,name=Player,score_Record=1] ~ ~ ~ /scoreboard players operation @e[type=Zombie,name=Player] Recorder = @e[type=ArmorStand,name=Player] Record}}}}},TileEntityData:{Command:/execute @e[name=Player,type=ArmorStand] ~2 ~ ~1 summon FallingSand ~ ~4 ~ {Time:0,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,TileEntityData:{Command:/execute @a[team=Record] ~ ~ ~ /scoreboard players add @e[type=ArmorStand,name=Recorder] Record 1}},TileEntityData:{Command:/execute @e[type=Zombie,name=Player,score_Record=1] ~ ~ ~ /execute @e[name=Recorder,type=ArmorStand] ~ ~ ~ /scoreboard players add @e[type=ArmorStand,name=Player] Record 1}},TileEntityData:{Command:/scoreboard players remove @e[type=Zombie,name=Player] Recorder 1}}}}},TileEntityData:{Command:/execute @e[name=Player,type=ArmorStand] ~3 ~ ~1 summon FallingSand ~ ~4 ~ {Time:0,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,TileEntityData:{Command:/scoreboard players add @e[type=Zombie,name=Player] Record 1}},TileEntityData:{Command:/execute @e[type=Zombie,name=Player,score_Record=1] ~ ~ ~ /scoreboard players operation @e[type=ArmorStand,name=Recorder] Record -= @e[type=ArmorStand,name=Player] Record}},TileEntityData:{Command:/kill @e[type=Zombie,name=Player,score_Recorder=0]}}}}},TileEntityData:{Command:/execute @e[name=Player,type=ArmorStand] ~1 ~ ~-1 summon FallingSand ~ ~4 ~ {Time:0,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,TileEntityData:{Command:/fill ~ ~ ~1 ~2 ~2 ~1 air}},TileEntityData:{Command:/execute @r[type=Zombie,name=Player] ~ ~ ~ /scoreboard players add @e[type=ArmorStand,name=Recorder] Record 1}},TileEntityData:{Command:/execute @e[type=Player,team=Record] ~ ~ ~ /tp @e[type=ArmorStand,name=Recorder,score_Record=1] @e[type=Player,team=Record]}}}}},TileEntityData:{Command:/execute @e[name=Player,type=ArmorStand] ~2 ~ ~-1 summon FallingSand ~ ~4 ~ {Time:0,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,TileEntityData:{Command:/execute @a[team=Record] ~ ~ ~ /summon ArmorStand ~ ~ ~ {Marker:1,Invisible:1,Small:1,NoGravity:1,CustomName:Recorder,Marker:1}}},TileEntityData:{Command:/tp @e[type=Zombie,name=Player] @e[type=ArmorStand,name=Recorder,score_Record_min=1,score_Record=1]}},TileEntityData:{Command:/execute @e[type=ArmorStand,name=Player] ~-1 ~-1 ~ /setblock ~ ~ ~ minecraft:chest 4 keep {Items:[{Slot:0,id:written_book,Count:1,tag:{author:BlackwoodHD,title:Game Recorder,pages:[{text:'Hello ',extra:[{selector:'@p',extra:[{text:'nnThis is then',extra:[{text:'[Game Recorder]',color:'dark_red',extra:[{text:'nnI hope you enjoy the functions of this invention!',color:'black'}]}]}]}]},{text:'[Start Recording]n',color:'dark_green',hoverEvent:{action:'show_text',value:{text:'This will start the recording!'}},clickEvent:{action:'run_command',value:'/scoreboard teams join Record @p'},extra:[{text:'[Stop Recording]n',color:'dark_red',hoverEvent:{action:'show_text',value:{text:'This will stop the recording!'}},clickEvent:{action:'run_command',value:'/scoreboard teams leave @p'},extra:[{text:'nnPlease stop the recording before activating this:nn',color:'black',hoverEvent:{action:'show_text',value:{text:'Just klick on Stop Recording!'}},extra:[{text:'[Start Replay]n',color:'dark_purple',hoverEvent:{action:'show_text',value:{text:'Just start when you stopped recording!'}},clickEvent:{action:'run_command',value:'/summon Zombie ~ ~ ~ {CustomName:Player,Invulnerable:1,NoAI:1,Fire:-10000}'},extra:[{text:'[Clear Recording]',color:'dark_blue',clickEvent:{action:'run_command',value:'/kill @e[type=ArmorStand,name=Recorder]'}}]}]}]}]}]}}]}}}}}},TileEntityData:{Command:/execute @e[name=Player,type=ArmorStand] ~3 ~ ~-1 summon FallingSand ~ ~4 ~ {Time:0,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,TileEntityData:{Command:/execute @e[type=Zombie,name=Player,score_Record_min=3] ~ ~ ~ /kill @e[type=ArmorStand,name=Recorder,score_Record_min=2]}},TileEntityData:{Command:/execute @a[team=Record] ~ ~ ~ /kill @e[type=Zombie,name=Player]}},TileEntityData:{Command:/entitydata @e[type=Zombie,name=Player] {Fire:-100}}}}}},TileEntityData:{Command:/execute @e[name=Player,type=ArmorStand] ~1 ~ ~ summon FallingSand ~ ~5 ~ {Time:1,Block:redstone_block}}},TileEntityData:{Command:/execute @e[name=Player,type=ArmorStand] ~1 ~ ~ summon FallingSand ~ ~10 ~ {Block:command_block,TileEntityData:{Command:/execute @e[name=Player,type=ArmorStand] ~ ~ ~ /fill ~ ~3 ~2 ~4 ~3 ~-2 wool 0 outline},Time:1}}},TileEntityData:{Command:/execute @e[name=Player,type=ArmorStand] ~ ~ ~ /setblock ~-1 ~ ~ minecraft:wall_sign 4 replace {Text2:{text:'[Destroy]',color:dark_red,clickEvent:{action:run_command,value:'/fill ~ ~-1 ~2 ~5 ~3 ~-2 air'}}}}},TileEntityData:{Command:/fill ~ ~-9 ~ ~1 ~3 ~ air 0 replace}},TileEntityData:{Command:/fill ~1 ~-10 ~ ~1 ~1 ~ redstone_block 0 replace}}}}},TileEntityData:{Command:/execute @e[name=Player,type=ArmorStand] ~ ~ ~ /setblock ~-1 ~1 ~ minecraft:wall_sign 4 replace {Text2:{text:'[Game Recorder]',color:green},Text3:{text:'by BlackwoodHD'}}}},TileEntityData:{Command:/fill ~ ~-12 ~ ~1 ~3 ~ air 0 replace}},TileEntityData:{Command:/fill ~1 ~-13 ~ ~1 ~1 ~ redstone_block 0 replace}}}
32位和64位系统都把richtx32.ocx放入system32文件夹中,64位系统不要放入SysWOW64文件夹中
然后都输入regsvr32 richtx32.ocx就可以了(用管理员模式启动cmd)
如果加入修改命令的功能的话就更完美了
然后都输入regsvr32 richtx32.ocx就可以了(用管理员模式启动cmd)
如果加入修改命令的功能的话就更完美了
或许可以用工具把ocx文件打包进exe,或者在程序内dir richbox控件的ocx,若不存在则运行cmd进行自动注册
贰逼 发表于 2015-8-16 11:22
反正这个编译器不管什么编译方法都能反编译
为什么这条指令不能反编译,害我懒癌晚期病人要用记事板手动反编译:
summon FallingSand ~ ~4 ~ {Time:1,Block:redstone_block,Riding:{id:FallingSand,Time:1,Block:command_block,Riding:{id:FallingSand,Time:1,Block:command_block,Riding:{id:FallingSand,Time:1,Block:command_block,Riding:{id:FallingSand,Time:1,Block:command_block,Riding:{id:FallingSand,Time:1,Block:command_block,Riding:{id:FallingSand,Time:1,Block:command_block,Riding:{id:FallingSand,Time:1,Block:command_block,Riding:{id:FallingSand,Time:1,Block:command_block,Riding:{id:FallingSand,Time:1,Block:command_block,Riding:{id:FallingSand,Time:1,Block:command_block,Riding:{id:FallingSand,Time:1,Block:command_block,Riding:{id:FallingSand,Time:1,Block:command_block,Riding:{id:FallingSand,Time:1,Block:redstone_block,Riding:{id:FallingSand,Time:1,Block:command_block,TileEntityData:{Command:/gamerule commandBlockOutput false}}},TileEntityData:{Command:/kill @e[name=Player,type=ArmorStand]}},TileEntityData:{Command:/summon ArmorStand ~5 ~-3.5 ~ {NoGravity:1,CustomName:Player,Invisible:1,Invincible:1}}},TileEntityData:{Command:/execute @e[name=Player,type=ArmorStand] ~ ~ ~ /fill ~ ~-1 ~2 ~4 ~3 ~-2 wool 0 outline}},TileEntityData:{Command:/execute @e[name=Player,type=ArmorStand] ~ ~ ~ /fill ~ ~ ~2 ~4 ~2 ~-2 barrier 0 replace wool 0}},TileEntityData:{Command:/execute @e[name=Player,type=ArmorStand] ~ ~ ~ /fill ~1 ~ ~-1 ~3 ~3 ~1 air 0}},TileEntityData:{Command:/scoreboard objectives add Record dummy}},TileEntityData:{Command:/scoreboard objectives add Recorder dummy}},TileEntityData:{Command:/scoreboard teams add Record}},TileEntityData:{Command:summon FallingSand ~ ~-4 ~ {Time:1,Block:redstone_block,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,TileEntityData:{Command:/execute @e[name=Player,type=ArmorStand] ~1 ~ ~1 summon FallingSand ~ ~4 ~ {Time:0,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,TileEntityData:{Command:/fill ~ ~ ~-1 ~2 ~2 ~-1 redstone_block}},TileEntityData:{Command:/execute @e[type=Zombie,name=Player,score_Record=1] ~ ~ ~ /scoreboard players set @e[type=ArmorStand,name=Player] Record 0}},TileEntityData:{Command:/execute @e[type=Zombie,name=Player,score_Record=1] ~ ~ ~ /scoreboard players operation @e[type=Zombie,name=Player] Recorder = @e[type=ArmorStand,name=Player] Record}}}}},TileEntityData:{Command:/execute @e[name=Player,type=ArmorStand] ~2 ~ ~1 summon FallingSand ~ ~4 ~ {Time:0,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,TileEntityData:{Command:/execute @a[team=Record] ~ ~ ~ /scoreboard players add @e[type=ArmorStand,name=Recorder] Record 1}},TileEntityData:{Command:/execute @e[type=Zombie,name=Player,score_Record=1] ~ ~ ~ /execute @e[name=Recorder,type=ArmorStand] ~ ~ ~ /scoreboard players add @e[type=ArmorStand,name=Player] Record 1}},TileEntityData:{Command:/scoreboard players remove @e[type=Zombie,name=Player] Recorder 1}}}}},TileEntityData:{Command:/execute @e[name=Player,type=ArmorStand] ~3 ~ ~1 summon FallingSand ~ ~4 ~ {Time:0,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,TileEntityData:{Command:/scoreboard players add @e[type=Zombie,name=Player] Record 1}},TileEntityData:{Command:/execute @e[type=Zombie,name=Player,score_Record=1] ~ ~ ~ /scoreboard players operation @e[type=ArmorStand,name=Recorder] Record -= @e[type=ArmorStand,name=Player] Record}},TileEntityData:{Command:/kill @e[type=Zombie,name=Player,score_Recorder=0]}}}}},TileEntityData:{Command:/execute @e[name=Player,type=ArmorStand] ~1 ~ ~-1 summon FallingSand ~ ~4 ~ {Time:0,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,TileEntityData:{Command:/fill ~ ~ ~1 ~2 ~2 ~1 air}},TileEntityData:{Command:/execute @r[type=Zombie,name=Player] ~ ~ ~ /scoreboard players add @e[type=ArmorStand,name=Recorder] Record 1}},TileEntityData:{Command:/execute @e[type=Player,team=Record] ~ ~ ~ /tp @e[type=ArmorStand,name=Recorder,score_Record=1] @e[type=Player,team=Record]}}}}},TileEntityData:{Command:/execute @e[name=Player,type=ArmorStand] ~2 ~ ~-1 summon FallingSand ~ ~4 ~ {Time:0,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,TileEntityData:{Command:/execute @a[team=Record] ~ ~ ~ /summon ArmorStand ~ ~ ~ {Marker:1,Invisible:1,Small:1,NoGravity:1,CustomName:Recorder,Marker:1}}},TileEntityData:{Command:/tp @e[type=Zombie,name=Player] @e[type=ArmorStand,name=Recorder,score_Record_min=1,score_Record=1]}},TileEntityData:{Command:/execute @e[type=ArmorStand,name=Player] ~-1 ~-1 ~ /setblock ~ ~ ~ minecraft:chest 4 keep {Items:[{Slot:0,id:written_book,Count:1,tag:{author:"BlackwoodHD",title:"Game Recorder",pages:["{text:'Hello ',extra:[{selector:'@p',extra:[{text:'\\n\\nThis is the\\n',extra:[{text:'[Game Recorder]',color:'dark_red',extra:[{text:'\\n\\nI hope you enjoy the functions of this invention!',color:'black'}]}]}]}]}","{text:'[Start Recording]\\n',color:'dark_green',hoverEvent:{action:'show_text',value:{text:'This will start the recording!'}},clickEvent:{action:'run_command',value:'/scoreboard teams join Record @p'},extra:[{text:'[Stop Recording]\\n',color:'dark_red',hoverEvent:{action:'show_text',value:{text:'This will stop the recording!'}},clickEvent:{action:'run_command',value:'/scoreboard teams leave @p'},extra:[{text:'\\n\\nPlease stop the recording before activating this:\\n\\n',color:'black',hoverEvent:{action:'show_text',value:{text:'Just klick on Stop Recording!'}},extra:[{text:'[Start Replay]\\n',color:'dark_purple',hoverEvent:{action:'show_text',value:{text:'Just start when you stopped recording!'}},clickEvent:{action:'run_command',value:'/summon Zombie ~ ~ ~ {CustomName:Player,Invulnerable:1,NoAI:1,Fire:-10000}'},extra:[{text:'[Clear Recording]',color:'dark_blue',clickEvent:{action:'run_command',value:'/kill @e[type=ArmorStand,name=Recorder]'}}]}]}]}]}"]}}]}}}}}},TileEntityData:{Command:/execute @e[name=Player,type=ArmorStand] ~3 ~ ~-1 summon FallingSand ~ ~4 ~ {Time:0,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,Riding:{id:FallingSand,Time:1,TileID:137,TileEntityData:{Command:/execute @e[type=Zombie,name=Player,score_Record_min=3] ~ ~ ~ /kill @e[type=ArmorStand,name=Recorder,score_Record_min=2]}},TileEntityData:{Command:/execute @a[team=Record] ~ ~ ~ /kill @e[type=Zombie,name=Player]}},TileEntityData:{Command:/entitydata @e[type=Zombie,name=Player] {Fire:-100}}}}}},TileEntityData:{Command:/execute @e[name=Player,type=ArmorStand] ~1 ~ ~ summon FallingSand ~ ~5 ~ {Time:1,Block:redstone_block}}},TileEntityData:{Command:/execute @e[name=Player,type=ArmorStand] ~1 ~ ~ summon FallingSand ~ ~10 ~ {Block:command_block,TileEntityData:{Command:/execute @e[name=Player,type=ArmorStand] ~ ~ ~ /fill ~ ~3 ~2 ~4 ~3 ~-2 wool 0 outline},Time:1}}},TileEntityData:{Command:/execute @e[name=Player,type=ArmorStand] ~ ~ ~ /setblock ~-1 ~ ~ minecraft:wall_sign 4 replace {Text2:"{text:'[Destroy]',color:dark_red,clickEvent:{action:run_command,value:'/fill ~ ~-1 ~2 ~5 ~3 ~-2 air'}}"}}},TileEntityData:{Command:/fill ~ ~-9 ~ ~1 ~3 ~ air 0 replace}},TileEntityData:{Command:/fill ~1 ~-10 ~ ~1 ~1 ~ redstone_block 0 replace}}}}},TileEntityData:{Command:/execute @e[name=Player,type=ArmorStand] ~ ~ ~ /setblock ~-1 ~1 ~ minecraft:wall_sign 4 replace {Text2:"{text:'[Game Recorder]',color:green}",Text3:"{text:'by BlackwoodHD'}"}}},TileEntityData:{Command:/fill ~ ~-12 ~ ~1 ~3 ~ air 0 replace}},TileEntityData:{Command:/fill ~1 ~-13 ~ ~1 ~1 ~ redstone_block 0 replace}}}
























