Fix rift speed up and make portals render on both sides
This commit is contained in:
parent
932aa6857b
commit
d52206e538
5 changed files with 13 additions and 10 deletions
|
@ -19,7 +19,7 @@ public final class DimensionalWallRenderer {
|
|||
private static final FloatBuffer buffer = GLAllocation.createDirectFloatBuffer(16);
|
||||
private static final ResourceLocation warpPath = new ResourceLocation(DimDoors.MODID + ":textures/other/warp.png");
|
||||
|
||||
// TODO: any angle
|
||||
// TODO: any renderAngle
|
||||
/**
|
||||
* @param x The x coordinate of the wall's center.
|
||||
* @param y The y coordinate of the wall's center.
|
||||
|
@ -33,6 +33,7 @@ public final class DimensionalWallRenderer {
|
|||
*/
|
||||
public static void renderDimensionalWall(double x, double y, double z, EnumFacing orientation, double width, double height, RGBA[] colors) {
|
||||
GlStateManager.disableLighting();
|
||||
GlStateManager.disableCull();
|
||||
|
||||
for (int pass = 0; pass < 16; pass++) {
|
||||
GlStateManager.pushMatrix();
|
||||
|
@ -175,6 +176,7 @@ public final class DimensionalWallRenderer {
|
|||
GlStateManager.disableTexGenCoord(GlStateManager.TexGen.T);
|
||||
GlStateManager.disableTexGenCoord(GlStateManager.TexGen.R);
|
||||
GlStateManager.disableTexGenCoord(GlStateManager.TexGen.Q);
|
||||
GlStateManager.enableCull();
|
||||
GlStateManager.enableLighting();
|
||||
}
|
||||
|
||||
|
|
|
@ -142,14 +142,12 @@ public class TileEntityFloatingRiftRenderer extends TileEntitySpecialRenderer<Ti
|
|||
new Vector4f(0.5f,0.5f,-0.5f,0.5f)
|
||||
};
|
||||
|
||||
private double angle = 0;
|
||||
|
||||
/**
|
||||
* Renders the rift.
|
||||
*/
|
||||
@Override
|
||||
public void render(TileEntityFloatingRift te, double x, double y, double z, float partialTicks, int destroyStage, float alpha) {
|
||||
double radian = update(partialTicks) * TrigMath.DEG_TO_RAD;
|
||||
double radian = update(te, partialTicks) * TrigMath.DEG_TO_RAD;
|
||||
RGBA color = te.getColor();
|
||||
if (color == null) color = new RGBA(1, 0.5f, 1, 1);
|
||||
|
||||
|
@ -182,9 +180,9 @@ public class TileEntityFloatingRiftRenderer extends TileEntitySpecialRenderer<Ti
|
|||
GlStateManager.enableLighting();
|
||||
}
|
||||
|
||||
private double update(float partialTicks) {
|
||||
angle = (angle + 1 * partialTicks) % 360;
|
||||
return angle;
|
||||
private double update(TileEntityFloatingRift te, float partialTicks) {
|
||||
te.renderAngle = (te.renderAngle + 1 * partialTicks) % 360;
|
||||
return te.renderAngle;
|
||||
}
|
||||
|
||||
private Vector4f rotation(Vector4f v, double angle) {
|
||||
|
|
|
@ -111,6 +111,4 @@ import java.util.Random;
|
|||
public boolean isFloating() {
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -4,6 +4,8 @@ import lombok.Setter;
|
|||
import net.minecraft.block.state.IBlockState;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraftforge.fml.relauncher.Side;
|
||||
import net.minecraftforge.fml.relauncher.SideOnly;
|
||||
import org.dimdev.ddutils.nbt.NBTUtils;
|
||||
import org.dimdev.annotatednbt.Saved;
|
||||
import org.dimdev.annotatednbt.NBTSerializable;
|
||||
|
@ -38,6 +40,9 @@ import net.minecraft.util.math.AxisAlignedBB;
|
|||
|
||||
@Setter private boolean unregisterDisabled = false;
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
public double renderAngle = 0;
|
||||
|
||||
public TileEntityFloatingRift() {
|
||||
updateTimer = random.nextInt(UPDATE_PERIOD);
|
||||
}
|
||||
|
|
|
@ -40,7 +40,7 @@ public abstract class WorldProviderPocket extends WorldProvider {
|
|||
|
||||
@Override public boolean canCoordinateBeSpawn(int x, int z) { return true; } // Spawn is set even if it canCoordinateBeSpawn is false after 1000 tries anyway
|
||||
|
||||
@Override public int getAverageGroundLevel() { return 15; } // TODO: set this to 10 + yBase in the config
|
||||
@Override public int getAverageGroundLevel() { return 0; } // Pocket worlds are mostly void-filled
|
||||
|
||||
@Override public boolean shouldMapSpin(String entity, double x, double z, double rotation) { return true; }
|
||||
|
||||
|
|
Loading…
Reference in a new issue