package net.glowstone.net.message.play.game;
import com.flowpowered.network.Message;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.RequiredArgsConstructor;
import lombok.ToString;
import java.util.List;
import static com.google.common.base.Preconditions.checkArgument;
@Data
public final class MapDataMessage implements Message {
private final int id, scale;
private final List<Icon> icons;
private final Section section;
@RequiredArgsConstructor
@ToString
@EqualsAndHashCode
public static class Icon {
public final int type, facing, x, y;
}
@ToString
@EqualsAndHashCode
public static class Section {
public final int width, height, x, y;
public final byte[] data;
public Section(int width, int height, int x, int y, byte... data) {
checkArgument(width * height == data.length, "width * height == data.length");
this.width = width;
this.height = height;
this.x = x;
this.y = y;
this.data = data;
}
}
}