1 package com.irtimaled.bbor.client.models;
3 import com.irtimaled.bbor.common.BoundingBoxType;
4 import com.irtimaled.bbor.common.models.BoundingBoxCuboid;
5 import com.irtimaled.bbor.common.models.Coords;
7 public class BoundingBoxBeacon extends BoundingBoxCuboid {
8 private final Coords coords;
9 private final int level;
11 private BoundingBoxBeacon(Coords coords, Coords minCoords, Coords maxCoords, int level) {
12 super(minCoords, maxCoords, BoundingBoxType.Beacon);
17 public static BoundingBoxBeacon from(Coords coords, int level) {
18 int range = 10 + (10 * level);
19 Coords minCoords = new Coords(coords.getX() - range, coords.getY() - range, coords.getZ() - range);
20 Coords maxCoords = new Coords(coords.getX() + range, 324 + range, coords.getZ() + range);
21 return new BoundingBoxBeacon(coords, minCoords, maxCoords, level);
25 public int hashCode() {
26 return coords.hashCode();
30 public boolean equals(Object obj) {
31 if (this == obj) return true;
32 if (obj == null || getClass() != obj.getClass()) return false;
33 BoundingBoxBeacon other = (BoundingBoxBeacon) obj;
34 return coords.equals(other.coords);
37 public Coords getCoords() {
41 public int getLevel() {