Yarn: InfoEnchantement ->?

Créé le 13 janv. 2020  ·  15Commentaires  ·  Source: FabricMC/yarn

InfoEnchantment n'est pas un enchantement appelé "Info", mais un objet de données qui stocke un enchantement avec son niveau.

Noms suggérés :

  • EnchantmentState

    • > Ce n'est pas non plus un état. Un état sonne comme une cartequi est lié à une pile d'articles pour moi.

      - @liach

  • EnchantmentEntry

    • OMI un peu vague, et ne décrit pas vraiment ce qu'il fait.

  • EnchantmentInfo

    • Pour moi, cela ressemble à une classe qui stocke la description ("info") d'un enchantement.

discussion refactor

Commentaire le plus utile

Que diriez-vous de renommer Enchantment en EnchantmentType et celui-ci en Enchantment ?

EnchantmentType s'adapte toujours à l'autre, tout comme Enchantment pour cette classe, puisque l'on pourrait dire que l'ensemble (type + niveau) est un enchantement, comme "Sharpness II" par exemple.

Tous les 15 commentaires

EnchantmentInfo est probablement celui qui convient le mieux parmi ces trois. Ce n'est pas parfait, mais vous pouvez extrapoler l'information comme étant l'association d'un "type d'enchantement" (Enchantement) avec un "niveau d'enchantement" (numérique).

Mais à quoi sert-il ?

Il est principalement utilisé dans EnchantmentHelper pour représenter un enchantement qui va être appliqué à un objet.

C'est donc une application d'un enchantement ? Demande d'enchantement ? EnchantOptions ou EnchantAttributes ?

EnchantmentLevelPair ?

Qu'en est-il de EnchantmentInstance ? Un peu comme StatusEffectInstance

pas vraiment une instance, et cette classe est en fait très rarement utilisée, plutôt comme un Map.Entry<Enchantment, Integer>

Valeur d'enchantement ?

Je ne suis pas la première moitié de la logique de Liach, il ne soutient pas vraiment son affirmation "pas vraiment une instance".

Ce que j'ai vraiment contre EnchantmentInstance c'est que ce n'est pas très descriptif, un peu comme StatusEffectInstance n'est pas très descriptif non plus, et pas non plus ItemInstance , qui semble être le nom de Mojang pour ItemStack selon les chaînes dans les datafixers. La différence entre les trois est que pour les effets de statut, il n'existe pas vraiment de meilleur nom, et il est difficile d'englober ses nombreux champs en un seul nom. ItemStack est une bonne alternative à ItemInstance car c'est un nom bien établi que le wiki utilise également et qui a un sens logique.

Je pense toujours que EnchantmentLevelPair est le meilleur nom, car il ne contient que deux champs, enchantement et niveau. Et son utilisation crie également qu'il s'agit essentiellement d'un Pair<Enchantment, Integer> , qui est utilisé comme classe utilitaire dans EnchantmentHelper et iirc nulle part ailleurs.

ItemInstance , qui semble être le nom de Mojang pour ItemStack selon les chaînes dans les datafixers.

Les références de type DFU vanille utilisent item_stack .

Les références de type DFU vanille utilisent item_stack .

Peut-être qu'un correctif fait référence à ce nom quelque part?

EnchantmentStack

:tiny_potato:

Aussi pourquoi n'avons-nous pas choisi EnchantmentInfo avant ?

Avons-nous un cours de EnchantmentLevel ? Qu'en est-il de EnchantmentLevels (pour plus d'une fois) ?

Le but de cette classe est de stocker une paire d'enchantement et de niveau, je suggère donc LevelledEnchantment ou EnchantmentLevelPair .

EnchantmentStack ne fonctionne pas. Vous ne pouvez avoir qu'une pile d'objets concrets.

Que diriez-vous de renommer Enchantment en EnchantmentType et celui-ci en Enchantment ?

EnchantmentType s'adapte toujours à l'autre, tout comme Enchantment pour cette classe, puisque l'on pourrait dire que l'ensemble (type + niveau) est un enchantement, comme "Sharpness II" par exemple.

Cette page vous a été utile?
0 / 5 - 0 notes

Questions connexes

Draylar picture Draylar  ·  6Commentaires

Runemoro picture Runemoro  ·  4Commentaires

quat1024 picture quat1024  ·  6Commentaires

Runemoro picture Runemoro  ·  4Commentaires

enbrain picture enbrain  ·  4Commentaires