2019-04-19 14:45:25 +02:00

51 lines
1.3 KiB
Java

package com.thevoxelbox.voxelsniper.brush;
import com.boydti.fawe.bukkit.wrapper.AsyncBlock;
import com.thevoxelbox.voxelsniper.Message;
import com.thevoxelbox.voxelsniper.SnipeData;
import com.thevoxelbox.voxelsniper.brush.perform.PerformBrush;
/**
* http://www.voxelwiki.com/minecraft/Voxelsniper#The_Voxel_Disc_Brush
*
* @author Voxel
*/
public class VoxelDiscBrush extends PerformBrush {
/**
*
*/
public VoxelDiscBrush() {
this.setName("Voxel Disc");
}
private void disc(final SnipeData v, AsyncBlock targetBlock) {
for (int x = v.getBrushSize(); x >= -v.getBrushSize(); x--) {
for (int z = v.getBrushSize(); z >= -v.getBrushSize(); z--) {
current.perform(targetBlock.getRelative(x, 0, z));
}
}
v.owner().storeUndo(this.current.getUndo());
}
@Override
protected final void arrow(final SnipeData v) {
this.disc(v, this.getTargetBlock());
}
@Override
protected final void powder(final SnipeData v) {
this.disc(v, this.getLastBlock());
}
@Override
public final void info(final Message vm) {
vm.brushName(this.getName());
vm.size();
}
@Override
public String getPermissionNode() {
return "voxelsniper.brush.voxeldisc";
}
}