added mob item drops

This commit is contained in:
0x01FE 2026-04-15 22:52:47 -05:00
parent 207423e987
commit 642ad215e7
2 changed files with 29 additions and 0 deletions

View File

@ -0,0 +1,5 @@
package net.hexa.MythicItems;
public class Constants {
public static Integer MYTHIC_DROP_CHANCE = 10; // 1 in n chances
}

View File

@ -4,16 +4,23 @@ import net.hexa.MythicItems.mythics.MythicEssence;
import net.hexa.MythicItems.mythics.MythicItem;
import org.bukkit.Bukkit;
import org.bukkit.entity.Enemy;
import org.bukkit.entity.Entity;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.block.Action;
import org.bukkit.event.block.BlockBreakEvent;
import org.bukkit.event.entity.EntityDeathEvent;
import org.bukkit.event.player.PlayerInteractEvent;
import org.bukkit.inventory.ItemStack;
import java.util.Random;
public class MythicListener implements Listener {
private static final Random random = new Random();
@EventHandler
public void onBlockBreak(BlockBreakEvent event) {
Player player = event.getPlayer();
@ -53,4 +60,21 @@ public class MythicListener implements Listener {
}
}
}
@EventHandler
public void onMobDeath(EntityDeathEvent event) {
Entity killer = event.getDamageSource().getCausingEntity();
Entity mob = event.getEntity();
if (killer instanceof Player && mob instanceof Enemy) {
int result = random.nextInt(1, Constants.MYTHIC_DROP_CHANCE + 1);
if (result == 1) {
ItemStack mythicReward = MythicEssence.rollMythic();
mob.getWorld().dropItemNaturally(
mob.getLocation(),
mythicReward
);
}
}
}
}