Minecraft指令手册

你好MC

首页 >> Minecraft指令手册 >> Minecraft指令手册最新章节(目录)
大家在看 徐氏略记 我想打篮球拒绝当舔狗 七流写手[星际] 爱你,怪我入戏太深 女友全家大佬!我苟亿点怎么了? 不死毒奶:毒无限叠加,惊呆校花 火影:抓我实验?那我不当人了! 崩铁:攻略黑塔的术士奏 穿越:不一样的元气骑士 绿肥红瘦
Minecraft指令手册 你好MC - Minecraft指令手册全文阅读 - Minecraft指令手册txt下载 - Minecraft指令手册最新章节 - 好看的游戏小说

第一百零六章 属性修饰符 下-最终倍乘和\/attribute指令

上一章 书 页 下一章 阅读记录

在上一章,我们了解了operation的『属性增量』和『倍率增量』计算模式,还有一个『最终倍乘』。那什么是最终倍乘呢?

『最终倍乘』是这样计算的:

R=c?x(1+A?)x(1+A?)x......x(1+A?)

c?=c?x(1+a?+a?+.....+a?)

c?=c+m?+m?+.....+m?

R······最终结果

A??...?······计算模式为『最终倍乘』的修饰符的Amount值

a??...?······计算模式为『倍率增量』的修饰符的Amount值

m??...?······计算模式为『属性增量』的修饰符的Amount值

c?······『倍率增量』计算结果

c?······『属性增量』计算结果

举个例子,假设现在有这些修饰符:

{AttributeName:'generic.max_health',Amount:5.0,operation:0}

{AttributeName:'generic.max_health',Amount:3.0,operation:0}

{AttributeName:'generic.max_health',Amount:2.0,operation:1}

{AttributeName:'generic.max_health',Amount:1.5,operation:1}

{AttributeName:'generic.max_health',Amount:1.1,operation:2}

{AttributeName:'generic.max_health',Amount:0.1,operation:2}

当这些修饰符在一个玩家身上全部生效,且该名玩家的最大生命值仅仅受这些修饰符影响时,这名玩家的生命值上限将会从20.0点变成291.06点。这个『291.06』是这样得出来的:

[(20+5+3)x(1+2+1.5)]x(1+1.1)x(1+0.1)

↓先计算『属性增量』↓

[28x(1+2+1.5)]x(1+1.1)x(1+0.1)

↓再计算『倍率增量』↓

126x(1+1.1)x(1+0.1)

↓最后计算『最终倍乘』↓

291.06

这就是『最终倍乘』,到这operation的全部内容也就讲完了。

但这不代表本章到此结束。还记得上一章提到的\/attribute指令吗?让我们来了解下这指令如何使用:

\/attribute

作用:可以更改和读取属性

存在版本:Java1.16-今

需要权限等级:Java-2

需要作弊:是

格式:

\/attribute <目标玩家\/生物><属性>[base] get [乘数]

\\\\返回指定属性的『总值』。如果指定了base,则返回『基值』\\\\

\/attribute <目标玩家\/生物><属性> base set <值>

\\\\将指定属性的『基值』设定为指定的值\\\\

\/attribute <目标玩家\/生物><属性> modifier add <名字><值>(add|multiply|multiply_base)

\\\\如果没有UUId相同的属性修饰符,就给指定属性添加上属性修饰符\\\\

\/attribute <目标玩家\/生物><属性> modifier remove

\\\\移除指定属性的具有指定UUId的修饰符\\\\

\/attribute <目标玩家\/生物><属性> modifier value get [乘数]

\\\\返回具有指定UUId的属性修饰符的值\\\\

使用这条指令可以很方便地修改实体的属性,以及为实体添加上属性修饰符。只不过由于\/attribute指令是直接给实体添加上修饰符,没有物品作为载体,所以在这边添加的修饰符无需指定『栏位』参数。

让我们来试一试,直接修改属性的值。比如,把我们的生命值上限改成40点:

\/attribute @s generic.max_health base set 40.0

→实体xxx的属性最大生命值的基值已设置为40.0

很好,这下子我们就有40点生命值了。只不过要注意,玩家的属性会在死亡后重置,也就是如果你死一次,最大生命值就会变回20点。

get子命令可以获得我们属性的总值或基值。总值也就是经过修饰符修饰后最终的值,基值也就是没有修饰过的初始值。比如:

\/attribute @s generic.max_health base get

由于上面我们已经把基值改成了40.0,因此这将会返回:

→实体xxx的属性最大生命值的基值为40.0

等等,这个『乘数』参数有什么用?让我们试一试:

\/attribute @s generic.max_health base get 2.0

→实体xxx的属性最大生命值的基值为40.0

不难发现,这个乘数参数没有任何的用处.......呃,其实有用的。

用在哪呢?execute的store子命令:

1\/execute store result score @s health_max run attribute @s generic.max_health base get

2\/execute store result score @s health_max run attribute @s generic.max_health base get 2.0

