mirror of https://github.com/mcMMO-Dev/mcMMO.git
Compare commits
2 Commits
0979af326d
...
f0691e494d
Author | SHA1 | Date |
---|---|---|
Thiago Gebrim | f0691e494d | |
Thiago Gebrim | 9093ab24fd |
|
@ -765,21 +765,27 @@ public class HerbalismManager extends SkillManager {
|
|||
case "carrots":
|
||||
seed = Material.matchMaterial("CARROT");
|
||||
break;
|
||||
|
||||
case "wheat":
|
||||
seed = Material.matchMaterial("WHEAT_SEEDS");
|
||||
break;
|
||||
|
||||
case "nether_wart":
|
||||
seed = Material.matchMaterial("NETHER_WART");
|
||||
seed = Material.getMaterial("NETHER_WART");
|
||||
break;
|
||||
|
||||
case "potatoes":
|
||||
seed = Material.matchMaterial("POTATO");
|
||||
break;
|
||||
|
||||
case "beetroots":
|
||||
seed = Material.matchMaterial("BEETROOT_SEEDS");
|
||||
break;
|
||||
|
||||
case "cocoa":
|
||||
seed = Material.matchMaterial("COCOA_BEANS");
|
||||
break;
|
||||
|
||||
case "torchflower":
|
||||
seed = Material.matchMaterial("TORCHFLOWER_SEEDS");
|
||||
break;
|
||||
|
@ -798,7 +804,8 @@ public class HerbalismManager extends SkillManager {
|
|||
return false;
|
||||
}
|
||||
|
||||
if (!playerInventory.contains(seedStack)) {
|
||||
// Check for seeds in both the main hand and off-hand
|
||||
if (!(playerInventory.containsAtLeast(seedStack, 1) || playerInventory.getItemInOffHand().getType() == seed)) {
|
||||
NotificationManager.sendPlayerInformation(player, NotificationType.REQUIREMENTS_NOT_MET, "Skills.NeedMore", StringUtils.getPrettyItemString(seed));
|
||||
return false;
|
||||
}
|
||||
|
@ -807,20 +814,40 @@ public class HerbalismManager extends SkillManager {
|
|||
return false;
|
||||
}
|
||||
|
||||
// Check if the event should be cancelled based on the sub-skill block event
|
||||
if (EventUtils.callSubSkillBlockEvent(player, SubSkillType.HERBALISM_GREEN_THUMB, blockState.getBlock()).isCancelled()) {
|
||||
return false;
|
||||
} else {
|
||||
playerInventory.removeItem(new ItemStack(seed, 1));
|
||||
boolean seedFound = false;
|
||||
// Retrieve all contents from the player's inventory
|
||||
ItemStack[] inventoryContents = player.getInventory().getContents();
|
||||
|
||||
player.updateInventory();
|
||||
// Iterate through each item in the inventory to find the seed
|
||||
for (ItemStack item : inventoryContents) {
|
||||
if (item != null && item.getType() == seed) {
|
||||
item.setAmount(item.getAmount() - 1); // Decrement the amount of the seed
|
||||
if (item.getAmount() <= 0) {
|
||||
item.setType(Material.AIR); // Completely remove the item if the count goes to zero
|
||||
}
|
||||
seedFound = true;
|
||||
break; // Stop the loop once the seed is found and modified
|
||||
}
|
||||
}
|
||||
|
||||
if (!seedFound) {
|
||||
return false; // Return false if the seed was not found in the inventory
|
||||
}
|
||||
|
||||
player.updateInventory(); // Update the player's inventory to reflect changes
|
||||
|
||||
// Play a sound effect to indicate the item was consumed
|
||||
SoundManager.sendSound(player, player.getLocation(), SoundType.ITEM_CONSUMED);
|
||||
return true;
|
||||
}
|
||||
|
||||
// new HerbalismBlockUpdaterTask(blockState).runTaskLater(mcMMO.p, 0);
|
||||
return true; // Return true to indicate the operation was successful
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private boolean processGrowingPlants(BlockState blockState, Ageable ageable, BlockBreakEvent blockBreakEvent, boolean greenTerra) {
|
||||
//This check is needed
|
||||
if(isBizarreAgeable(ageable)) {
|
||||
|
@ -889,4 +916,4 @@ public class HerbalismManager extends SkillManager {
|
|||
|
||||
return RankUtils.getRank(getPlayer(), SubSkillType.HERBALISM_GREEN_THUMB);
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue