Wood Logs do not change to correct Log
DogsAreGood opened this issue ยท 9 comments
When exchanging wood logs, only Oak and Acacia work. When selecting Birch, Jungle, or Spruce, trying to exchange a block it will exchange to Oak logs. If selecting Dark Oak, it will exchange blocks into Acacia. Also, when attempting to select any of the wood types aside of Oak and Acacia, the border will still show up, showing that you do not have that block selected. Planks will exchange to the correct type though.
I noticed this problem from using Biomes O' Plenty Logs and thought it was just an issue with modded wood, but it also happens to vanilla wood.
I looked up this issue and the only similar thing I could find was #39 "Can't place rotated wood blocks". Seems that issue is still present because logs will only come out vertical when exchanged.
I am playing on version 1.12.2 on the "FoolCraft 3" mod pack, version 1.3.1
Hmm... very weird, I'll have a look into that again.
My guess is probably something to do with blocks' metadata, hopefully that won't be a problem in 1.13 though as metadata is getting removed.
That was my suspicion as well, just looked that up and the original 4 logs share an ID name "minecraft:log" and acacia and dark oak share one as well "minecraft:log2". Seems that it something 1.13 will definitely change.
The removal of metadata means I only have to store the block states in Exchangers, rather than those annoying "magic numbers".
I don't know all that much about how the code and the metadata works so I apologize if I'm completely off. I did not realize a good amount of blocks shared an ID, so I'm thinking maybe it has to do with how logs orient themselves and whatever extra values that adds.
The only other block that I can think of that has an orientation is glazed terracotta, but they don't share a block ID and are separated by color (minecraft:blue_glazed_terracotta, minecraft:silver_glazed_terracotta etc).
Glazed Terracotta is pretty easy to handle in terms of blockstates, but it gets a bit more nasty when it comes to:
- Logs (Metadata stores variant and orientation)
- Single Slabs (Metadata stores variant and position)
- Leaves (Metadata store variant, decayable check and and decay age)
- etc.
That pretty much sums up what blocks are more difficult to handle, it's basicially blocks with multiple block states within them, but hopefully that won't be a problem in 1.13.
Fixed in 2.7.3.