Building.java 1.39 KB
Newer Older
Florian Grabowski's avatar
Florian Grabowski committed
1
package de._82grfl1bif.kpiVisualizer.structures;
Florian Grabowski's avatar
Florian Grabowski committed
2

Florian Grabowski's avatar
Florian Grabowski committed
3
import de._82grfl1bif.kpiVisualizer.data.Klasse;
Florian Grabowski's avatar
Florian Grabowski committed
4
5
import org.bukkit.Material;

6
import java.awt.Point;
Florian Grabowski's avatar
Florian Grabowski committed
7
8
9

public class Building extends Structure{
    private final int height;
Florian Grabowski's avatar
Florian Grabowski committed
10
    public Klasse klasse = null;
Florian Grabowski's avatar
Florian Grabowski committed
11

Florian Grabowski's avatar
Florian Grabowski committed
12
    @Deprecated
Florian Grabowski's avatar
Florian Grabowski committed
13
    public Building(int width, int height, Material material){ //Buildings are Square -> no depth
14
15
16
17
        this.width.x = width;
        this.width.y = width;
        this.height = height;
        this.material = material;
Florian Grabowski's avatar
Florian Grabowski committed
18
        if(this.width.x < 5){
Florian Grabowski's avatar
Florian Grabowski committed
19
            throw new IllegalArgumentException("keine Gebäude kleiner 5 wegen 2 Gehweg");
20
21
22
        }
    }

23
    public Building(Material material, Klasse klasse, String name){ //Buildings are Square -> no depth
Florian Grabowski's avatar
Florian Grabowski committed
24
        this.klasse = klasse;
25
        this.material = material;
Florian Grabowski's avatar
Florian Grabowski committed
26
        this.width = new Point(Math.round((klasse.variables+5)), Math.round((klasse.variables+5))); //TODO: make this work with treemap and square
Florian Grabowski's avatar
Florian Grabowski committed
27
        this.area = klasse.variables*25;
28
        this.name = name;
Florian Grabowski's avatar
Florian Grabowski committed
29
        this.height = klasse.functions;
Florian Grabowski's avatar
Florian Grabowski committed
30
        if(this.width.x < 5 || this.width.y < 5){
Florian Grabowski's avatar
Florian Grabowski committed
31
            throw new IllegalArgumentException("keine Gebäude kleiner 5 wegen 2 Gehweg");
32
33
34
        }
    }

Florian Grabowski's avatar
Florian Grabowski committed
35
36
37
    public int getHeight() {
        return this.height;
    }
38
39
40
41
42
43

    @Override
    public Structure getFromTree(String checkName) {
        if(this.name.equals(checkName))return this;
        return null;
    }
Florian Grabowski's avatar
Florian Grabowski committed
44
}