Commit b262e83d authored by Florian Grabowski's avatar Florian Grabowski
Browse files

Fixed Bug in Builder

parent df35c4d1
......@@ -17,12 +17,13 @@
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
<sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" />
<excludeFolder url="file://$MODULE_DIR$/target" />
<excludeFolder url="file://$MODULE_DIR$/src/server/logs" />
<excludeFolder url="file://$MODULE_DIR$/.idea/dataSources" />
<excludeFolder url="file://$MODULE_DIR$/target" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="library" name="Java EE 6-Java EE 6" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: io.papermc.paper:paper-api:1.17.1-R0.1-SNAPSHOT" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: commons-lang:commons-lang:2.6" level="project" />
<orderEntry type="library" scope="PROVIDED" name="Maven: com.google.guava:guava:21.0" level="project" />
......@@ -53,6 +54,5 @@
<orderEntry type="library" name="Maven: org.codehaus.plexus:plexus-utils:3.3.0" level="project" />
<orderEntry type="library" name="Maven: org.codehaus.plexus:plexus-component-annotations:2.1.0" level="project" />
<orderEntry type="library" name="Maven: org.codehaus.plexus:plexus-compiler-api:2.9.0" level="project" />
<orderEntry type="library" name="Java EE 6-Java EE 6" level="project" />
</component>
</module>
\ No newline at end of file
<component name="libraryTable">
<library name="Maven: io.papermc.paper:paper-api:1.17.1-R0.1-SNAPSHOT">
<CLASSES>
<root url="jar://$MAVEN_REPOSITORY$/io/papermc/paper/paper-api/1.17.1-R0.1-SNAPSHOT/paper-api-1.17.1-R0.1-20211104.040033-269.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/io/papermc/paper/paper-api/1.17.1-R0.1-SNAPSHOT/paper-api-1.17.1-R0.1-20220103.100533-308.jar!/" />
</CLASSES>
<JAVADOC>
<root url="jar://$MAVEN_REPOSITORY$/io/papermc/paper/paper-api/1.17.1-R0.1-SNAPSHOT/paper-api-1.17.1-R0.1-20211104.040033-269-javadoc.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/io/papermc/paper/paper-api/1.17.1-R0.1-SNAPSHOT/paper-api-1.17.1-R0.1-20220103.100533-308-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$MAVEN_REPOSITORY$/io/papermc/paper/paper-api/1.17.1-R0.1-SNAPSHOT/paper-api-1.17.1-R0.1-20211104.040033-269-sources.jar!/" />
<root url="jar://$MAVEN_REPOSITORY$/io/papermc/paper/paper-api/1.17.1-R0.1-SNAPSHOT/paper-api-1.17.1-R0.1-20220103.100533-308-sources.jar!/" />
</SOURCES>
</library>
</component>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="EntryPointsManager">
<list size="1">
<item index="0" class="java.lang.String" itemvalue="org.bukkit.event.EventHandler" />
</list>
</component>
<component name="MavenProjectsManager">
<option name="originalFiles">
<list>
......
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="RunConfigurationProducerService">
<option name="ignoredProducers">
<set>
<option value="com.android.tools.idea.compose.preview.runconfiguration.ComposePreviewRunConfigurationProducer" />
</set>
</option>
</component>
</project>
\ No newline at end of file
......@@ -9,9 +9,12 @@ import org.bukkit.block.Block;
import org.bukkit.block.BlockFace;
import org.bukkit.block.Sign;
import java.time.Duration;
import java.util.Random;
import java.util.logging.Level;
import static de._82grfl1bif.KPI_Visualizer.data.Klasse.zeitSeitLetzterBearbeitungMin;
public class Builder {
Server server;
......@@ -95,13 +98,13 @@ public class Builder {
Random rm = new Random();
switch (rm.nextInt(3)+1){
case 1: setCrane(startLocation,x,y,z,craneHeight,BlockFace.NORTH);
break;
break;
case 2: setCrane(startLocation,x,y,z,craneHeight,BlockFace.WEST);
break;
break;
case 3: setCrane(startLocation,x,y,z,craneHeight,BlockFace.EAST);
break;
break;
case 4: setCrane(startLocation,x,y,z,craneHeight,BlockFace.SOUTH);
break;
break;
}
}
......@@ -112,19 +115,52 @@ public class Builder {
addDescription(s.getLocation().clone().add(0, s.getDepth(), 0), s);
setAllChildren((Foundation) s);
} else {//TODO must be revisited to draw rectangular Buildings
float ersterCommit = ((Building) s).klasse.zeitSeitErstemCommit.toDays();
float scaleErsterCommit;
if((float)Klasse.zeitSeitErstemCommitMin.toDays() == (float)Klasse.zeitSeitErstemCommitMax.toDays()){
scaleErsterCommit = 0f;
}else {
scaleErsterCommit = ((ersterCommit - (float)Klasse.zeitSeitErstemCommitMin.toDays()) / ((float) Klasse.zeitSeitErstemCommitMax.toDays() - (float)Klasse.zeitSeitErstemCommitMin.toDays()));
}
Duration d = ((Building) s).klasse.zeitSeitLetzterBearbeitung;
float letzterBearbeitung = d.toDays();
float scaleLetzterBearbeitung;
if((float)Klasse.zeitSeitLetzterBearbeitungMin.toDays() == (float)Klasse.zeitSeitLetzterBearbeitungMax.toDays()){
scaleLetzterBearbeitung = 0f;
}else {
scaleLetzterBearbeitung = ((letzterBearbeitung - (float)Klasse.zeitSeitLetzterBearbeitungMin.toDays()) / ((float)Klasse.zeitSeitLetzterBearbeitungMax.toDays() - (float)Klasse.zeitSeitLetzterBearbeitungMin.toDays()));
}
Material facadeMaterial;
if(scaleErsterCommit < 0.10){
facadeMaterial = Material.WAXED_COPPER_BLOCK;
}else if(scaleErsterCommit < 0.5){
facadeMaterial = Material.WAXED_EXPOSED_COPPER;
}else if(scaleErsterCommit < 0.90){
facadeMaterial = Material.WAXED_WEATHERED_COPPER;
}else {
facadeMaterial = Material.WAXED_OXIDIZED_COPPER;
}
Material facadeInnerMaterial;
if(scaleLetzterBearbeitung< 0.10){
facadeInnerMaterial = Material.WHITE_STAINED_GLASS;
}else if(scaleLetzterBearbeitung < 0.5){
facadeInnerMaterial = Material.GLASS;
}else if(scaleLetzterBearbeitung < 0.90){
facadeInnerMaterial = Material.BLUE_STAINED_GLASS;
}else {
facadeInnerMaterial = Material.IRON_BARS;
}
System.out.println(letzterBearbeitung);
System.out.println(scaleLetzterBearbeitung);
this.buildBuilding(s.getLocation().clone().add(1, s.getDepth() + 1,1),
s.getWidth().x - 2,
((Building) s).getHeight(),
((Building) s).getHeight()+1,
((Building)s).klasse.commits,
Math.round(((Building)s).klasse.complexity/10000),
Math.round(((Building)s).klasse.complexity/100),
s.getWidth().x - 2,
((((((Building) s).klasse.zeitSeitErstemCommit.toDays() - Klasse.zeitSeitErstemCommitMin.toDays()) / (Klasse.zeitSeitErstemCommitMax.toDays() - Klasse.zeitSeitErstemCommitMin.toDays())) > 0.25)? Material.WAXED_OXIDIZED_COPPER:
((((Building) s).klasse.zeitSeitErstemCommit.toDays() - Klasse.zeitSeitErstemCommitMin.toDays()) / (Klasse.zeitSeitErstemCommitMax.toDays() - Klasse.zeitSeitErstemCommitMin.toDays()) > 0.50)?Material.WAXED_WEATHERED_COPPER:
((((Building) s).klasse.zeitSeitErstemCommit.toDays() - Klasse.zeitSeitErstemCommitMin.toDays()) / (Klasse.zeitSeitErstemCommitMax.toDays() - Klasse.zeitSeitErstemCommitMin.toDays()) > 0.75)?Material.WAXED_EXPOSED_COPPER:Material.WAXED_COPPER_BLOCK),
(((((Building) s).klasse.zeitSeitLetzterBearbeitung.toDays() - Klasse.zeitSeitLetzterBearbeitungMin.toDays()) / (Klasse.zeitSeitLetzterBearbeitungMax.toDays() - Klasse.zeitSeitLetzterBearbeitungMin.toDays()) > 0.25)?Material.IRON_BARS:
((((Building) s).klasse.zeitSeitLetzterBearbeitung.toDays() - Klasse.zeitSeitLetzterBearbeitungMin.toDays()) / (Klasse.zeitSeitLetzterBearbeitungMax.toDays() - Klasse.zeitSeitLetzterBearbeitungMin.toDays()) > 0.50)?Material.BLUE_STAINED_GLASS:
((((Building) s).klasse.zeitSeitLetzterBearbeitung.toDays() - Klasse.zeitSeitLetzterBearbeitungMin.toDays()) / (Klasse.zeitSeitLetzterBearbeitungMax.toDays() - Klasse.zeitSeitLetzterBearbeitungMin.toDays()) > 0.75)?Material.GLASS:Material.WHITE_STAINED_GLASS)
,s.getMaterial());
facadeMaterial,
facadeInnerMaterial,
s.getMaterial());
addDescription(s.getLocation().clone().add(1, s.getDepth() + 1, 1), s);
}
}
......@@ -173,7 +209,7 @@ public class Builder {
private void addDescription(Location startLocation, Structure structure) {
if (structure.getClass() == Foundation.class) {
//if (!((Foundation) structure).getChildren().stream().anyMatch(s -> s.getClass() == Foundation.class)) {//no foundation in Children
setFoundationSing(startLocation,(Foundation) structure);
setFoundationSing(startLocation,(Foundation) structure);
//}
} else {
setWallSing(startLocation, (Building) structure, BlockFace.NORTH);
......@@ -247,13 +283,13 @@ public class Builder {
}
sign1.setData(matSign);
sign2.setData(matSign);
sign1o.setData(matSign);
sign2o.setData(matSign);
sign1.setGlowingText(true);
sign2.setGlowingText(true);
sign1o.setGlowingText(true);
sign2o.setGlowingText(true);
if (building.name.length() > 60) {
sign1o.setData(matSign);
sign2o.setData(matSign);
sign1o.setGlowingText(true);
sign2o.setGlowingText(true);
setTextToSign(sign1, sign1o, building.name);
setTextToSign(sign2, sign2o, building.name);
}else{
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment