本帖最后由 夕xy 于 2022-7-4 20:03 编辑
检测玩家被攻击 1.12.2 抗性255
hurttime和stat.damageDealt都不管用
已解决:将抗性换为生命恢复
使用stat.damageDealt检测
检测玩家被攻击 1.12.2 抗性255
hurttime和stat.damageDealt都不管用
已解决:将抗性换为生命恢复
使用stat.damageDealt检测
本帖最后由 无谓z 于 2022-7-4 18:32 编辑
hurttime和stat.damageDealt需要收到伤害才会计数
抗性255无法受到伤害
WIKI:
去除药水效果后就能检测被攻击了
hurttime和stat.damageDealt需要收到伤害才会计数
抗性255无法受到伤害
WIKI:
将所有受到的伤害(不包括虚空、饥饿与/kill造成的)随等级提升逐渐减免,并在5级时完全免疫。
无谓z 发表于 2022-7-4 18:30
hurttime和stat.damageDealt需要收到伤害才会计数
抗性255无法受到伤害
WIKI:
所以怎么检测呢
夕xy 发表于 2022-7-4 18:31
所以怎么检测呢
或许可以检测玩家盔甲的耐久损耗来检测玩家被攻击
举个例子:
- /scoreboard objectives add damage dummy #添加一个名为damage的记分板
- /clear @a diamond_helmet 1 0 #清除玩家耐久损耗为1的钻石头盔
- /execute @a ~ ~ ~ scoreboard players add @s damage 1 #给玩家在记分板上加1分
- /replaceitem entity @a slot.armor.head 0 diamond_helmet 1 #将玩家头部盔甲替换为新的钻石头盔
但如果装备是无法损坏的那就没有办法了