Initial commit
This commit is contained in:
33
Itemutils/pom.xml
Normal file
33
Itemutils/pom.xml
Normal file
@@ -0,0 +1,33 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<parent>
|
||||
<artifactId>utils</artifactId>
|
||||
<groupId>eu.mikroskeem</groupId>
|
||||
<version>1.0-SNAPSHOT</version>
|
||||
</parent>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
<artifactId>itemutils</artifactId>
|
||||
|
||||
<repositories>
|
||||
<repository>
|
||||
<id>spigot-repo</id>
|
||||
<url>https://hub.spigotmc.org/nexus/content/repositories/snapshots/</url>
|
||||
</repository>
|
||||
</repositories>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.bukkit</groupId>
|
||||
<artifactId>bukkit</artifactId>
|
||||
<version>1.10.2-R0.1-SNAPSHOT</version>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.jetbrains</groupId>
|
||||
<artifactId>annotations-java5</artifactId>
|
||||
<version>RELEASE</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
</project>
|
||||
@@ -0,0 +1,35 @@
|
||||
package eu.mikroskeem.utils.itemutils;
|
||||
|
||||
import org.apache.commons.lang.Validate;
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.block.Banner;
|
||||
import org.bukkit.block.banner.Pattern;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.bukkit.inventory.meta.BlockStateMeta;
|
||||
import org.bukkit.inventory.meta.ItemMeta;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
public class Shield {
|
||||
/**
|
||||
* Set Minecraft shield design
|
||||
*
|
||||
* @param shieldStack Shield itemstack to apply design on
|
||||
* @param patternList Banner design patterns
|
||||
*/
|
||||
public static void setShieldDesign(@NotNull ItemStack shieldStack, @Nullable ArrayList<Pattern> patternList){
|
||||
Validate.isTrue(shieldStack.getType().equals(Material.SHIELD), "Item must be a shield");
|
||||
|
||||
ItemMeta shieldMeta = shieldStack.getItemMeta();
|
||||
BlockStateMeta shieldbMeta = (BlockStateMeta)shieldMeta;
|
||||
|
||||
Banner banner = (Banner)shieldbMeta.getBlockState();
|
||||
banner.setPatterns(patternList);
|
||||
banner.update(); // TODO: find out if it is needed
|
||||
|
||||
shieldbMeta.setBlockState(banner);
|
||||
shieldStack.setItemMeta(shieldMeta);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user