Package org.yi.acru.bukkit.Lockette

Source Code of org.yi.acru.bukkit.Lockette.LocketteEntityListener

//
// This file is a component of Lockette for Bukkit, and was written by Acru Jovian.
// Distributed under the The Non-Profit Open Software License version 3.0 (NPOSL-3.0)
// http://www.opensource.org/licenses/NOSL3.0
//


package org.yi.acru.bukkit.Lockette;

// Imports.
import org.bukkit.Material;
import org.bukkit.block.Block;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.Listener;
import org.bukkit.plugin.PluginManager;

import org.bukkit.event.entity.EntityExplodeEvent;



public class LocketteEntityListener implements Listener{
  private static Lockette    plugin;
 
 
  public LocketteEntityListener(Lockette instance){
    plugin = instance;
  }
 
 
  protected void registerEvents(){
    PluginManager  pm = plugin.getServer().getPluginManager();
   
    pm.registerEvents(this, plugin);
  }
 
 
  //********************************************************************************************************************
  // Start of event section
 
 
  @EventHandler(priority = EventPriority.HIGHEST)
  public void onEntityExplode(EntityExplodeEvent event){
    if(event.isCancelled()) return;
   
    //List<Block> blockList = event.blockList();
    int      x;//, count = event.blockList().size();
    Block    block;
   
   
    // Check the block list for any protected blocks, and cancel the event if any are found.
   
    for(x = 0; x < event.blockList().size(); ++x){
      block = event.blockList().get(x);
     
      if(Lockette.isProtected(block)){
        //event.setCancelled(true);
        //return;
        event.blockList().remove(x);
        --x;
        //--count;
        continue;
      }
     
      if(Lockette.explosionProtectionAll){
        if((block.getTypeId() == Material.CHEST.getId()) || (block.getTypeId() == Material.DISPENSER.getId()) ||
            (block.getTypeId() == Material.FURNACE.getId()) || (block.getTypeId() == Material.BURNING_FURNACE.getId()) ||
            (block.getTypeId() == Material.BREWING_STAND.getId())){
          //event.setCancelled(true);
          //return;
          event.blockList().remove(x);
          --x;
          //--count;
          continue;
        }
      }
    }
  }
}

TOP

Related Classes of org.yi.acru.bukkit.Lockette.LocketteEntityListener

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.