java 这两个变量在Minecraft源代码中有什么区别?[已关闭]

g0czyy6m  于 2023-02-02  发布在  Java
关注(0)|答案(1)|浏览(142)

已关闭。此问题需要超过focused。当前不接受答案。
**想要改进此问题吗?**更新此问题,使其仅关注editing this post的一个问题。

2天前关闭。
Improve this question
我正在看1.19 MCP,我从他们的GitHub下载的,当我发现一些额外的东西。在文件net.minecraft.world.damagesource中,类DamageSource包含两个变量,其中,看起来完全相同。
这些宣言如下:

public static final DamageSource IN_FIRE = (new DamageSource("inFire")).bypassArmor().setIsFire();

public static final DamageSource ON_FIRE = (new DamageSource("onFire")).bypassArmor().setIsFire();

有人知道为什么两个变量非常相似吗?它们之间的区别是什么?一个用在哪里,另一个用在哪里?
我试着在网上查找,并试图跟踪这两个变量的实现,但到目前为止还不好。

qni6mghb

qni6mghb1#

从名字来判断,一个可能是由于玩家在火中行走而造成的伤害,另一个可能是由于玩家着火了,或者换句话说,是由于玩家着火了。
正如@Sweeper在评论中指出的,例如,为了给予精确的death messages,需要进行区分。

相关问题