Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package me.mrkirby153.plugins.theplague.listeners;
- import me.mrkirby153.plugins.theplague.arena.Arena;
- import me.mrkirby153.plugins.theplague.arena.infection.Infection;
- import me.mrkirby153.plugins.theplague.utils.ChatHelper;
- import org.bukkit.ChatColor;
- import org.bukkit.Material;
- import org.bukkit.entity.Player;
- import org.bukkit.event.EventHandler;
- import org.bukkit.event.Listener;
- import org.bukkit.event.entity.PlayerDeathEvent;
- import org.bukkit.event.player.PlayerItemConsumeEvent;
- import org.bukkit.inventory.ItemStack;
- import org.bukkit.potion.Potion;
- import org.bukkit.potion.PotionType;
- import java.util.Random;
- public class InfectionListener implements Listener {
- @EventHandler
- public void onDeath(PlayerDeathEvent event) {
- Player killer = event.getEntity().getKiller();
- Player killed = event.getEntity();
- if (!Arena.inArena(killed)) {
- return;
- }
- if (!Arena.inArena(killer)) {
- return;
- }
- String message = event.getDeathMessage();
- event.setDeathMessage("");
- if (Infection.isInfected(killer.getName())) {
- boolean firstTime = Infection.isInfected(killed.getName());
- Infection.addInfetionPrecent(killed.getName(), 10);
- Arena.sendMessageToArena(Arena.getCurrentArena(killed), ChatColor.GOLD + "[Death] " + ChatColor.RED + message);
- if (firstTime)
- ChatHelper.sendToPlayer(killed, ChatColor.RED + "You have been killed by " + killer.getName()
- + " and have become infected!");
- else
- ChatHelper.sendToPlayer(killed, ChatColor.RED + "The infection is spreading!");
- }
- }
- @EventHandler
- public void healInfection(PlayerItemConsumeEvent event) {
- if (!Arena.inArena(event.getPlayer())) {
- return;
- }
- if (event.getItem().getType().equals(Material.POTION)) {
- Potion p = Potion.fromItemStack(event.getItem());
- if (p.getType().equals(PotionType.REGEN)) {
- if (Infection.isInfected(event.getPlayer().getName())) {
- Infection.subtractInfectedPrecent(event.getPlayer().getName(), 10);
- ChatHelper.sendToPlayer(event.getPlayer(), ChatColor.GOLD + "That potion healed you by 10%!");
- Random random = new Random();
- if (random.nextInt(100) > 90) {
- ChatHelper.sendToPlayer(event.getPlayer(), ChatColor.GOLD + "Your potion bottle magicly refilled itself!");
- event.setItem(p.toItemStack(1));
- return;
- }
- event.getPlayer().setItemInHand(new ItemStack(Material.GLASS_BOTTLE));
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment