导读:你好,minecraft中可以用testfor命令来实现你想要的效果在命令方块中输入并连上高频: testfor @a[score_计分板名称_min=特定分值]再在这个命令方块的旁边一个放一个红石比较器,如果满足计分板分值大于等于特定分值
你好,minecraft中可以用testfor命令来实现你想要的效果
在命令方块中输入并连上高频:
testfor @a[score_计分板名称_min=特定分值]
再在这个命令方块的旁边一个放一个红石比较器,如果满足计分板分值大于等于特定分值,那么比较器就会输出红石信号。
例:
有个计分板名字叫 a ,那么输入 testfor @a[score_a_min=1] 并按照上面的方法,当计分板a的分值大于等于1时,就会输出红石信号。
摆放: (高频也可以换成2漏斗+比较器)
这时我将分数设置为1,便有红石信号输出了
一、利用MathRandom()方法来生成随机数。
在Java语言中生成随 机数相对来说比较简单,因为有一个现成的方法可以使用。在Math类中,Java语言提供了一个叫做random的方法。通过这个方法可以让系统产生随机 数。不过默认情况下,其产生的随机数范围比较小,为大于等于0到小于1的double型随机数。虽然其随机数产生的范围比较小,不能够满足日常的需求。如 日常工作中可能需要产生整数的随机数。其实,只要对这个方法进行一些灵活的处理,就可以获取任意范围的随机数。
如我们可以先通过 random方法生成一个随机数,然后将结果乘以10。此时产生的随机数字即为大于等于0小于10的数字。然后再利用Int方法进行转换(它会去掉小数掉 后面的数字,即只获取整数部分,不是四舍五入)。最后即可获取一个0到9的整数型随机数字。其实现方法很简单,就是对原有的random方法按照如下的格 式进行变型:(int)(MathRandom()10)即可。其实我们还可以对这个方法进行扩展,让其产生任意范围内的随机数。至需要将这个10换 成n即可,如改为(int)(MathRandom()n)。此时应用程序就会产生一个大于等于0小与n之间的随机数。如将n设置为5,那么其就会产 生一个0到5之间的整数型的随机数。如果将这个写成一个带参数的方法,那么只要用户输入需要生成随机数的最大值,就可以让这个方法来生成制定范围的随机 数。在Java中定义自己的工具库
有时候程序员可能需要生成一个指定范围内的随机偶数或者奇数。此时是否可以通过这个方法来实现呢 答案是肯定的。如现在程序要需要生成一个1-100范围内的偶数。此时该如何实现首先,需要生成一个0到99之内的随机数(至于这里为什么是99,大家 耐心看下去就知道原因了)。要实现这个需求,很简单吧,只要通过如下语句就可以实现: i=1+(int)(MathRandom()100)。其中(int)(MathRandom()99)产生0到99的整数型随机数。然后再加 上1就是产生1到100之间的随机整数。然后将产生的随机数赋值给变量i。但是此时其产生的随机数即有偶数,又有奇数。而现在程序员需要的是一个随机的偶 数。那么我们可以在后面加上一个if判断语句。将这个随机数除以2,如果没有余数的话(或者余数为0)则表明这个随机数是偶数,直接返回即可。如果其返回 的余数不为零,那么就表明其是奇数,我们只要加上1就变为了偶数,返回即可。注意,在上面的随机数生成中,笔者采用的范围是0到99,然后再加上1让其变 为1到100的随机数。最后的结果就是生成1到100之间的随机偶数。其实,如果要范围随机奇数的话,至需要对上面的语句进行稍微的修改即可。Java: 改变你我的世界
假设现在用户想生成一个任意范围内的奇数或者偶数,能够实现吗假设现在用户想实现一个m到n之间的任意偶数(其中m
可见虽然random方法其自身产生的随机数有比较严格的范围限制。但是只要对其进行合理的转换,程序员仍然可以采用这个方法产生用户所需要的随机数据。
二、通过Random类来生成随机数。
在Java语言中,除了可以通过random 方法来产生随机数之外,还可以通过一个random类来产生随机数。程序开发人员可以通过实例化一个Random对象来创建一个随机数的生成器。如 Random i=new Random()。通过这条语句就利用了Random类创建了一个随机数的生成器。不过以这种方法创建随机数时,与采用Random方法产生随机数的机制 不同。利用现在这种方式实例化对象时,Java编译器会以系统当前的时间作为随机数生成器的种子。由于时间时时刻刻在变化的。若以这个时间作为生成器的种 子,就可以保证生成的随机数真的是随机的,其生成的随机数重复率会大大的降低。
利用这种方法其比较方便。如可以利用提供的关键字,让 程序返回一个随机的整数(采用int nextInt(10))等等。不过其返回控制要比Random方法困难一点。如现在需要系统提供一个10到50之间的随机奇数, 利用这个Random类就无法完成。也就是说,利用这个Random类来生成随机数,其只能够控制上限,而不能够控制下限。换一句话说,其可以指定最大的 随机数范围,而不能够指定最小的随机数范围。所以,在灵活性上,其比Random方法要稍微差一点。
另外利用这个方法来实现的话,必 须先创建一个对象。也就是说利用Randow类来创建对象。这跟Randow方法不同。像上面举的例子中,Randow方法本身就是一个math类中方 法,可以直接调用,省去对象创建的方法。为此笔者建议各位读者与程序开发人员,最好还是使用Random方法来创建随机数。只有在生成一些比较特殊的随机 数时采用Random类。如现在需要生成一个概率密度为高斯分布的双精度值随机数时,则通过采用Random类的方法来创建随机数相对来说比较简单一点。
三附、产生随机的字符。
上面介绍的两种方法,产生的都是随机的数值型数据。但是有时候用户可能还需要产生随机的字符。其实也可以利用random方法来产生随机字符。如可以利 用代码生成一个随机的小写字符:(char)(‘a’+Mathrandom()(‘z’-‘a’+1))。其实这跟生成任意两个数之间的随机数类 似。通过以上的代码就可以生成一个范围之内的任意随机字符。通过对这个代码进行适当的修整,还可以生成任意两个字符之间的随机字符与任意大写字符的随机字 符。其转换的方式跟上面提到的任意范围之内的随机数类似。各位读者若感兴趣的话,可以自己进行测试一下。师傅领进门,修行在自身。如果笔者在这里一股脑儿 将所有的答案告诉大家,大家的印象不会很深。大家若回去自己动手试试看,反而更容易记住。
笔者在这里给大家一个提示,只需要根据m+(int)(MathRandom()(n-m))这条语句来调整(char)(‘a’+Mathrandom()(‘z’-‘a’+1))这个代码即可。
最后笔者需要强调的一点就是在用户传入参数的时候,最好要对用户传入的参数进行合法性检查。以免用户传入的参数不符合既定的要求,如参数需要的是数值型的数据而传入的却是字符型的数据,而导致程序运行出错。
我的世界OP指令大全
原版指令:
/op [ID]给予某个玩家管理权限
/deop [ID]消除某个玩家的OP
/gm [0/1/2] 修改自己生存/创造/冒险模式
/whitelist add [ID] 给予某个玩家白名单
/whitelist remove [ID] 解除某个玩家的白名单
/ban [ID] 封禁某个玩家
/banip [ID] 封禁某个玩家所在的ip地址的所有号
/tempban [ID/IP] [time] 封禁某个ID或者IP一段时间附加:s是秒,m是分钟,h是小时,d是天,w是星期,mo是月,y是年
/mute [ID] [time] 禁言某个玩家一段时间
/unban [ID] 解封玩家ID
/unbanip [IP] 解封 IP
/setworth [物品名字/物品id] [数值] 设定一个东西的系统价格,这个物品名字或者ID都行
/worth [ID] 查看系统价格,不写物品id默认为查看手上的物品价格
/itemdb 查询你手上拿着的物品的名称和ID
/mail [read/clear/send] [ID] [语句] 读取,清除,发送,某个离线玩家的邮件
/msg [语句] 私聊
/near 查看附近的玩家
/reply [语句] 回复最后一个私聊你的玩家
/whois [nickname/ID] 查看某个玩家的用户信息,ID,akf信息,nick名
/seen [ID] 查看玩家最后一次下线前所在的坐标
/sudo [ID] [指令] 让某个玩家执行一段命令,OP不能强制OP执行命令
/tp [ID] 强制传送到某个玩家的身边
/tphere [ID] 请求让某个玩家到你这里
/tpall [ID] 大传送
/tppos [x] [y] [z] 传送到指定坐标
/spawner [怪物的英文名] 改变刷怪笼的刷新物
/money give [钱数] 给与全部人xxx钱代表全部人
/give [ID] [物品ID] 给予某人一定数量的物品
/say [语句] 让服务器发一段所有人可见的话,并且是紫色字体的
/gc 查看服务器信息
/rules [数量] 查看服务器第几页的规矩
/essentials [reload/debug] 显示插件版本或者重读
/backup 备份服务器。需要配置备份脚本
/setspawn 在你站着的这个地方设置重生点
/setwarp [名字] 标注一块地区,以后你可以用/warp [名字] 来飞到这个你标注过的地方,相当于tp到领地
/baltop 查看财富排行榜
/compass 显示你当前的方位
/depth [ID] 显示你当前的高度,z轴高度
/getpos [ID] 显示当前的坐标x,y
/help [数量] 查看第几页的帮助
/helpop [语句] 向Op留言求助
/world 切换世界为nether、normal。地狱,END等等,具体的我也不知道- -我不敢这么玩,我只试过一次,然后人飞到了地狱
/remove drops 99999 清空掉落物品
/killall mobs 杀光怪物
/vanish或者直接/v 隐身
/fireball 释放地狱轰炸机的火球,从OP的口里吐出来
/shock [玩家ID] 雷击某个玩家,如果直接指令就在准心对着的位置雷击
/nuke [ID] 在某个玩家上方放核弹,其实就是一堆被激活的TNT从天上飞下来
/antioch 在准心所指的地方放一颗炸弹
/butcher 杀死附近的全部怪物
/killall 杀死附近的全部生物,包括村民不包括玩家
/kill [ID] 杀死某个玩家
/suicide 自杀
/burn [ID] 让某个玩家起火
/ext [ID] 给某个玩家灭火
/jump 直接跳跃到准心所指地方,长途旅行很实用
/fly [ID] 给予某个玩家临时飞行,重新登陆后失效
/up [数量] 把自己升到某高度,最大256,脚下会生成一块玻璃垫着你
/weather [storm/sun] 改变天气
/rain off /on 停雨/降雨
/time set [xx:xx] 设置时间
/heal [ID] 回复某个玩家的生命
/unlimited [list/item/clear] [ID] 查看,给予,清楚,某个玩家的无限物品
/nick [称号] 给自己换昵称
/powertooltoggle 清除所有的powertoll
/forestgen 在自己身旁形成森林
/pumpkins 在自己身旁形成南瓜林
/snow 在自己的身旁成为雪后的样子
/thaw 融雪、冰
/tree [树的形状]
big 大树
ewquoia红木
Tall sequoia 高大的红木
Birch 衫树
Random 随机
/setjail [名字] 设置一个监狱
/togglejail [名字] 把玩家送进xxx监狱,永久封存
/tjail [ID] [监狱名字] [时间] 把玩家扔到指定的监狱多少时间
/unjail [ID] [监狱名字] [时间] 多久后把玩家解放出来
/deljail [ID] 使某玩家从监狱中释放出来
/invsee 查看某个玩家的背包
/clear [ID]清空某个玩家的背包
/socialspy 开启后可看见任何玩家的私聊
/resadmin 管理员圈地
/delhome 删除家
用Essentials
运用号令
/mangadd 组 来创立一个用户组
/mangaddp 组 essentials权限 来给组添加某某权限
/manglistp 组 列出某个组的权限
/mangdelp 组 essentials权限 删除某组的某权限
/manuaddv [ID] prefix 你要的称号 给某人增加称号
/mangaddv 组 prefix 值 给组添加称号
/mangaddi 组1 组2 让组1担当租2的权限,能够为权限设置剩下不少费事
/manuadd 用户 组 将用户添加到组
/manuaddp 用户 权限 给用户权限
/manudelp 用户 权限 删除用户权限
/manudel 用户 把人移出权限组
/mangdel 组 删除权限组
默认权限组名字:default
/skull [ID] 获得玩家的头
/god [ID] 上帝模式
/enchant [附魔ID] [等级] 给手上的装备或者工具附魔
等级:1~32767
附魔ID:
0~7(装备)
16~21(武器)
32~35(工具)
48~51(弓)
136(炽热)
/lightning [ID] 数值 降雷伤害
/nbtedit 开启NBT单人编辑
/effect liu_nian_jun 1 9999 30
效果ID:
1:速度
2:缓慢
3:急迫
4:挖掘疲劳
5:力量
6:瞬间治疗
7:瞬间伤害
8:跳跃提升
9:反胃
10:生命恢复
11:抗性提升
12:防火
13:水下呼吸
14:隐身
15:失明
16:夜视
17:饥饿
18:虚弱
19:中毒
20:凋零
等级:1~99 力量最高建议:60
时间:99999为无限
/gamerule [规则名称] [true/flase] 设置游戏规则开关
规则名称:
1doFireTick 火的蔓延
2doMobLoot 生物掉落物品
3doMobSpawning 生物生成
4doTileDrops 方块被破坏时掉落物品
5keepInventory 死亡不掉落
6mobGriefing 苦力怕或者小黑对方块的破坏
7naturaRegeneration 自然生命恢复
8doDaylightCycle 日夜循环
/xp [give/set] [ID] [数值] 给予/设置某个玩家的经验
/difficulty [0/1/2/3] 设置游戏难度依次是:和平简单普通困难
/spawnmob [生物名称]
/kick [ID] 将玩家请出服务器
§彩色字符号
/motdc 你要的标语
/kittycannon 向准心位置发射一只可爆炸小猫
/shout 文本 在服务器发一条公告
/break 破坏掉你正在看的方块
/bigtree 在你的视野内生产一颗大树
/ignore [ID] 忽略某玩家
/feed [ID] 恢复饱食度
/jails 列出监狱列表
/realname 查看某玩家的真实ID
/speed 改变移动速度
/thunder true/flase 开启自然雷击
/unlimited 允许某玩家无限放置某方块
/whois 在昵称后面显示真名并列入玩家信息
/workbench 随时随地打开工作台
/kit 工具包名字 获得指定工具包
/potion 编辑一个药水效果
/powertool 给手中的武器添加一个指令
/unlimited ID 允许某玩家无限放置某方
掉头插件/skull ID 插件获得某玩家的头
/a 文本 op专用喊话
领地插件:
一、设置领地:
先用一块木头斧子左键敲击一方块设置点A,右键敲击一方块设置点B
(可以输入“/res select size”查看所选区域的大小);
之后输入“/res create 123”(例)这样设置后,
就形成了[以AB连线为体对角线的长方体的][名为123的]领地(包括A、B所在边),设置领地需要金钱
二、移除领地:
输入“/res remove liu_nian_jun743”(例)移除名为123的领地,注意,移除领地无法从服务器获得金钱!
三、领地内权限设置:
输入“/res set JYT tp true/false”(例)来设置权限,其中:
①123是领地名,不填则默认为当前所处领地;
②flags是权限,有:
move(移动);build(改变地形);place(放置物品);destroy(破坏);use(使用);
container(打开箱子);pvp(玩家伤害);tp(传送到该领地);ignite(点火);
firespread(火的传播);bucket(桶的使用);flow(后面两个总括);lavaflow(岩浆流动);
waterflow(水的流动);creeper(JJ怪爆炸);tnt(tnt爆炸);monsters(怪物出生);
animals(动物出生);subzone(子空间);healing(治疗)。 piston(活塞)(活塞不适用于单人命令)
③true/false是权限状态,若输入true则为开启,false则为关闭。
单人权限设置 拿 destroy 来举例 输入 /res pset HXD climb use t
四子空间设置: !&4收泥土嘞,1JC收购泥土,你特么来砸死我啊,谁怕谁,地址JYT,新手的福利啊啊,快来砸我啊,无限收!
如同设置领地一样选择区域,不同的是之后输入“/res subzone JYT NC”(例)设置母领地为123的名为abc的子空间,
该区域的权限设置和移除则需要将领地名变为123abc,无则默认为当前所处领地(在子空间则为子空间)。
五、领地信息设置:
可以设置进出领地时的提示信息,输入“/res message 123 enter(leave) ABC”(例)设置领地123的进入(离开)时的提示信息为ABC,
123处不填,则默认为当前所处领地;
特别地,在提示信息中可以添加:
%player - 在提示信息中显示进出领地的玩家名
%owner - 在提示信息中显示领主
%residence - 在提示信息中显示该领地
/res pset JYT mamadai trusted frue 所有个人权限
入侵领地/resadmin pset JYTliu_nian_jun trusted true
/res pset xiao_ai518 liu_nian_jun admin t 管理权限前提是要有resadmin 权限
创世神:
铺满 //set xxx(放置xxx,xxx是方块ID
清空 //set 0 (0=空气,无方块
围墙 //walls xxx (xxx是方块IDweeeeshiSB
空心球体 //hsphere xxx yyy(xxx是方块ID,yyy是半径可以用指南针右键方块定位
实心球体 //sphere xxx yyy(xxx是方块ID,yyy是半径可以用指南针右键方块定位
圆圈 //hcyl xxx yyy(xxx是物品ID,yyy是半径
圆形 //cyl xxx yyy(xxx是方块ID,yyy是半径
空心圆柱 //hcyl xxx yyy zzz(xxx是方块ID,yyy是半径,zzz是高度
实心圆柱 //cyl xxx yyy zzz(xxx是方块ID,yyy是半径,zzz是高度
还原 //und
撤销/撤销还原//redo
复制 //copy (站在哪复制,等一下黏贴也会是在相同的位置出现
黏贴 //paste (注意站好位置
改变复制物的方向//rotate xxx (xxx是度数,只能打90的倍数。顺时针旋转复制物
替换 //replace xxx yyy (xxx是原来方块,yyy是替换方块
制作Mod可以用制作器,但能实现独特功能的Mod需要作者能够编写代码(Java语言 等)
目前Mod制作者可面向 Java 端 和 基岩版 制作Mod
如果你想快速做个Mod:[MCreator] 是适用于我的世界 Java 端 (俗称电脑版) 的Mod制作工具,可以基本满足新建世界、合成方式、方块、食物、武器等修改的需要
如果你决定好好地(慢慢地)做个高质量的Mod:先参考下面的资料(Mod的介绍),并且决定你的Mod要发布在哪个平台上(Java[电脑版] 或 基岩版[电脑(Win10)、手机、游戏机])然后,翻一翻以下的相关资料准备动手吧!
推荐的相关资料:
Mod的介绍:网页链接 : minecraft-zhgamepediacom/Mods
综合教程:网页链接 : githubcom/Mouse0w0/MinecraftDeveloperGuide
[Java版]
{从零(不附送Java的学习)开始的学习}
网页链接 : wwwmcbbsnet/thread-702594-1-1html (旧资料)
网页链接 : minecraft-zhgamepediacom/Mods/制作
{对于113及更高版本} 网页链接 : minecraft-zhgamepediacom/数据包
[基岩版]
{附加包} 网页链接 : minecraft-zhgamepediacom/附加包
(抛出)PS:1只有3分钟的热度是无法做出真正的Mod的! 2把英语学好了! 3本答案仅整合了相关资料,如有问题,可自行探索或到论坛询问
我的世界记分板完整教程应用讲解,可以由命令和命令方块进行控制,对象由名称、显示名称、判据以及每位玩家所对应的整数数据组成,这块涉及到的东西比较的多,对于新人来说可能不太能够运用。
这是Minecraft内部的一个系统。它可以储存变量或者创立多支队伍来区别实体和玩家。玩家仅能同时加入一支队伍,并以此使用队伍设定中的功能。你可以创建一个指定判据的记分板,来帮助你完成一些有趣的功能。记分板的分数范围可正可负,并且很大,但没有小数。自18快照以来,记分板的判据大大增加,可以统计你的各种游戏数据,包括击杀指定生物,使用指定道具,合成物品,破坏方块等等。你可以使用它来实现更多的功能,同时简化你的命令方块电路,甚至创建更有趣的多人游戏。
用处:
1简化电路
2减小延迟,或者为目标增加更加精准的延迟
3脱离红石比较器等方块,直接对指定实体执行命令
4检测更丰富的内容,例如射出箭和破坏方块,甚至是指定nbt标签的实体
5创建多个玩家队伍,设定诸如友军伤害和名字颜色等队伍设置
6用侧边栏等方法丰富玩家获取资讯的方式
7进行数学运算
指令组:
0基础指令
scoreboard
//最基础的指令,将记分板分为变量,修改数值和队伍三类。
1变量指令
scoreboardobjectiveslist
//列出所有已经存在的变量记分板,并显示它们的判据是什么。往往在研究他人地图时使用。
scoreboardobjectivesadd记分板名判据[显示名字]
//创建一个指定判据的新变量记分板。记分板名是执行其他指令时使用的名字,而显示名仅用于在侧边栏的部分设定显示名字。所以记分板名应当尽量简短但能明白,并且由于score_name=等用处,记分板名尽量不要包含下划线等符号和空格,最好是全数字和字母。判据会决定这个记分板玩家分数的自动增加方法,会单独讲。
scoreboardobjectivesremove记分板名
//移除一个已经创立的记分板
scoreboardobjectivessetdisplay位置[记分板名]
//将某个记分板的数据显示在某个位置上,或者清除指定位置的记分板显示(不填记分板名)。可选位置有list[列表],sidebar[侧边栏],sidebarteam队伍颜色[特定颜色队伍的侧边栏],belowName[名字下方]四种。
2修改数值指令
scoreboardplayerslist[玩家或实体名]
//显示所有玩家/实体的所有记分板分数。即使记分板上的实体已经被删除,可是数据仍然会保存在里面,使用该实体的UUID代码。因此,如果在运行过大量实体记分板的地图中使用该指令,游戏很可能会由于显示量过大而崩溃!
scoreboardplayersset玩家/实体名记分板名分数[nbt标签]
//将指定的玩家或实体的记分板分数设定成一个数值。可以指定nbt标签。因此,结合execute指令可以替代testfor指令而直接对目标实体执行命令。可以为不存在的玩家名使用该指令。
scoreboardplayersadd玩家/实体名记分板名数值[nbt标签]
//为指定玩家或实体的记分板分数增加一个数值。可以指定nbt标签。结合set子指令可以将玩家分数控制在一定范围内,同时创建更精准的延迟。可以为不存在的玩家名使用该指令。
scoreboardplayersremove玩家/实体名记分板名数值[nbt标签]
//为指定玩家或实体的记分板分数移除一个数值。可以指定nbt标签。结合set子指令可以将玩家分数控制在一定范围内,同时创建更精准的延迟。可以为不存在的玩家名使用该指令。
scoreboardplayersreset玩家/实体名[记分板名]
//重置某个存在于世界内的玩家或实体的某个记分板数据,或者所有记分板数据(不填记分板名)。常用于消除显示在记分板侧边栏等位置的名字。
scoreboardplayersenable玩家名触发器记分板名
//激活一个玩家的指定触发器判据的记分板。激活后即使是没有作弊权限玩家也可以使用指令trigger来自己修改自己的该记分板分数。使用trigger指令一次后激活会关闭,需要再次激活才能使用trigger指令。
scoreboardplayerstest玩家/实体名记分板名最小值[最大值]
//测试一个玩家或实体的分数范围,用比较器输出成功信号。因为testfor指令便能做到,而且记分板电路可以直接对指定分数范围的实体执行指令,所以可以说是无用的。
scoreboardplayersoperation被执行/实体玩家被运算记分板名运算符号执行玩家/实体运算记分板名
//将执行方的某个记分板分数用运算符号[+=,-=,=,%=,/=]运算到被执行方的指定记分板分数上。可以用于同步记分板数据,比较记分板数据大小等。
3队伍指令
scoreboardteamslist[队伍名]
//显示指定队伍信息或所有队伍列表
scoreboardteamsadd队伍名[显示名]
//创立一支新的队伍
scoreboardteamsremove队伍名
//移除一支以及创立的队伍
scoreboardteamsempty队伍名
//移除一个队伍内的所有实体/玩家
scoreboardteamsjoin队伍名[玩家/实体名]
//使一个玩家或实体加入一支队伍。可以是不存在的玩家。
scoreboardteamsleave[玩家/实体名]
//使一个玩家或实体离开自己的队伍。若不填,即为自己离开。
scoreboardteamsoption队伍名设定名对应标签
//为一个队伍设定队伍颜色[color],友军伤害[friendlyfire],隐身可见[seeFriendlyInvisibles],名字可见[nametagVisibility],死亡讯息可见[deathMessageVisibility]等设定。下面有子指令内容。
scoreboardteamsoption队伍名color颜色名
//将一个队伍设定成指定颜色后队员的名字颜色会随之改变,并且可以看到对应颜色的侧边栏记分板内容。可用颜色"black","dark_blue","dark_green","dark_aqua","dark_red","dark_purple","gold","gray","dark_gray","blue","green","aqua","red","light_purple","yellow",和"white",或者使用"reset"来重置(移除)队伍颜色。
scoreboardteamsoption队伍名friendlyfire开启/关闭
//设定同队伍间的友军伤害是否开始,可用true/false标签来开关。
scoreboardteamsoption队伍名seeFriendlyInvisibles开启/关闭
//设定能否看到隐身的队友,若开启隐身的队友将是半透明状态。
scoreboardteamsoption队伍名nametagVisibility状态
//设定能否看到队员头上的名字。可用标签:从不[never],仅其他队员可见[hideForOtherTeams],仅自己队员可见[hideForOwnTeam],永远可见[always]
scoreboardteamsoption队伍名deathMessageVisibility状态
//设定能否看到队员的死亡讯息。可用标签:从不[never],仅其他队员可见[hideForOtherTeams],仅自己队员可见[hideForOwnTeam],永远可见[always]
4普通玩家可用指令:
trigger触发器判据记分板名设置/增加数值
激活后可由普通玩家使用一次,来改变自己的触发记分板数据。
4判据
用于对玩家的行为自动改变记录数值。[仅对玩家有效!]
1普通判据
dummy
//普通变量,不会随外界内容改变,只能由管理指令修改。
trigger
//类似于dummy的普通变量,但激活后可以由没有作弊权限的玩家自己修改。
deathCount
//记录死亡次数变量,每当玩家死亡时会增加1。
playerKillCount
//记录击杀玩家数量,每当击杀一个玩家数值会增加1。
totalKillCount
//记录总击杀数,每当击杀一个生物时数值会增加1。
health
//记录玩家生命值,以半颗心为一个单位显示玩家生命值,不能由指令修改。
2统计判据
achievement成就名
//记录获得成就的次数。可用成就名:"acquireIron","bakeCake","blazeRod","bookcase","breedCow","buildBetterPickaxe","buildFurnace","buildHoe","buildPickaxe","buildSword","buildWorkBench","cookFish","diamonds","diamondsToYou","enchantments","exploreAllBiomes","flyPig","fullBeacon","ghast","killCow","killEnemy","killWither","makeBread","mineWood","onARail","openInventory","overkill","overpowered","portal","potion","snipeSkeleton","spawnWither","theEnd",和"theEnd2"
stat统计名
//统计玩家某种动作的次数或距离数,例如疾跑距离等。可用统计名:"animalsBred","boatOneCm","climbOneCm","crouchOneCm","damageDealt","damageTaken","deaths","diveOneCm","drop","fallOneCm","fishCaught","flyOneCm","horseOneCm","jump","junkFished","leaveGame","minecartOneCm","mobKills","pigOneCm","playerKills","playOneMinute","sprintOneCm","swimOneCm","timeSinceDeath","treasureFished",and"walkOneCm"。
statcraftItem物品ID
//统计玩家合成某一物品次数
statuseItem物品ID
//统计玩家使用某一物品次数。例如喝牛奶来使用牛奶桶,耐久类物品在正常情况降低耐久,放置方块和投掷可投物品等都会在对应情况下增加数值1。材料往往是不会有使用次数的,但地图的使用次数没有正常工作(bug)
statbreakItem物品ID
//统计有耐久的物品损坏次数,例如弓和铲。
statmineBlock方块ID
//统计玩家采集方块数量。仅统计生存中破坏可以掉落的方块,或创造模式中游戏规则设定为方块不掉落时统计。
statkillEntity生物名
//统计玩家杀死指定的生物(实体)数量。可用生物名:"Bat","Blaze","CaveSpider","Chicken","Cow","Creeper","Enderman","EntityHorse","Ghast","LavaSlime","MushroomCow","Ozelot","Pig","PigZombie","Sheep","Silverfish","Skeleton","Slime","Spider","Squid","Villager","Witch","Wolf",和"Zombie"。
statentityKilledBy生物名
//统计玩家被某种生物杀死的次数。可用生物名同上。但由于某些生物是不会攻击玩家的,那么这个数值将不发生自然改变。
teamkill队伍颜色
//统计玩家杀死指定颜色的队伍队员数量。可用队伍颜色:"black","dark_blue","dark_green","dark_aqua","dark_red","dark_purple","gold","gray","dark_gray","blue","green","aqua","red","light_purple","yellow",和"white"。
killedByTeam队伍颜色
//统计玩家被指定颜色队伍的队员杀死次数。可用队伍颜色同上。
5重点内容:
1scoreboardplayersset/add/remove玩家/实体名记分板名分数[nbt标签]
//可以指定nbt标签
2scoreboardteamsoption队伍名设定名对应标签
//为一个队伍设定队伍颜色[color],友军伤害[friendlyfire],隐身可见[seeFriendlyInvisibles],名字可见[nametagVisibility],死亡讯息可见[deathMessageVisibility]等设定。
3统计判据
建议制作api、java修改包、mod
原版指令只会将标记的实体数据记录并进行修改/执行命令,无法并行执行(强制的话会导致java崩溃),jre虚拟机不会对游戏内的命令进行存储,无法形成固定的并行命令处理。如果你自己开了包(制作api与修改包),代入游戏的数据包后,通过读取包,还是可以并行命令/命令拓展的(可以选择自己做命令),通过做mod/服务器端的方式,将mod/服务器中插入与命令同时使用的动作(blockbench)、插件(Java、Bucket)、脚本(Datapack)来达到修改游戏根指令的目的。(外网上有很多api集成,拓展性还是可以的,建议借鉴一下)
如果你想做三国杀,建议使用mod,做mod的软件建议MCreator,内涵插入动作与指令模块,动作/技能其实就是动画,将玩家播放一个动画,然后使用指令,对周边敌人/生物造成伤害就行(指令这一块原版游戏就可以,完全够用,只有动画须要单独制作)。
Minecraft中关于在命令方块执行@s还是@p的发面Mojang做的还是太迷糊,你可以使用数据包来进行修改@s为输入指令的主玩家(Admin、Host)。还有很多模糊点,请提供更多信息。