package net.glowstone.net.message.play.game;
import com.flowpowered.networking.Message;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.RequiredArgsConstructor;
import lombok.ToString;
import org.apache.commons.lang3.Validate;
import java.util.List;
@Data
public final class MapDataMessage implements Message {
public final int id, scale;
public final List<Icon> icons;
public 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) {
Validate.isTrue(width * height == data.length, "width * height == data.length");
this.width = width;
this.height = height;
this.x = x;
this.y = y;
this.data = data;
}
}
}