This commit is contained in:
paulevsGitch 2020-09-30 00:14:10 +03:00
parent 518e7b3fcf
commit 46ceaee8be
21 changed files with 207 additions and 55 deletions

View file

@ -5,6 +5,7 @@ import java.util.Map;
import net.minecraft.block.BlockState;
import net.minecraft.block.Blocks;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.Direction;
public class PosInfo {
private static final BlockState AIR = Blocks.AIR.getDefaultState();
@ -30,20 +31,20 @@ public class PosInfo {
this.state = state;
}
public BlockState getStateUp() {
PosInfo info = blocks.get(pos.up());
public BlockState getState(Direction dir) {
PosInfo info = blocks.get(pos.offset(dir));
if (info == null) {
return AIR;
}
return info.getState();
}
public BlockState getStateUp() {
return getState(Direction.UP);
}
public BlockState getStateDown() {
PosInfo info = blocks.get(pos.down());
if (info == null) {
return AIR;
}
return info.getState();
return getState(Direction.DOWN);
}
public int hashCode() {

View file

@ -2,6 +2,7 @@ package ru.betterend.util.sdf.primitive;
import java.util.function.Function;
import net.minecraft.block.Block;
import net.minecraft.block.BlockState;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.MathHelper;
@ -20,6 +21,10 @@ public class SDFCapedCone extends SDFPrimitive {
super(state);
}
public SDFCapedCone(Block block) {
super(block);
}
public SDFCapedCone setRadius1(float radius) {
this.radius1 = radius;
return this;

View file

@ -2,6 +2,7 @@ package ru.betterend.util.sdf.primitive;
import java.util.function.Function;
import net.minecraft.block.Block;
import net.minecraft.block.BlockState;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.MathHelper;
@ -19,6 +20,10 @@ public class SDFCapsule extends SDFPrimitive {
super(state);
}
public SDFCapsule(Block block) {
super(block);
}
public SDFCapsule setRadius(float radius) {
this.radius = radius;
return this;

View file

@ -2,6 +2,7 @@ package ru.betterend.util.sdf.primitive;
import java.util.function.Function;
import net.minecraft.block.Block;
import net.minecraft.block.BlockState;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.MathHelper;
@ -24,6 +25,10 @@ public class SDFLine extends SDFPrimitive {
super(state);
}
public SDFLine(Block block) {
super(block);
}
public SDFLine setRadius(float radius) {
this.radius = radius;
return this;

View file

@ -2,6 +2,7 @@ package ru.betterend.util.sdf.primitive;
import java.util.function.Function;
import net.minecraft.block.Block;
import net.minecraft.block.BlockState;
import net.minecraft.util.math.BlockPos;
import ru.betterend.util.sdf.SDF;
@ -19,6 +20,12 @@ public abstract class SDFPrimitive extends SDF {
};
}
public SDFPrimitive(Block block) {
this.placerFunction = (pos) -> {
return block.getDefaultState();
};
}
public BlockState getBlockState(BlockPos pos) {
return placerFunction.apply(pos);
}

View file

@ -2,6 +2,7 @@ package ru.betterend.util.sdf.primitive;
import java.util.function.Function;
import net.minecraft.block.Block;
import net.minecraft.block.BlockState;
import net.minecraft.util.math.BlockPos;
import ru.betterend.util.MHelper;
@ -17,6 +18,10 @@ public class SDFSphere extends SDFPrimitive {
super(state);
}
public SDFSphere(Block block) {
super(block);
}
public SDFSphere setRadius(float radius) {
this.radius = radius;
return this;