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

Command block minecart data walker never runs due to comparing different types

    Details

    • Confirmation Status:
      Unconfirmed

      Description

      Command block minecarts have the following data walker:

      if ("minecraft:command_block".equals(new ResourceLocation(compound.getString("id"))))
      {
          compound.setString("id", "Control");
          fixer.process(FixTypes.BLOCK_ENTITY, compound, versionIn);
          compound.setString("id", "MinecartCommandBlock");
      }
      
      return compound;
      

      This will never run, because it is comparing a String constant with a resource location. (This issue was introduced in 18w01a). This is not an issue for spawner minecarts, which use if (Objects.equals("minecraft:spawner_minecart", (new ResourceLocation(s)).toString())).

      The code also seems to be using old (pre-1.11) IDs, which is incorrect; see MC-116928.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                fry [Mojang] Georgii Gavrichev
                Reporter:
                pokechu22 [Mod] Pokechu22
              • Votes:
                2 Vote for this issue
                Watchers:
                5 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: