Package com.warrows.plugins.TreeSpirit.listeners

Source Code of com.warrows.plugins.TreeSpirit.listeners.TreeListener

package com.warrows.plugins.TreeSpirit.listeners;

import org.bukkit.Material;
import org.bukkit.block.Block;
import org.bukkit.block.BlockState;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.block.BlockBurnEvent;
import org.bukkit.event.block.BlockFadeEvent;
import org.bukkit.event.block.LeavesDecayEvent;
import org.bukkit.event.entity.EntityExplodeEvent;
import org.bukkit.event.world.StructureGrowEvent;

import com.warrows.plugins.TreeSpirit.trees.GreatTree;
import com.warrows.plugins.TreeSpirit.trees.TreesData;

public class TreeListener implements Listener
{
  /* Suivent les �v�nements suceptibles d'aggrandir un arbre */

  @EventHandler(ignoreCancelled = true)
  public void onTreeGrowing(StructureGrowEvent event)
  {
    GreatTree tree = TreesData.getGreatTree(event.getLocation().getBlock());
    if (tree == null)
      return;
    for (BlockState b : event.getBlocks())
      if (b.getType() == Material.LOG
          || b.getType() == Material.SAPLING
          || b.getType() == Material.LEAVES)
        tree.addToBody(b.getBlock());
  }

  /* Suivent les �v�nements suceptibles de reduire un arbre */

  @EventHandler(ignoreCancelled = true)
  public void onBlockBurnEvent(BlockBurnEvent event)
  {
    Block block = event.getBlock();
    GreatTree tree = TreesData.getGreatTree(block);
    if (tree != null)
      TreesData.destroyBlock(tree, block, event);
  }

  @EventHandler(ignoreCancelled = true)
  public void onBlockFadeEvent(BlockFadeEvent event)
  {
    Block block = event.getBlock();
    GreatTree tree = TreesData.getGreatTree(block);
    if (tree != null)
      TreesData.destroyBlock(tree, block, event);
  }

  @EventHandler(ignoreCancelled = true)
  public void onLeavesDecayEvent(LeavesDecayEvent event)
  {
    Block block = event.getBlock();
    GreatTree tree = TreesData.getGreatTree(block);
    if (tree != null)
      TreesData.destroyBlock(tree, block, event);
  }

  @EventHandler(ignoreCancelled = true)
  public void onTreeExplosion(EntityExplodeEvent event)
  {
    for (Block b : event.blockList())
    {
      Block block = b;
      GreatTree tree = TreesData.getGreatTree(block);
      if (tree != null)
        TreesData.destroyBlock(tree, b, event);
    }
  }
}
TOP

Related Classes of com.warrows.plugins.TreeSpirit.listeners.TreeListener

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.