Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import cpw.mods.fml.common.eventhandler.SubscribeEvent;
- import net.minecraft.block.Block;
- import net.minecraft.block.BlockLeavesBase;
- import net.minecraft.block.BlockLog;
- import net.minecraft.world.World;
- import net.minecraftforge.event.world.BlockEvent;
- /**
- * Created on 5/31/2014 at 1:21 PM
- * Must be registered with the MinecraftForge.EVENT_BUS
- */
- public class BlockBreakEventHandler {
- private static int logIndex = 0;
- public static int maxLogIndex = 20;
- @SubscribeEvent
- public void onBlockBreak(BlockEvent.BreakEvent event) {
- if (event.block instanceof BlockLog) {
- scanForLogs(event.world, event.x, event.y, event.z);
- }
- /*int xp = event.getExpToDrop();
- if (xp != 0) {
- event.getPlayer().experienceTotal += xp;
- event.setExpToDrop(0);
- }*/
- }
- private static void scanForLogs(World world, int x, int y, int z) {
- if (logIndex < maxLogIndex) {
- for (int i1 = -1; i1 < 1; i1++) {
- for (int i2 = -1; i2 < 1; i2++) {
- for (int i3 = -1; i3 < 1; i3++) {
- if (logIndex < maxLogIndex) {
- int newX = x + i1;
- int newY = y + i2;
- int newZ = z + i3;
- System.out.println(newX + ", " + newY + ", " + newZ);
- Block block = world.getBlock(newX, newY, newZ);
- if (block instanceof BlockLeavesBase) {
- //System.out.println("DETECTED LEAVES: " + newX + ", " + newY + ", " + newZ);
- block.breakBlock(world, newX, newY, newZ, block, world.getBlockMetadata(newX, newY, newZ));
- world.setBlockToAir(newX, newY, newZ);
- } else if (block instanceof BlockLog) {
- //System.out.println("DETECTED LOG: " + newX + ", " + newY + ", " + newZ);
- logIndex++;
- //System.out.println(logIndex);
- block.breakBlock(world, newX, newY, newZ, block, world.getBlockMetadata(newX, newY, newZ));
- world.setBlockToAir(newX, newY, newZ);
- scanForLogs(world, newX, newY, newZ);
- break;
- } else {
- break;
- }
- } else {
- break;
- }
- }
- }
- }
- } else {
- logIndex = 0;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement