mirror of
https://github.com/YouHaveTrouble/BlockEdit.git
synced 2026-06-30 05:56:18 +00:00
Custom operations are now possible!
This commit is contained in:
@@ -0,0 +1,21 @@
|
||||
package me.youhavetrouble.blockedit.api;
|
||||
|
||||
import me.youhavetrouble.blockedit.WorkSplitter;
|
||||
import me.youhavetrouble.blockedit.util.ChunkWork;
|
||||
import me.youhavetrouble.blockedit.util.Selection;
|
||||
|
||||
import java.util.HashSet;
|
||||
|
||||
public class BlockEditAPI {
|
||||
|
||||
/**
|
||||
* @param selection The area that will be operated on
|
||||
* @param chunksPerTick Amount of chunks per tick to modify
|
||||
* @param operation Operation to execute
|
||||
*/
|
||||
public static void runOperation(Selection selection, int chunksPerTick, BlockEditOperation operation) {
|
||||
HashSet<ChunkWork> work = WorkSplitter.getOperatedOnChunks(selection);
|
||||
WorkSplitter.runOperation(work, selection, chunksPerTick, operation);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
package me.youhavetrouble.blockedit.api;
|
||||
|
||||
import org.bukkit.block.Block;
|
||||
|
||||
public interface BlockEditOperation {
|
||||
|
||||
/**
|
||||
* This function will run for every block in the selection it is executed on.
|
||||
* @param block Current block.
|
||||
*/
|
||||
void transformBlock(Block block);
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user