Skip to content

Commit fc73998

Browse files
Fix bugs and bump version
1 parent db24231 commit fc73998

File tree

3 files changed

+24
-12
lines changed

3 files changed

+24
-12
lines changed

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
<groupId>parallelmc</groupId>
88
<artifactId>parallelutils</artifactId>
9-
<version>1.1.3</version>
9+
<version>1.2.0</version>
1010
<packaging>jar</packaging>
1111

1212
<name>Parallelutils</name>

src/main/java/parallelmc/parallelutils/Constants.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
public class Constants {
44

5-
public static final Version VERSION = new Version(1, 1, 3);
5+
public static final Version VERSION = new Version(1, 2, 0);
66
public static final String PLUGIN_NAME = "ParallelUtils";
77
public static final String DEFAULT_WORLD = "world";
88
}

src/main/java/parallelmc/parallelutils/modules/parallelitems/PlayerInteractListener.java

Lines changed: 22 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -6,13 +6,17 @@
66
import org.bukkit.block.data.Ageable;
77
import org.bukkit.block.data.BlockData;
88
import org.bukkit.block.data.type.Sapling;
9+
import org.bukkit.enchantments.Enchantment;
910
import org.bukkit.entity.HumanEntity;
11+
import org.bukkit.entity.Player;
12+
import org.bukkit.entity.Sheep;
1013
import org.bukkit.event.EventHandler;
1114
import org.bukkit.event.EventPriority;
1215
import org.bukkit.event.Listener;
1316
import org.bukkit.event.block.Action;
1417
import org.bukkit.event.entity.FoodLevelChangeEvent;
1518
import org.bukkit.event.player.PlayerInteractEvent;
19+
import org.bukkit.event.player.PlayerShearEntityEvent;
1620
import org.bukkit.inventory.ItemStack;
1721
import org.bukkit.inventory.meta.ItemMeta;
1822
import org.bukkit.persistence.PersistentDataType;
@@ -21,6 +25,7 @@
2125
import parallelmc.parallelutils.Constants;
2226
import parallelmc.parallelutils.Parallelutils;
2327

28+
import java.util.Random;
2429
import java.util.logging.Level;
2530

2631
/**
@@ -165,22 +170,29 @@ public void onHumanEat(FoodLevelChangeEvent event){
165170
public void playerShearEvent(PlayerShearEntityEvent event) {
166171
if (event.getEntity() instanceof Sheep) {
167172
// check for looting level
168-
Player player = event.getPlayer();
169-
if (player.getItemInHand().getType() == Material.SHEARS) {
170-
if (player.getItemInHand().getItemMeta().hasEnchant(Enchantment.LOOTING)) {
171-
int level = player.getItemInHand().getItemMeta().getEnchantLevel(Enchantment.LOOTING);
172-
event.setCancelled(true);
173-
//Generate random number of wool to drop based on looting level
173+
ItemStack shears = event.getItem();
174+
175+
if (shears.getType() == Material.SHEARS) {
176+
if (shears.getItemMeta().hasEnchant(Enchantment.LOOT_BONUS_MOBS)) {
177+
int level = shears.getItemMeta().getEnchantLevel(Enchantment.LOOT_BONUS_MOBS);
178+
179+
// Generate random number of wool to drop based on looting level
174180
Random random = new Random();
175-
int min = 1;
176181
int max = 3 + level;
177-
int numWool = random.nextInt((max-min)+1) + min;
182+
int numWool = random.nextInt((max-level)+1) + level;
178183

179184
// Make sheep drop their respective color of wool
180185
Sheep sheep = (Sheep) event.getEntity();
181-
Dyecolor woolColor = sheep.getColor();
182-
Material wool = Material.getMaterial(woolColor.toString() + "_WOOL");
186+
DyeColor woolColor = sheep.getColor();
187+
if (woolColor == null) {
188+
woolColor = DyeColor.WHITE;
189+
}
190+
191+
Material wool = Material.getMaterial(woolColor + "_" + "WOOL");
192+
183193
if (wool != null) {
194+
event.setCancelled(true);
195+
sheep.setSheared(true);
184196
event.getEntity().getWorld().dropItemNaturally(event.getEntity().getLocation(), new ItemStack(wool, numWool));
185197
}
186198
}

0 commit comments

Comments
 (0)