指令1的返回值为正常的40.0,也就是将我们自己在health_max计分项上的值改为40。指令2虽然给我们的消息是40.0,但实际返回的是80.0,计分项上的分数也会改为80。

所以,『乘数』参数并不是没有用,而是它的用处在于影响指令的返回值。

修改属性还是很简单的。那使用\/attribute给实体添加修饰符呢?让我们再试一试:

\/attribute @s generic.max_health modifier add 1-1-1-1-1 A 1.0 add

→为实体xxx的属性最大生命值添加了修饰符00000001-0001-0001-0001-000000000001

在上面的指令中,使用了『modifier』子命令的『add』子命令来添加一个修饰符,参数『1-1-1-1-1』指定了该修饰符的UUId,『A』指定了该修饰符的名称,『1.0』指定了该修饰符的值,『add』指定了该修饰符的计算模式是『属性增量』。其中得讲一下的就是这个UUId参数。

在这边的UUId参数,填写的是『带连字符的十六进制UUId』。这种形式的UUId很常见,它长下面这样:

xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

详细内容会在第一百一十章讲到,在这边你只需要把这东西当做填写五个用连字符『-』连在一起的整数即可:

1-1-1-1-1

上面的『add』参数所在的位置,也可以填写multiply_base(倍率增量)和multiply(最终倍乘),来改变运算模式。

现在,让我们看看的生命值上限是不是高达41.0:

\/attribute @s generic.max_health base get

→实体xxx的属性最大生命值的基值为40.0

?怎么还是40.0?啊,是用错了,这获取到的是基值,应该把『base』参数去掉:

\/attribute @s generic.max_health get

→实体xxx的属性最大生命值的值为41.0

很好,所以你现在会用\/attribute给实体添加属性修饰符了吗?

remove和value get两个子命令的使用很简单,让我们试一试:

\/attribute @s minecraft:generic.max_health modifier value get 1-1-1-1-1 2.0

→实体xxx的属性最大生命值中修饰符00000001-0001-0001-0001-000000000001值为1.0

上面这条指令会返回这个修饰符的值。并且由于指定了乘数为『2.0』,这条指令的返回值还会是『2.0』(1.0x2.0)。

\/attribute @s minecraft:generic.max_health modifier remove 1-1-1-1-1

→为实体xxx的属性最大生命值移除了修饰符00000001-0001-0001-0001-000000000001

这样子我们就删掉了刚刚给我们自己添加的属性修饰符,生命值上限回到了40.0。

本章到此为止。

附录:\/attribute历史

Java

1.16——加入了\/attribute

喜欢Minecraft指令手册请大家收藏:(m.86xiaoshuo.com)Minecraft指令手册86小说更新速度最快。

上一章 目 录 下一章 存书签
站内强推 大唐:开局邀请皇后前往草原做客 我在东京养成神只 成年男团混进来一个小学生?! 和古人打游戏,看电影 港片:开局带着五十亿回国 噬源 崽崽一岁半,爱吃爱睡爱嗷嗷叫 校花的贴身高手 江岳派 狂妃来袭:腹黑王爷诱入怀 开局桥上救下轻生女,系统激活 春秋大梦之白日做梦 我怎么成别人的外挂了 误穿年代,导演我在八零撩汉子 黑神特战队 蓝龙的魔咒神力 快穿之战神大人等等我 寡妇娇又魅,帝王把持不住了 一道升仙 披荆斩棘的赘婿:从扮演傻子开始
经典收藏 恐怖游戏逃生指南 返老还童:我的少女穿越记 综漫:我野原新之助,天生剑豪! 人在木叶:开局公开处刑 掌中宝 绝顶枪王 老公,你良心掉了 王格朗的阿拉大陆历险记 离凡成仙 从虐杀原形开始登阶 我的弟子遍布全球 全球游戏:附带随身商店 热血传奇之沙城城主 婚然心动慕少太危险 篮筐与蜂鸟的第十二夜 春风十里,不如你 七夜宠妻 锋腰摇摆人,足坛以我为模板 豪门宠妻,总裁别嚣张 错婚诱情
最近更新 祁厅重生,汉东再无沙家帮 七零娇娇一撒娇,腹肌硬汉顶不住 足球:神级中场,重铸多特荣耀 四合院:傻柱重生,娶妻陈雪茹 为何要忍,我是周卫国 国足招揽我?百亿富二代表示配吗 港综:癫过砵兰街! 叠叠叠叠叠叠叠叠叠叠叠真伤! 模板魔术师女明星都是我的充电宝 抗战:从加强团到装甲集团军 鬼王无惨求生中 百变小樱:转世后制作卡牌 穿越历史,从远古到现代 四合院之重回开始的时候 四合院:开局傻柱拒绝道德绑架 女子推理社,拯救意难平 开局天灾:我靠空间精致咸鱼躺 网游:开局无职业的我无敌了 诡异入侵,我反杀不过分吧? 谁公认的历史第一大前锋?
Minecraft指令手册 你好MC - Minecraft指令手册txt下载 - Minecraft指令手册最新章节 - Minecraft指令手册全文阅读 - 好看的游戏小说