Code/net/minecraft/world/level/saveddata/maps/MapFrame.java

25 lines
948 B
Java
Raw Normal View History

2025-07-01 06:20:03 +00:00
package net.minecraft.world.level.saveddata.maps;
import com.mojang.serialization.Codec;
import com.mojang.serialization.codecs.RecordCodecBuilder;
import com.mojang.serialization.codecs.RecordCodecBuilder.Instance;
import net.minecraft.core.BlockPos;
public record MapFrame(BlockPos pos, int rotation, int entityId) {
public static final Codec<MapFrame> CODEC = RecordCodecBuilder.create(
p_393606_ -> p_393606_.group(
BlockPos.CODEC.fieldOf("pos").forGetter(MapFrame::pos),
Codec.INT.fieldOf("rotation").forGetter(MapFrame::rotation),
Codec.INT.fieldOf("entity_id").forGetter(MapFrame::entityId)
)
.apply(p_393606_, MapFrame::new)
);
public String getId() {
return frameId(this.pos);
}
public static String frameId(BlockPos p_77871_) {
return "frame-" + p_77871_.getX() + "," + p_77871_.getY() + "," + p_77871_.getZ();
}
}