InfoEnchantment
ist keine Verzauberung namens "Info", sondern ein Datenobjekt, das eine Verzauberung zusammen mit ihrem Level speichert.
Vorgeschlagene Namen:
EnchantmentState
EnchantmentEntry
EnchantmentInfo
EnchantmentInfo
ist wahrscheinlich diejenige, die von diesen dreien am besten passt. Es ist nicht perfekt, aber Sie könnten die Informationen als Paarung eines "Verzauberungstyps" (Verzauberung) mit "Verzauberungsstufe" (numerisch) extrapolieren.
Aber wofür wird es verwendet?
Es wird hauptsächlich in EnchantmentHelper verwendet, um eine Verzauberung darzustellen, die auf einen Gegenstand angewendet wird.
Es ist also eine Anwendung einer Verzauberung? Zauberanwendung? EnchantOptions
oder EnchantAttributes
?
EnchantmentLevelPair
?
Was ist mit EnchantmentInstance
? Ein bisschen wie StatusEffectInstance
nicht wirklich eine Instanz, und diese Klasse wird tatsächlich sehr selten verwendet, eher wie eine Map.Entry<Enchantment, Integer>
Zauberwert?
Ich folge nicht der ersten Hälfte von Liachs Logik, er unterstützt seine Behauptung "nicht wirklich eine Instanz" nicht wirklich.
Was ich wirklich gegen EnchantmentInstance
ist, dass es nicht sehr anschaulich ist, ähnlich wie StatusEffectInstance
nicht sehr anschaulich ist und ItemInstance
, das scheint Mojangs Name zu sein für ItemStack
entsprechend den Strings in den Datafixern. Der Unterschied zwischen den dreien besteht darin, dass es für Statuseffekte keinen besseren Namen gibt und es schwierig ist, die vielen Felder in einem Namen zusammenzufassen. ItemStack
ist eine gute Alternative zu ItemInstance
da es sich um einen etablierten Namen handelt, den auch das Wiki verwendet und der logisch sinnvoll ist.
Ich denke immer noch, dass EnchantmentLevelPair
der beste Name ist, da er nur zwei Felder enthält, Verzauberung und Stufe. Und seine Verwendung schreit auch, dass es im Grunde ein Pair<Enchantment, Integer>
ist, das als Dienstprogrammklasse innerhalb von EnchantmentHelper
und nirgendwo anders verwendet wird.
ItemInstance
, das scheint Mojangs Name für ItemStack gemäß den Strings in den Datafixern zu sein.
Die Vanilla-DFU-Typreferenzen verwenden item_stack
.
Die Vanilla-DFU-Typreferenzen verwenden
item_stack
.
Vielleicht bezieht sich ein Fix irgendwo auf diesen Namen?
EnchantmentStack
:kleine_kartoffel:
Und warum sind wir nicht früher mit EnchantmentInfo
gegangen?
Haben wir einen EnchantmentLevel
Kurs? Was ist mit EnchantmentLevels
(mehr als einmal)?
Der Zweck dieser Klasse besteht darin, ein Verzauberungs- und Level-Paar zu speichern, daher empfehle ich LevelledEnchantment
oder EnchantmentLevelPair
.
EnchantmentStack
funktioniert nicht. Sie können nur einen Stapel von konkreten Objekten haben.
Wie wäre es mit der Umbenennung von Enchantment
in EnchantmentType
und dieses in Enchantment
?
EnchantmentType
passt immer noch zum anderen, ebenso wie Enchantment
für diese Klasse, da man sagen könnte, dass das Ganze (Typ + Level) eine Verzauberung ist, wie zum Beispiel "Schärfe II".
Hilfreichster Kommentar
Wie wäre es mit der Umbenennung von
Enchantment
inEnchantmentType
und dieses inEnchantment
?EnchantmentType
passt immer noch zum anderen, ebenso wieEnchantment
für diese Klasse, da man sagen könnte, dass das Ganze (Typ + Level) eine Verzauberung ist, wie zum Beispiel "Schärfe II".