mirror of
https://github.com/TeamMidnightDust/PictureSign.git
synced 2025-12-16 14:15:10 +01:00
PictureSign 1.2.0 - Safe-Mode, Redstone, Update MidnightLib
- Added Safe mode: ~ Only load images from imgur/imgbb ~ Enabled by default - Initial Redstone functionality ~ If an unlit redstone torch is above or below the sign, the image will be hidden ~ Update MidnightLib to 0.2.9
This commit is contained in:
@@ -6,5 +6,8 @@ public class PictureSignConfig extends MidnightConfig {
|
||||
@Entry public static boolean enabled = true;
|
||||
@Entry public static boolean debug = false;
|
||||
@Entry(min = 1, max = 10) public static int maxThreads = 4;
|
||||
@Entry(min = 0, max = 1024) public static int signRenderDistance = 64;
|
||||
@Entry(min = 0, max = 4096) public static int signRenderDistance = 64;
|
||||
@Entry public static boolean safeMode = true;
|
||||
@Comment public static Comment ebeWarning;
|
||||
@Comment public static Comment ebeWarning2;
|
||||
}
|
||||
|
||||
@@ -33,4 +33,9 @@ public abstract class MixinSignBlockEntityRenderer implements BlockEntityRendere
|
||||
public int getRenderDistance() {
|
||||
return PictureSignConfig.signRenderDistance;
|
||||
}
|
||||
@Unique
|
||||
@Override
|
||||
public boolean rendersOutsideBoundingBox(SignBlockEntity sign) {
|
||||
return PictureSignConfig.enabled && sign.getTextOnRow(0, false).getString().matches("(!PS:.*)");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,16 +2,16 @@ package eu.midnightdust.picturesign.render;
|
||||
|
||||
import com.mojang.blaze3d.systems.RenderSystem;
|
||||
import eu.midnightdust.picturesign.PictureDownloader;
|
||||
import eu.midnightdust.picturesign.config.PictureSignConfig;
|
||||
import net.coderbot.iris.Iris;
|
||||
import net.fabricmc.loader.api.FabricLoader;
|
||||
import net.minecraft.block.Blocks;
|
||||
import net.minecraft.block.entity.SignBlockEntity;
|
||||
import net.minecraft.client.render.*;
|
||||
import net.minecraft.client.util.math.MatrixStack;
|
||||
import net.minecraft.state.property.Properties;
|
||||
import net.minecraft.util.math.Direction;
|
||||
import net.minecraft.util.math.Matrix4f;
|
||||
import net.minecraft.util.math.Quaternion;
|
||||
import net.minecraft.util.math.Vec3f;
|
||||
import net.minecraft.util.math.*;
|
||||
import net.minecraft.world.World;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
@@ -29,6 +29,13 @@ public class PictureSignRenderer {
|
||||
url = "https://" + url;
|
||||
}
|
||||
if (!url.contains(".png") && !url.contains(".jpg") && !url.contains(".jpeg")) return;
|
||||
if (PictureSignConfig.safeMode && !url.contains("//i.imgur.com/") && !url.contains("//i.ibb.co/")) return;
|
||||
World world = signBlockEntity.getWorld();
|
||||
BlockPos pos = signBlockEntity.getPos();
|
||||
if (world != null && (world.getBlockState(pos.down()).getBlock().equals(Blocks.REDSTONE_TORCH) || world.getBlockState(pos.down()).getBlock().equals(Blocks.REDSTONE_WALL_TORCH)) && world.getBlockState(pos.down()).get(Properties.LIT).equals(false)) return;
|
||||
if (world != null && (world.getBlockState(pos.up()).getBlock().equals(Blocks.REDSTONE_TORCH) || world.getBlockState(pos.up()).getBlock().equals(Blocks.REDSTONE_WALL_TORCH)) && world.getBlockState(pos.up()).get(Properties.LIT).equals(false)) return;
|
||||
|
||||
|
||||
String lastLine = signBlockEntity.getTextOnRow(3, false).getString();
|
||||
|
||||
if (!lastLine.matches("(.*\\d:.*\\d:.*\\d:.*\\d:.*\\d)")) return;
|
||||
|
||||
@@ -4,5 +4,9 @@
|
||||
"picturesign.midnightconfig.enabled":"Enabled",
|
||||
"picturesign.midnightconfig.debug":"Send debug info",
|
||||
"picturesign.midnightconfig.maxThreads":"Max download threads",
|
||||
"picturesign.midnightconfig.signRenderDistance":"Sign render distance"
|
||||
"picturesign.midnightconfig.signRenderDistance":"Sign render distance",
|
||||
"picturesign.midnightconfig.safeMode":"Safe mode",
|
||||
"picturesign.midnightconfig.safeMode.tooltip":"Only load images from imgur.com and imgbb.com",
|
||||
"picturesign.midnightconfig.ebeWarning":"§cIf you are using the mod 'Enhanced Block Entities'",
|
||||
"picturesign.midnightconfig.ebeWarning2":"§cmake sure to disable anything sign-related in it's config!"
|
||||
}
|
||||
Reference in New Issue
Block a user