]> git.lizzy.rs Git - BoundingBoxOutlineReloaded.git/blob - src/main/java/com/irtimaled/bbor/client/models/BoundingBoxFlowerForest.java
General performance improvements
[BoundingBoxOutlineReloaded.git] / src / main / java / com / irtimaled / bbor / client / models / BoundingBoxFlowerForest.java
1 package com.irtimaled.bbor.client.models;
2
3 import com.irtimaled.bbor.client.ClientRenderer;
4 import com.irtimaled.bbor.client.config.ColorHelper;
5 import com.irtimaled.bbor.client.config.HexColor;
6 import com.irtimaled.bbor.client.config.Setting;
7 import com.irtimaled.bbor.client.renderers.AbstractRenderer;
8 import com.irtimaled.bbor.client.renderers.FlowerForestRenderer;
9 import com.irtimaled.bbor.common.BoundingBoxType;
10 import com.irtimaled.bbor.common.models.AbstractBoundingBox;
11 import com.irtimaled.bbor.common.models.Coords;
12
13 import java.awt.*;
14
15 public class BoundingBoxFlowerForest extends AbstractBoundingBox {
16     private static final AbstractRenderer<BoundingBoxFlowerForest> RENDERER = ClientRenderer.registerRenderer(BoundingBoxFlowerForest.class, new FlowerForestRenderer());
17
18     private final Coords coords;
19     private final Setting<HexColor> colorSetting;
20
21     public BoundingBoxFlowerForest(Coords coords, Setting<HexColor> colorSetting) {
22         super(BoundingBoxType.FlowerForest);
23         this.coords = coords;
24         this.colorSetting = colorSetting;
25     }
26
27     @Override
28     public Boolean intersectsBounds(int minX, int minZ, int maxX, int maxZ) {
29         return coords.getX() >= minX && coords.getZ() >= minZ && coords.getX() <= maxX && coords.getZ() <= maxZ;
30     }
31
32     public Color getColor() {
33         return ColorHelper.getColor(colorSetting);
34     }
35
36     public Coords getCoords() {
37         return coords;
38     }
39
40     @Override
41     public double getDistanceX(double x) {
42         return x - coords.getX();
43     }
44
45     @Override
46     public double getDistanceY(double y) {
47         return y - coords.getY();
48     }
49
50     @Override
51     public double getDistanceZ(double z) {
52         return z - coords.getZ();
53     }
54
55     @Override
56     public AbstractRenderer<?> getRenderer() {
57         return RENDERER;
58     }
59 }