fix: correct issues with processor scopes (#2230)

This commit is contained in:
Jordan 2023-05-20 15:21:11 +01:00 committed by GitHub
parent 52723439dd
commit 2a08ad28a4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 8 additions and 8 deletions

View File

@ -141,7 +141,7 @@ public class DisallowedBlocksExtent extends AbstractDelegateExtent implements IB
BlockState state = BlockTypesCache.states[block];
if (blockedBlocks != null) {
if (blockedBlocks.contains(state.getBlockType().getId())) {
blocks[i] = 0;
blocks[i] = BlockTypesCache.ReservedIDs.__RESERVED__;
continue;
}
}
@ -150,7 +150,7 @@ public class DisallowedBlocksExtent extends AbstractDelegateExtent implements IB
}
for (FuzzyBlockState fuzzy : blockedStates) {
if (fuzzy.equalsFuzzy(state)) {
blocks[i] = 0;
blocks[i] = BlockTypesCache.ReservedIDs.__RESERVED__;
continue it;
}
}
@ -178,7 +178,7 @@ public class DisallowedBlocksExtent extends AbstractDelegateExtent implements IB
@Override
public ProcessorScope getScope() {
return ProcessorScope.CHANGING_BLOCKS;
return ProcessorScope.REMOVING_BLOCKS;
}
}

View File

@ -168,7 +168,7 @@ public abstract class FaweRegionExtent extends ResettableExtent implements IBatc
@Override
public ProcessorScope getScope() {
return ProcessorScope.READING_SET_BLOCKS;
return ProcessorScope.REMOVING_BLOCKS;
}
}

View File

@ -257,7 +257,7 @@ public class MultiBatchProcessor implements IBatchProcessor {
for (IBatchProcessor processor : processors) {
scope = Math.max(scope, processor.getScope().intValue());
}
return ProcessorScope.valueOf(0);
return ProcessorScope.valueOf(scope);
}
/**

View File

@ -3,9 +3,9 @@ package com.fastasyncworldedit.core.extent.processor;
/**
* The scope of a processor.
* Order in which processors are executed:
* - ADDING_BLOCKS (processors that strictly ADD blocks to an edit ONLY)
* - CHANGING_BLOCKS (processors that strictly ADD or CHANGE blocks being set)
* - REMOVING_BLOCKS (processors that string ADD, CHANGE or REMOVE blocks being set)
* - ADDING_BLOCKS (processors that may ADD blocks to an edit ONLY)
* - CHANGING_BLOCKS (processors that may ADD or CHANGE blocks being set)
* - REMOVING_BLOCKS (processors that may ADD, CHANGE or REMOVE blocks being set)
* - CUSTOM (processors that do not specify a SCOPE)
* - READING_SET_BLOCKS (processors that do not alter blocks at all, and read the blocks that are actually going to set, e.g. history processors)
*/