الأساليب isInWater
و isInsideWater
مربكة للغاية حاليًا: الأساليب لها أسماء متشابهة جدًا ولكنها لا تعرض نفس النتيجة على الإطلاق.
إرجاع isInWater
صحيح فقط عندما يكون صندوق النتائج الكامل في الماء ، ويجب إعادة تسميته إلى isSubmergedInWater
. و isInWater
تُرجع قيمة الحقل inWater
الذي تم تعيينه بواسطة isSubmergedIn(FluidTags.WATER, true)
.
يجب أيضًا إعادة تسمية الحقل inWater
بعد ذلك.
إرجاع isInsideWater
صحيح عندما يضرب صندوق النتائج الماء ، يجب إعادة تسمية الطريقة إلى isTouchingWater
. يجب أيضًا إعادة تسمية الحقل المرتبط insideWater
.
نظرًا لأن isTouchingWater
موجود بالفعل ، يجب أيضًا إعادة تسمية الطريقة.
جاء الاسم isWet
في بعض الأذهان ولكنه قد يتعارض مع WolfEntity#isWet
وهو جانب العميل فقط.
ربما يمكننا إعادة تسمية WolfEntity # isWet إلى isWolfWet
؟
مشكلتي بإعادة تسمية isTouchingWater
إلى isWet
أنها ليست صحيحة تمامًا من وجهة نظر اللغة. يمكن أن تبلل لفترة معينة بعد لمس الماء. فكرت في isMakingContactWithWater
لكنها طويلة جدًا.
يمكن أن يكون دائمًا isTouchingWaterBlock
و isTouchingWater
. إنه ليس مثاليًا ولكن يجب أن يكون واضحًا بدرجة كافية.
نظرًا لأن طريقة isWet
هي طريقة منفصلة في WolfEntity
(بدلاً من مجرد استخدام Entity.isWet
، أو تجاوزها) ، أعتقد أن اسم Mojang ربما يكون شيئًا مثل shouldDoXyz
، حيث "xyz" شيء لا تفعله الذئاب إلا عندما تكون مبتلة.
يعتمد على. تهز الذئاب أجسادها عندما تكون مبللة ، وإذا كانت مبللة بجزيئات الماء تتطاير عليها أيضًا. قد لا يكون shouldDoXyz
مناسبًا أيضًا لحالة عرض الجسيمات.
Runemoro أتفق مع ذلك. قد يكون isFurWet
أو isASoggyBoi
.
قد يكون الموقف أن الطريقة على الذئاب تسبق الأساليب الموجودة في الكيان.
+1 لـ Wolf#isFurWet
تم حل هذه المشكلة بالرقم 1058 # الآن.
التعليق الأكثر فائدة
تم حل هذه المشكلة بالرقم 1058 # الآن.