Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.lululombard.kingcreeper;
- import java.util.Hashtable;
- import org.bukkit.ChatColor;
- import org.bukkit.Material;
- import org.bukkit.World;
- import org.bukkit.entity.Creeper;
- import org.bukkit.entity.EntityType;
- import org.bukkit.entity.Player;
- import org.bukkit.event.EventHandler;
- import org.bukkit.event.EventPriority;
- import org.bukkit.event.Listener;
- import org.bukkit.event.entity.CreatureSpawnEvent;
- import org.bukkit.event.entity.PlayerDeathEvent;
- import org.bukkit.event.player.PlayerInteractEntityEvent;
- import org.bukkit.plugin.java.JavaPlugin;
- public class KingCreeper extends JavaPlugin implements Listener {
- Hashtable<Player, Boolean> isCreeperDeath = new Hashtable<Player, Boolean>();
- public void onEnable() {
- this.getServer().getPluginManager().registerEvents(this, this);
- getLogger().info("Ready to blow up some creepers !");
- }
- @EventHandler (priority = EventPriority.MONITOR)
- public void onMobSpawning(final CreatureSpawnEvent e) {
- if (!e.isCancelled() && e.getEntityType().equals(EntityType.CREEPER)) {
- int luck = (int) (Math.random()*200);
- if (luck < 1) {
- Creeper creeper = (Creeper) e.getEntity();
- creeper.setPowered(true);
- }
- }
- }
- @EventHandler (priority = EventPriority.MONITOR)
- public void onRightClick(final PlayerInteractEntityEvent e) {
- if (!e.isCancelled() && e.getRightClicked().getType().equals(EntityType.CREEPER) && e.getPlayer().getItemInHand().getType().equals(Material.REDSTONE_TORCH_ON)) {
- Player player = e.getPlayer();
- Creeper creeper = (Creeper) e.getRightClicked();
- if (creeper.isPowered()) return;
- int luck = (int) (Math.random()*20);
- if (luck < 1) {
- creeper.setPowered(true);
- for (World w : getServer().getWorlds()) for (Player p : w.getPlayers()) p.sendMessage(player.getDisplayName() + ChatColor.GOLD + " a tenté l'allumage d'un Creeper et a eu de la chance !");
- }
- else {
- isCreeperDeath.put(player, true);
- player.getWorld().createExplosion(player.getLocation(), 0);
- player.setHealth(0);
- creeper.setHealth(0);
- }
- }
- }
- @EventHandler (priority = EventPriority.HIGHEST)
- public void onPlayerDeath(PlayerDeathEvent e) {
- if (e.getEntity() instanceof Player) {
- Player player = (Player) e.getEntity();
- if (isCreeperDeath.containsKey(player)) {
- isCreeperDeath.remove(player);
- e.setDeathMessage(ChatColor.RED + player.getName() + ChatColor.DARK_RED + " a tenté l'allumage d'un Creeper.");
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement