Cleaned commands and extents a bit.

This commit is contained in:
MattBDev
2019-06-23 14:00:22 -04:00
parent cd8bc6f733
commit 753b34ef99
11 changed files with 68 additions and 153 deletions

View File

@ -10,6 +10,7 @@ import com.boydti.fawe.util.StringMan;
import com.boydti.fawe.util.chat.Message;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import com.sk89q.worldedit.extension.platform.Actor;
import java.io.File;
import java.lang.reflect.InvocationTargetException;
@ -549,6 +550,16 @@ public enum BBC {
player.sendMessage((PREFIX.isEmpty() ? "" : PREFIX.s() + " ") + this.format(args));
}
}
public void send(final Actor player, final Object... args) {
if (isEmpty()) {
return;
}
if (player == null) {
Fawe.debug(this.format(args));
} else {
player.print(this.format(args));
}
}
public static char getCode(String name) {
switch (name) {

View File

@ -1,81 +0,0 @@
package com.boydti.fawe.object.extent;
import com.sk89q.worldedit.EditSession;
import com.sk89q.worldedit.WorldEditException;
import com.sk89q.worldedit.world.block.BaseBlock;
import com.sk89q.worldedit.world.block.BlockState;
import com.sk89q.worldedit.entity.BaseEntity;
import com.sk89q.worldedit.entity.Entity;
import com.sk89q.worldedit.extent.Extent;
import com.sk89q.worldedit.function.operation.Operation;
import com.sk89q.worldedit.math.BlockVector2;
import com.sk89q.worldedit.math.BlockVector3;
import com.sk89q.worldedit.regions.Region;
import com.sk89q.worldedit.util.Location;
import com.sk89q.worldedit.world.biome.BiomeType;
import com.sk89q.worldedit.world.block.BlockStateHolder;
import java.util.Collections;
import java.util.List;
import javax.annotation.Nullable;
public class EmptyExtent implements Extent {
public EmptyExtent() {
}
public BlockVector3 getMinimumPoint() {
return BlockVector3.ZERO;
}
public BlockVector3 getMaximumPoint() {
return BlockVector3.ZERO;
}
public List<Entity> getEntities(Region region) {
return Collections.emptyList();
}
public List<Entity> getEntities() {
return Collections.emptyList();
}
@Nullable
public Entity createEntity(Location location, BaseEntity entity) {
return null;
}
@Override
public BaseBlock getFullBlock(BlockVector3 position) {
return EditSession.nullBlock.toBaseBlock();
}
@Override
public BlockState getLazyBlock(BlockVector3 position) {
return EditSession.nullBlock;
}
@Nullable
public BiomeType getBiome(BlockVector2 position) {
return null;
}
@Override
public boolean setBlock(BlockVector3 position, BlockStateHolder block) throws WorldEditException {
return false;
}
@Override
public boolean setBiome(BlockVector2 position, BiomeType biome) {
return false;
}
@Override
public boolean setBiome(int x, int y, int z, BiomeType biome) {
return false;
}
@Nullable
public Operation commit() {
return null;
}
}

View File

@ -3,11 +3,13 @@ package com.boydti.fawe.object.extent;
import com.boydti.fawe.object.FaweQueue;
import com.boydti.fawe.object.HasFaweQueue;
import com.boydti.fawe.util.ReflectionUtils;
import com.sk89q.jnbt.*;
import com.sk89q.jnbt.CompoundTag;
import com.sk89q.jnbt.DoubleTag;
import com.sk89q.jnbt.FloatTag;
import com.sk89q.jnbt.ListTag;
import com.sk89q.jnbt.StringTag;
import com.sk89q.jnbt.Tag;
import com.sk89q.worldedit.WorldEditException;
import com.sk89q.worldedit.world.biome.BiomeTypes;
import com.sk89q.worldedit.world.block.BaseBlock;
import com.sk89q.worldedit.world.block.BlockState;
import com.sk89q.worldedit.entity.BaseEntity;
import com.sk89q.worldedit.entity.Entity;
import com.sk89q.worldedit.extent.AbstractDelegateExtent;
@ -17,23 +19,26 @@ import com.sk89q.worldedit.regions.Region;
import com.sk89q.worldedit.util.Location;
import com.sk89q.worldedit.world.World;
import com.sk89q.worldedit.world.biome.BiomeType;
import com.sk89q.worldedit.world.block.BaseBlock;
import com.sk89q.worldedit.world.block.BlockState;
import com.sk89q.worldedit.world.block.BlockStateHolder;
import com.sk89q.worldedit.world.block.BlockType;
import com.sk89q.worldedit.world.block.BlockTypes;
import java.util.*;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class FastWorldEditExtent extends AbstractDelegateExtent implements HasFaweQueue {
private final World world;
private FaweQueue queue;
private final int maxY;
public FastWorldEditExtent(final World world, FaweQueue queue) {
super(queue);
this.world = world;
this.queue = queue;
this.maxY = world.getMaxY();
}
public FaweQueue getQueue() {
@ -112,7 +117,7 @@ public class FastWorldEditExtent extends AbstractDelegateExtent implements HasFa
public <B extends BlockStateHolder<B>> boolean setBlock(final BlockVector3 location, final B block) throws WorldEditException {
return setBlock(location.getBlockX(), location.getBlockY(), location.getBlockZ(), block);
}
@Override
@ -129,10 +134,9 @@ public class FastWorldEditExtent extends AbstractDelegateExtent implements HasFa
public BlockState getLazyBlock(int x, int y, int z) {
int combinedId4Data = queue.getCombinedId4Data(x, y, z, 0);
BlockType type = BlockTypes.getFromStateId(combinedId4Data);
BlockState state = type.withStateId(combinedId4Data);
return state;
return type.withStateId(combinedId4Data);
}
@Override
public BaseBlock getFullBlock(BlockVector3 pos) {
int combinedId4Data = queue.getCombinedId4Data(pos.getBlockX(), pos.getBlockY(), pos.getBlockZ(), 0);

View File

@ -2,7 +2,6 @@ package com.boydti.fawe.object.extent;
import com.sk89q.worldedit.WorldEditException;
import com.sk89q.worldedit.world.block.BlockState;
import com.sk89q.worldedit.extent.Extent;
import com.sk89q.worldedit.function.pattern.Pattern;
import com.sk89q.worldedit.math.BlockVector3;
@ -20,4 +19,4 @@ public class PatternTransform extends ResettableExtent {
public boolean setBlock(BlockVector3 location, BlockStateHolder block) throws WorldEditException {
return pattern.apply(getExtent(), location, location);
}
}
}

View File

@ -42,8 +42,7 @@ public class PositionTransformExtent extends ResettableExtent {
mutable.mutY(((pos.getY() - min.getY())));
mutable.mutZ(((pos.getZ() - min.getZ())));
MutableVector3 tmp = new MutableVector3(transform.apply(mutable.toVector3()));
BlockVector3 result = min.add(tmp.toBlockPoint());
return result;
return min.add(tmp.toBlockPoint());
}
@Override
@ -60,7 +59,7 @@ public class PositionTransformExtent extends ResettableExtent {
public BlockState getBlock(BlockVector3 position) {
return super.getBlock(getPos(position));
}
@Override
public BaseBlock getFullBlock(BlockVector3 position) {
return super.getFullBlock(getPos(position));

View File

@ -5,7 +5,6 @@ import com.boydti.fawe.object.random.SimpleRandom;
import com.boydti.fawe.object.random.TrueRandom;
import com.sk89q.worldedit.extent.AbstractDelegateExtent;
import com.sk89q.worldedit.extent.Extent;
import com.sk89q.worldedit.function.pattern.RandomPattern;
import java.util.HashMap;
import java.util.LinkedHashSet;
import java.util.Map;
@ -80,4 +79,4 @@ public class RandomTransform extends SelectTransform {
public RandomCollection<ResettableExtent> getCollection() {
return collection;
}
}
}

View File

@ -16,17 +16,14 @@ public class TransformExtent extends BlockTransformExtent {
private final MutableBlockVector3 mutable = new MutableBlockVector3();
private BlockVector3 min;
private int maxy;
public TransformExtent(Extent parent) {
super(parent);
this.maxy = parent.getMaximumPoint().getBlockY();
}
@Override
public ResettableExtent setExtent(Extent extent) {
min = null;
maxy = extent.getMaximumPoint().getBlockY();
return super.setExtent(extent);
}
@ -91,7 +88,7 @@ public class TransformExtent extends BlockTransformExtent {
public BlockState getBlock(BlockVector3 position) {
return transform(super.getBlock(getPos(position)));
}
@Override
public BaseBlock getFullBlock(BlockVector3 position) {
return transform(super.getFullBlock(getPos(position)));

View File

@ -18,7 +18,6 @@ public class SurfaceRandomOffsetPattern extends AbstractPattern {
private transient MutableBlockVector3 cur;
private transient MutableBlockVector3[] buffer;
private transient MutableBlockVector3[] allowed;
private transient MutableBlockVector3 next;
public SurfaceRandomOffsetPattern(Pattern pattern, int distance) {
this.pattern = pattern;
@ -44,6 +43,7 @@ public class SurfaceRandomOffsetPattern extends AbstractPattern {
cur.setComponents(pos);
for (int move = 0; move < moves; move++) {
int index = 0;
MutableBlockVector3 next;
for (int i = 0; i < allowed.length; i++) {
next = buffer[i];
BlockVector3 dir = BreadthFirstSearch.DIAGONAL_DIRECTIONS[i];