// 
// Decompiled by Procyon v0.6.0
// 

package com.hypixel.hytale.server.core.event.events.ecs;

import com.hypixel.hytale.server.core.asset.type.blocktype.config.BlockType;
import javax.annotation.Nonnull;
import com.hypixel.hytale.math.vector.Vector3i;
import javax.annotation.Nullable;
import com.hypixel.hytale.server.core.inventory.ItemStack;
import com.hypixel.hytale.component.system.CancellableEcsEvent;

public class DamageBlockEvent extends CancellableEcsEvent
{
    @Nullable
    private final ItemStack itemInHand;
    @Nonnull
    private Vector3i targetBlock;
    @Nonnull
    private final BlockType blockType;
    private final float currentDamage;
    private float damage;
    
    public DamageBlockEvent(@Nullable final ItemStack itemInHand, @Nonnull final Vector3i targetBlock, @Nonnull final BlockType blockType, final float currentDamage, final float damage) {
        this.itemInHand = itemInHand;
        this.targetBlock = targetBlock;
        this.blockType = blockType;
        this.currentDamage = currentDamage;
        this.damage = damage;
    }
    
    @Nullable
    public ItemStack getItemInHand() {
        return this.itemInHand;
    }
    
    @Nonnull
    public Vector3i getTargetBlock() {
        return this.targetBlock;
    }
    
    public void setTargetBlock(@Nonnull final Vector3i targetBlock) {
        this.targetBlock = targetBlock;
    }
    
    @Nonnull
    public BlockType getBlockType() {
        return this.blockType;
    }
    
    public float getCurrentDamage() {
        return this.currentDamage;
    }
    
    public float getDamage() {
        return this.damage;
    }
    
    public void setDamage(final float damage) {
        this.damage = damage;
    }
}
