Fix CameraUtils and add 1.17 Support

This commit is contained in:
Ste3et_C0st 2021-06-18 20:58:24 +02:00
parent cf21e9bb83
commit 0c84b06e7c
2 changed files with 49 additions and 14 deletions

29
pom.xml
View File

@ -7,7 +7,7 @@
<furniture.tag></furniture.tag>
</properties>
<version>3.4.8${furniture.tag}</version>
<version>3.5${furniture.tag}</version>
<build>
<defaultGoal>clean package install</defaultGoal>
<sourceDirectory>src</sourceDirectory>
@ -89,23 +89,24 @@
</repositories>
<dependencies>
<dependency>
<groupId>org.spigotmc</groupId>
<artifactId>spigot-api</artifactId>
<version>1.13-R0.1-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.bukkit</groupId>
<artifactId>bukkit</artifactId>
<version>1.13-R0.1-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.spigotmc</groupId>
<artifactId>spigot-api</artifactId>
<version>1.17-R0.1-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.spigotmc</groupId>
<artifactId>spigot</artifactId>
<version>1.17-R0.1-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.github.Ste3et</groupId>
<artifactId>FurnitureLib</artifactId>
<version>3c143b81</version>
<version>22fb4086de</version>
</dependency>
</dependencies>
</project>

View File

@ -0,0 +1,34 @@
package de.Ste3et_C0st.Furniture.Camera.Utils.v1_17;
import org.apache.commons.lang.reflect.MethodUtils;
import org.bukkit.block.Block;
import de.Ste3et_C0st.Furniture.Camera.Utils.MinecraftBlockColor;
public class BlockColor extends MinecraftBlockColor{
private static Class<?> CraftMagicNumbersClass;
static {
try {
CraftMagicNumbersClass = Class.forName("org.bukkit.craftbukkit." + getBukkitVersion() + ".util.CraftMagicNumbers");
}catch (Exception e) {
e.printStackTrace();
}
}
@Override
public Byte getBlockColor(Block b) {
try {
Object nmsBlock = CraftMagicNumbersClass.getMethod("getBlock", org.bukkit.Material.class).invoke(null, b.getType());
Object iBlockData = nmsBlock.getClass().getMethod("getBlockData").invoke(nmsBlock);
Object Material = MethodUtils.invokeMethod(iBlockData, "getMaterial", null);
Object MaterialMapColor = MethodUtils.invokeMethod(Material, "h", null);
int color = MaterialMapColor.getClass().getField("al").getInt(MaterialMapColor) * 4;
return (byte) color;
}catch (Exception e) {
e.printStackTrace();
}
return null;
}
}