package me.shedaniel.lightoverlay;
-import com.mojang.blaze3d.platform.GlStateManager;
+import com.mojang.blaze3d.systems.RenderSystem;
import net.minecraft.block.Block;
import net.minecraft.block.BlockState;
import net.minecraft.client.Minecraft;
// Check block state allow spawning (excludes bedrock and barriers automatically)
if (!blockBelowState.canEntitySpawn(world, pos.down(), testingEntityType))
return CrossType.NONE;
- if (world.getLightFor(LightType.BLOCK, pos) >= 8)
+ if (world.func_226658_a_(LightType.BLOCK, pos) >= 8)
return CrossType.NONE;
- if (world.getLightFor(LightType.SKY, pos) >= 8)
+ if (world.func_226658_a_(LightType.SKY, pos) >= 8)
return CrossType.YELLOW;
return CrossType.RED;
}
public static void renderCross(World world, BlockPos pos, int color, PlayerEntity entity) {
ActiveRenderInfo info = Minecraft.getInstance().gameRenderer.getActiveRenderInfo();
- GlStateManager.lineWidth(lineWidth);
- GlStateManager.depthMask(false);
- GlStateManager.disableTexture();
+ RenderSystem.lineWidth(lineWidth);
+ RenderSystem.depthMask(false);
Tessellator tessellator = Tessellator.getInstance();
BufferBuilder buffer = tessellator.getBuffer();
double d0 = info.getProjectedView().x;
if (!upperOutlineShape.isEmpty())
d1 -= upperOutlineShape.getEnd(Direction.Axis.Y);
double d2 = info.getProjectedView().z;
-
buffer.begin(1, DefaultVertexFormats.POSITION_COLOR);
int red = (color >> 16) & 255;
int green = (color >> 8) & 255;
int blue = color & 255;
- buffer.pos(pos.getX() + .01 - d0, pos.getY() - d1, pos.getZ() + .01 - d2).color(red, green, blue, 255).endVertex();
- buffer.pos(pos.getX() - .01 + 1 - d0, pos.getY() - d1, pos.getZ() - .01 + 1 - d2).color(red, green, blue, 255).endVertex();
- buffer.pos(pos.getX() - .01 + 1 - d0, pos.getY() - d1, pos.getZ() + .01 - d2).color(red, green, blue, 255).endVertex();
- buffer.pos(pos.getX() + .01 - d0, pos.getY() - d1, pos.getZ() - .01 + 1 - d2).color(red, green, blue, 255).endVertex();
+ buffer.func_225582_a_(pos.getX() + .01 - d0, pos.getY() - d1, pos.getZ() + .01 - d2).func_225586_a_(red, green, blue, 255).endVertex();
+ buffer.func_225582_a_(pos.getX() - .01 + 1 - d0, pos.getY() - d1, pos.getZ() - .01 + 1 - d2).func_225586_a_(red, green, blue, 255).endVertex();
+ buffer.func_225582_a_(pos.getX() - .01 + 1 - d0, pos.getY() - d1, pos.getZ() + .01 - d2).func_225586_a_(red, green, blue, 255).endVertex();
+ buffer.func_225582_a_(pos.getX() + .01 - d0, pos.getY() - d1, pos.getZ() - .01 + 1 - d2).func_225586_a_(red, green, blue, 255).endVertex();
tessellator.draw();
- GlStateManager.depthMask(true);
- GlStateManager.enableTexture();
+ RenderSystem.depthMask(true);
}
@SubscribeEvent(receiveCanceled = true)
@SubscribeEvent
public static void renderWorldLast(RenderWorldLastEvent event) {
if (LightOverlayClient.enabled) {
+ RenderSystem.pushMatrix();
+ RenderSystem.loadIdentity();
+ RenderSystem.multMatrix(event.getMatrixStack().func_227866_c_().func_227870_a_());
Minecraft client = Minecraft.getInstance();
ClientPlayerEntity playerEntity = client.player;
World world = client.world;
- GlStateManager.disableTexture();
- GlStateManager.disableBlend();
- BlockPos playerPos = new BlockPos(playerEntity.posX, playerEntity.posY, playerEntity.posZ);
+ RenderSystem.disableTexture();
+ RenderSystem.disableBlend();
+ BlockPos playerPos = playerEntity.getPosition();
BlockPos.getAllInBox(playerPos.add(-reach, -reach, -reach), playerPos.add(reach, reach, reach)).forEach(pos -> {
- Biome biome = world.getBiome(pos);
+ Biome biome = world.func_226691_t_(pos);
if (biome.getSpawningChance() > 0 && !biome.getSpawns(EntityClassification.MONSTER).isEmpty()) {
CrossType type = LightOverlayClient.getCrossType(pos, world, playerEntity);
if (type != CrossType.NONE) {
}
}
});
- GlStateManager.enableBlend();
- GlStateManager.enableTexture();
+ RenderSystem.popMatrix();
}
}
import me.shedaniel.forge.clothconfig2.api.ConfigBuilder;
import me.shedaniel.forge.clothconfig2.api.ConfigCategory;
-import me.shedaniel.forge.clothconfig2.impl.ConfigEntryBuilderImpl;
+import me.shedaniel.forge.clothconfig2.api.ConfigEntryBuilder;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.screen.Screen;
import net.minecraft.client.resources.I18n;
ModLoadingContext.get().registerExtensionPoint(ExtensionPoint.CONFIGGUIFACTORY, () -> (BiFunction<Minecraft, Screen, Screen>) (client, parent) -> {
ConfigBuilder builder = ConfigBuilder.create().setParentScreen(parent).setTitle("key.lightoverlay.category");
- ConfigEntryBuilderImpl eb = builder.getEntryBuilder();
+ ConfigEntryBuilder eb = builder.getEntryBuilder();
ConfigCategory general = builder.getOrCreateCategory("config.lightoverlay-forge.general");
general.addEntry(eb.startIntSlider("config.lightoverlay-forge.reach", LightOverlayClient.reach, 1, 50).setDefaultValue(7).setTextGetter(integer -> "Reach: " + integer + " Blocks").setSaveConsumer(integer -> LightOverlayClient.reach = integer).build());
general.addEntry(eb.startIntSlider("config.lightoverlay-forge.lineWidth", MathHelper.floor(LightOverlayClient.lineWidth * 100), 100, 700).setDefaultValue(100).setTextGetter(integer -> "Light Width: " + LightOverlayClient.FORMAT.format(integer / 100d)).setSaveConsumer(integer -> LightOverlayClient.lineWidth = integer / 100f).build());
# The name of the mod loader type to load - for regular FML @Mod mods it should be javafml
modLoader="javafml" #mandatory
# A version range to match for said mod loader - for regular FML @Mod it will be the forge version
-loaderVersion="[26,)" #mandatory (24 is current forge version)
+loaderVersion="[29,)" #mandatory (24 is current forge version)
# A URL to refer people to when problems occur with this mod
issueTrackerURL="https://github.com/shedaniel/LightOverlay-Forge/issues/" #optional
# A URL for the "homepage" for this mod, displayed in the mod UI
# Does this dependency have to exist - if not, ordering below must be specified
mandatory=true #mandatory
# The version range of the dependency
- versionRange="[1.4.1,)" #mandatory
+ versionRange="[2.0,)" #mandatory
ordering="NONE"
# Side this dependency is applied on - BOTH, CLIENT or SERVER
- side="CLIENT"
\ No newline at end of file
+ side="CLIENT"