Yarn: Названия Entity # isInWater, Entity # isTouchingWater и Entity # isInsideWater сбивают с толку.

Созданный на 12 нояб. 2019  ·  8Комментарии  ·  Источник: FabricMC/yarn

Методы isInWater и isInsideWater в настоящее время очень сбивают с толку: методы имеют очень похожие имена, но вообще не возвращают одинаковый результат.

isInWater возвращает истину только тогда, когда полный хитбокс находится в воде, и его следует переименовать в isSubmergedInWater . А isInWater возвращает значение поля inWater которое установлено isSubmergedIn(FluidTags.WATER, true) .
Затем следует также переименовать поле inWater .

isInsideWater возвращает true, когда хитбокс попадает в воду, метод следует переименовать в isTouchingWater . Связанное поле insideWater также следует переименовать.

Поскольку isTouchingWater уже существует, метод также следует переименовать.
Имя isWet пришло в голову некоторым, но оно может конфликтовать с WolfEntity#isWet которое используется только на стороне клиента.

Самый полезный комментарий

Теперь эта проблема исправлена ​​с помощью # 1058.

Все 8 Комментарий

Может быть, мы могли бы переименовать WolfEntity # isWet в isWolfWet ?

Моя проблема с переименованием isTouchingWater в isWet заключается в том, что это не совсем правильно с языковой точки зрения. После прикосновения к воде можно некоторое время промокнуть. Я подумал о isMakingContactWithWater но это слишком долго.

Всегда может быть isTouchingWaterBlock и isTouchingWater . Это не идеально, но должно быть достаточно ясно.

Поскольку метод isWet - это отдельный метод в WolfEntity (а не просто использование Entity.isWet или его переопределение), я предполагаю, что имя Mojang, вероятно, похоже на shouldDoXyz , где "xyz" - это то, что волки делают только во влажном состоянии.

Зависит от. Волки трясутся своим телом, когда они мокрые, и если они мокрые, на них также появляются частицы воды. shouldDoXyz может не подходить для случая рендеринга частиц.

@Runemoro Я согласен с этим. Может быть isFurWet или isASoggyBoi .

Ситуация может заключаться в том, что метод на волках предшествует методам на Entity.

+1 за Wolf#isFurWet

Теперь эта проблема исправлена ​​с помощью # 1058.

Была ли эта страница полезной?
0 / 5 - 0 рейтинги

Смежные вопросы

enbrain picture enbrain  ·  4Комментарии

ChloeDawn picture ChloeDawn  ·  5Комментарии

asiekierka picture asiekierka  ·  3Комментарии

Awakened-Redstone picture Awakened-Redstone  ·  4Комментарии

Sollace picture Sollace  ·  5Комментарии