InfoEnchantment
- это не чары под названием «Информация», а объект данных, который хранит чары вместе с их уровнем.
Предлагаемые имена:
EnchantmentState
EnchantmentEntry
EnchantmentInfo
EnchantmentInfo
, вероятно, лучше всего подходит из этих трех. Это не идеально, но вы можете экстраполировать информацию как сочетание «типа чар» (чары) с «уровнем чар» (числовым).
Но для чего это используется?
Он используется в основном в EnchantmentHelper для обозначения чар, которые будут применены к предмету.
Так это наложение чар? Приложение чар? EnchantOptions
или EnchantAttributes
?
EnchantmentLevelPair
?
А как насчет EnchantmentInstance
? Немного похоже на StatusEffectInstance
не совсем экземпляр, и этот класс на самом деле используется очень редко, больше как Map.Entry<Enchantment, Integer>
EnchantmentValue?
Я не следую первой половине логики Лиаха, он на самом деле не поддерживает свое утверждение «не совсем экземпляр».
Что я действительно имею против EnchantmentInstance
это то, что он не очень информативен, вроде как StatusEffectInstance
тоже не очень информативен, как и ItemInstance
, которое, похоже, является именем Mojang. для ItemStack
согласно строкам в фиксациях данных. Разница между этими тремя состоит в том, что для эффектов статуса лучшего имени действительно не существует, и трудно объединить его многочисленные поля в одно имя. ItemStack
- хорошая альтернатива ItemInstance
как это хорошо известное имя, которое также использует вики, и оно имеет логический смысл.
Я до сих пор считаю, что EnchantmentLevelPair
- лучшее название, так как оно содержит только два поля, чары и уровень. И его использование также кричит, что это в основном Pair<Enchantment, Integer>
, который используется как служебный класс внутри EnchantmentHelper
и iirc больше нигде.
ItemInstance
, которое, по-видимому, является именем Mojang для ItemStack в соответствии со строками в блоках фиксации данных.
В ванильных ссылках на типы DFU используется item_stack
.
В ванильных ссылках на типы DFU используется
item_stack
.
Может быть, исправление где-то связано с этим именем?
EnchantmentStack
: tiny_potato:
Также почему мы не использовали EnchantmentInfo
раньше?
У нас есть класс EnchantmentLevel
? А как насчет EnchantmentLevels
(более одного раза)?
Цель этого класса - хранить пару чар и уровней, поэтому я предлагаю LevelledEnchantment
или EnchantmentLevelPair
.
EnchantmentStack
не работает. У вас может быть только стопка конкретных объектов.
Как насчет переименования Enchantment
в EnchantmentType
а этого в Enchantment
?
EnchantmentType
прежнему подходит другому, как и Enchantment
для этого класса, поскольку вы могли бы сказать, что вся вещь (тип + уровень) является зачарованием, как, например, «Sharpness II».
Самый полезный комментарий
Как насчет переименования
Enchantment
вEnchantmentType
а этого вEnchantment
?EnchantmentType
прежнему подходит другому, как иEnchantment
для этого класса, поскольку вы могли бы сказать, что вся вещь (тип + уровень) является зачарованием, как, например, «Sharpness II».