Uploaded image for project: 'Minecraft: Java Edition'
  1. Minecraft: Java Edition
  2. MC-93018

Wild wolves show breeding hearts but do not breed

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • None
    • Minecraft 15w47b, Minecraft 15w49b, Minecraft 1.10.2, Minecraft 1.11, Minecraft 1.11.2, Minecraft 17w18b, Minecraft 1.12 Pre-Release 1, Minecraft 1.12 Pre-Release 2, Minecraft 1.12.2, Minecraft 1.13-pre1, Minecraft 1.13, Minecraft 18w30b, Minecraft 18w31a, Minecraft 18w32a, Minecraft 18w33a, Minecraft 1.13.1-pre1, Minecraft 1.13.1, Minecraft 1.13.2, Minecraft 18w45a, Minecraft 18w46a, Minecraft 18w48a, Minecraft 18w48b, Minecraft 18w49a, Minecraft 19w04b, Minecraft 19w07a, Minecraft 19w12b, Minecraft 19w13b, Minecraft 19w14a, Minecraft 19w14b, Minecraft 1.14.3, 1.15.1, 1.15.2 Pre-release 2, 1.15.2, 20w09a, 20w10a, 20w12a, 1.16, 1.16.2, 20w46a, 20w48a, 21w03a, 1.16.5, 21w05a, 21w05b, 21w06a, 21w07a, 21w08b, 1.17, 1.17.1, 1.18, 1.18.1, 1.18.2, 22w11a, 1.19, 1.19.2, 1.19.3 Release Candidate 3, 1.19.3, 23w18a, 1.20.1, 1.20.6, 1.21.3
    • Confirmed
    • Mob behaviour
    • Low
    • Gameplay

      Wild wolfs show hearts when feed raw meat.
      It's misleading if they are not meant to be breed able.

      Or make them breed able, i don't see why not.
      Use: Make more wild wolfs for different people to tame.

      Same with Ocelots. Fixed some point in 1.14

      Code Analysis

      Code Analysis provided by Thumpbacker

      The reasoning this is happening is because in the CanMate boolean method there are two checks for if the wolf is tamed or not. If the wolf isn't tamed it will return false. One possible fix is to remove the checks if it can be tamed or not. The method would then look like this.

      Fixed Code

      net/minecraft/world/entity/animal/Wolf.java
         public boolean canMate(Animal p_30392_) {
            //Removing the checks for if its tamed is a possible fix for MC-93018
            if (p_30392_ == this) {
               return false;
            } else if (!(p_30392_ instanceof Wolf)) {
               return false;
            } else {
               Wolf wolf = (Wolf)p_30392_;
               if (wolf.isInSittingPose()) {
                  return false;
               } else {
                  return this.isInLove() && wolf.isInLove();
               }
            }
         }
      

        1. MC-93018.png
          MC-93018.png
          828 kB
        2. MC-93018.mp4
          3.84 MB
        3. 2015-11-19_19.03.56.png
          2015-11-19_19.03.56.png
          224 kB

            Unassigned Unassigned
            Asteraoth [Mod] Asteraoth
            Votes:
            19 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              CHK: