Initial 1.20 port. Still untested

This commit is contained in:
2023-05-11 19:30:00 +02:00
parent 8e72212bf6
commit 5b6bf5fd8a
20 changed files with 60 additions and 50 deletions

View File

@@ -1,6 +1,8 @@
package com.hypherionmc.craterlib.api.creativetab; package com.hypherionmc.craterlib.api.creativetab;
import com.hypherionmc.craterlib.core.systems.internal.CreativeTabRegistry; import com.hypherionmc.craterlib.core.systems.internal.CreativeTabRegistry;
import net.minecraft.core.registries.Registries;
import net.minecraft.resources.ResourceKey;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.item.CreativeModeTab; import net.minecraft.world.item.CreativeModeTab;
import net.minecraft.world.item.CreativeModeTabs; import net.minecraft.world.item.CreativeModeTabs;
@@ -14,11 +16,13 @@ public class CraterCreativeModeTab implements Supplier<CreativeModeTab> {
private final Supplier<ItemStack> icon; private final Supplier<ItemStack> icon;
private final String backgroundSuffix; private final String backgroundSuffix;
private CreativeModeTab tab; private CreativeModeTab tab;
private final ResourceKey<CreativeModeTab> resourceKey;
protected CraterCreativeModeTab(Builder builder) { protected CraterCreativeModeTab(Builder builder) {
this.resourceLocation = builder.location; this.resourceLocation = builder.location;
this.icon = builder.stack; this.icon = builder.stack;
this.backgroundSuffix = builder.backgroundSuffix == null ? "" : builder.backgroundSuffix; this.backgroundSuffix = builder.backgroundSuffix == null ? "" : builder.backgroundSuffix;
this.resourceKey = ResourceKey.create(Registries.CREATIVE_MODE_TAB, this.resourceLocation);
CreativeTabRegistry.registerTab(this); CreativeTabRegistry.registerTab(this);
} }
@@ -39,6 +43,10 @@ public class CraterCreativeModeTab implements Supplier<CreativeModeTab> {
this.tab = tab; this.tab = tab;
} }
public ResourceKey<CreativeModeTab> getResourceKey() {
return resourceKey;
}
public static class Builder { public static class Builder {
private final ResourceLocation location; private final ResourceLocation location;
private Supplier<ItemStack> stack; private Supplier<ItemStack> stack;

View File

@@ -9,13 +9,15 @@ import com.mojang.blaze3d.systems.RenderSystem;
import com.mojang.blaze3d.vertex.*; import com.mojang.blaze3d.vertex.*;
import me.hypherionmc.moonconfig.core.conversion.SpecComment; import me.hypherionmc.moonconfig.core.conversion.SpecComment;
import net.minecraft.ChatFormatting; import net.minecraft.ChatFormatting;
import net.minecraft.client.gui.GuiComponent; import net.minecraft.client.gui.Font;
import net.minecraft.client.gui.GuiGraphics;
import net.minecraft.client.gui.screens.ConfirmScreen; import net.minecraft.client.gui.screens.ConfirmScreen;
import net.minecraft.client.gui.screens.Screen; import net.minecraft.client.gui.screens.Screen;
import net.minecraft.client.renderer.GameRenderer; import net.minecraft.client.renderer.GameRenderer;
import net.minecraft.network.chat.Component; import net.minecraft.network.chat.Component;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.util.Mth; import net.minecraft.util.Mth;
import org.jetbrains.annotations.NotNull;
import org.joml.Matrix4f; import org.joml.Matrix4f;
import javax.annotation.Nullable; import javax.annotation.Nullable;
@@ -172,25 +174,25 @@ public class CraterConfigScreen extends Screen {
} }
@Override @Override
public void render(PoseStack matrices, int mouseX, int mouseY, float delta) { public void render(@NotNull GuiGraphics matrices, int mouseX, int mouseY, float delta) {
overlayBackground(matrices, TOP, height - BOTTOM, 32); overlayBackground(matrices.pose(), TOP, height - BOTTOM, 32);
renderScrollBar(); renderScrollBar();
matrices.pushPose(); matrices.pose().pushPose();
matrices.translate(0, 0, 500.0); matrices.pose().translate(0, 0, 500.0);
overlayBackground(matrices, 0, TOP, 64); overlayBackground(matrices.pose(), 0, TOP, 64);
overlayBackground(matrices, height - BOTTOM, height, 64); overlayBackground(matrices.pose(), height - BOTTOM, height, 64);
renderShadow(matrices); renderShadow(matrices.pose());
drawCenteredString(matrices, font, getTitle(), width / 2, 9, 0xFFFFFF); matrices.drawCenteredString(font, getTitle(), width / 2, 9, 0xFFFFFF);
super.render(matrices, mouseX, mouseY, delta); super.render(matrices, mouseX, mouseY, delta);
matrices.popPose(); matrices.pose().popPose();
int y = (int) (TOP + 4 - Math.round(scrollerAmount)); int y = (int) (TOP + 4 - Math.round(scrollerAmount));
for (Option<?> option : options) { for (Option<?> option : options) {
int height1 = option.height(); int height1 = option.height();
option.render(minecraft, font, 40, y, width - 80, height1, matrices, mouseX, mouseY, delta); option.render(minecraft, font, 40, y, width - 80, height1, matrices, mouseX, mouseY, delta);
renderConfigTooltip(matrices, mouseX, mouseY, 40, y, font.width(option.text), height1, option.text.getString(), option.getLangKeys().toArray(new String[0])); renderConfigTooltip(matrices, font, mouseX, mouseY, 40, y, font.width(option.text), height1, option.text.getString(), option.getLangKeys().toArray(new String[0]));
y += height1; y += height1;
} }
} }
@@ -261,9 +263,10 @@ public class CraterConfigScreen extends Screen {
} }
protected void overlayBackground(Matrix4f matrix, int minX, int minY, int maxX, int maxY, int red, int green, int blue, int startAlpha, int endAlpha) { protected void overlayBackground(Matrix4f matrix, int minX, int minY, int maxX, int maxY, int red, int green, int blue, int startAlpha, int endAlpha) {
Tesselator tesselator = Tesselator.getInstance(); Tesselator tesselator = Tesselator.getInstance();
BufferBuilder buffer = tesselator.getBuilder(); BufferBuilder buffer = tesselator.getBuilder();
RenderSystem.setShaderTexture(0, GuiComponent.BACKGROUND_LOCATION); RenderSystem.setShaderTexture(0, Screen.BACKGROUND_LOCATION);
RenderSystem.setShaderColor(1.0f, 1.0f, 1.0f, 1.0f); RenderSystem.setShaderColor(1.0f, 1.0f, 1.0f, 1.0f);
RenderSystem.setShader(GameRenderer::getPositionTexColorShader); RenderSystem.setShader(GameRenderer::getPositionTexColorShader);
buffer.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX_COLOR); buffer.begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.POSITION_TEX_COLOR);
@@ -373,7 +376,7 @@ public class CraterConfigScreen extends Screen {
} }
} }
private void renderConfigTooltip(PoseStack stack, int mouseX, int mouseY, int startX, int startY, int sizeX, int sizeY, String title, String... description) { private void renderConfigTooltip(GuiGraphics stack, Font font, int mouseX, int mouseY, int startX, int startY, int sizeX, int sizeY, String title, String... description) {
if (mouseX > startX && mouseX < startX + sizeX) { if (mouseX > startX && mouseX < startX + sizeX) {
if (mouseY > startY && mouseY < startY + sizeY) { if (mouseY > startY && mouseY < startY + sizeY) {
List<Component> list = new ArrayList<>(); List<Component> list = new ArrayList<>();
@@ -381,7 +384,7 @@ public class CraterConfigScreen extends Screen {
for (String desc : description) { for (String desc : description) {
list.add(Component.translatable(desc)); list.add(Component.translatable(desc));
} }
renderComponentTooltip(stack, list, mouseX, mouseY); stack.renderComponentTooltip(font, list, mouseX, mouseY);
} }
} }
} }

View File

@@ -1,8 +1,8 @@
package com.hypherionmc.craterlib.client.gui.config.widgets; package com.hypherionmc.craterlib.client.gui.config.widgets;
import com.mojang.blaze3d.vertex.PoseStack;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.Font; import net.minecraft.client.gui.Font;
import net.minecraft.client.gui.GuiGraphics;
import net.minecraft.client.gui.components.AbstractWidget; import net.minecraft.client.gui.components.AbstractWidget;
import net.minecraft.client.gui.components.EditBox; import net.minecraft.client.gui.components.EditBox;
@@ -16,7 +16,7 @@ public class AbstractConfigWidget<T, W extends AbstractWidget> extends BaseWidge
public W widget; public W widget;
@Override @Override
public void render(Minecraft minecraft, Font font, int x, int y, int width, int height, PoseStack matrices, int mouseX, int mouseY, float delta) { public void render(Minecraft minecraft, Font font, int x, int y, int width, int height, GuiGraphics matrices, int mouseX, int mouseY, float delta) {
super.render(minecraft, font, x, y, width, height, matrices, mouseX, mouseY, delta); super.render(minecraft, font, x, y, width, height, matrices, mouseX, mouseY, delta);
int i = (widget instanceof EditBox ? 1 : 0); int i = (widget instanceof EditBox ? 1 : 0);
widget.setX(x + width - 200 - resetButtonOffset + i); widget.setX(x + width - 200 - resetButtonOffset + i);

View File

@@ -1,9 +1,9 @@
package com.hypherionmc.craterlib.client.gui.config.widgets; package com.hypherionmc.craterlib.client.gui.config.widgets;
import com.mojang.blaze3d.vertex.PoseStack;
import net.minecraft.ChatFormatting; import net.minecraft.ChatFormatting;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.Font; import net.minecraft.client.gui.Font;
import net.minecraft.client.gui.GuiGraphics;
import net.minecraft.client.gui.components.Button; import net.minecraft.client.gui.components.Button;
import net.minecraft.network.chat.Component; import net.minecraft.network.chat.Component;
import net.minecraft.network.chat.MutableComponent; import net.minecraft.network.chat.MutableComponent;
@@ -39,7 +39,7 @@ public class BaseWidget<T> extends Option<T> {
} }
@Override @Override
public void render(Minecraft minecraft, Font font, int x, int y, int width, int height, PoseStack matrices, int mouseX, int mouseY, float delta) { public void render(Minecraft minecraft, Font font, int x, int y, int width, int height, GuiGraphics matrices, int mouseX, int mouseY, float delta) {
MutableComponent text = Component.literal(this.text.getString()); MutableComponent text = Component.literal(this.text.getString());
boolean edited = isEdited() || hasErrors; boolean edited = isEdited() || hasErrors;
if (edited) { if (edited) {
@@ -50,7 +50,7 @@ public class BaseWidget<T> extends Option<T> {
} else { } else {
text.withStyle(ChatFormatting.GRAY); text.withStyle(ChatFormatting.GRAY);
} }
font.draw(matrices, text, x, y + 8, 0xFFFFFF); matrices.drawString(font, text, x, y, 0xFFFFFF);
resetButton.setX(x + width - 46); resetButton.setX(x + width - 46);
resetButton.setY(y + 1); resetButton.setY(y + 1);
resetButton.active = isNotDefault(); resetButton.active = isNotDefault();
@@ -58,5 +58,4 @@ public class BaseWidget<T> extends Option<T> {
resetButton.render(matrices, mouseX, mouseY, delta); resetButton.render(matrices, mouseX, mouseY, delta);
} }
} }
} }

View File

@@ -1,7 +1,7 @@
package com.hypherionmc.craterlib.client.gui.config.widgets; package com.hypherionmc.craterlib.client.gui.config.widgets;
import com.hypherionmc.craterlib.client.gui.config.CraterConfigScreen; import com.hypherionmc.craterlib.client.gui.config.CraterConfigScreen;
import com.mojang.blaze3d.vertex.PoseStack; import net.minecraft.client.gui.GuiGraphics;
import net.minecraft.client.gui.components.AbstractButton; import net.minecraft.client.gui.components.AbstractButton;
import net.minecraft.client.gui.narration.NarratedElementType; import net.minecraft.client.gui.narration.NarratedElementType;
import net.minecraft.client.gui.narration.NarrationElementOutput; import net.minecraft.client.gui.narration.NarrationElementOutput;
@@ -23,7 +23,7 @@ public class InternalConfigButton extends AbstractButton {
} }
@Override @Override
public void render(@NotNull PoseStack poseStack, int i, int j, float f) { public void render(@NotNull GuiGraphics poseStack, int i, int j, float f) {
if (cancel) { if (cancel) {
setMessage(Component.translatable(screen.isEdited() ? "t.clc.cancel_discard" : "gui.cancel")); setMessage(Component.translatable(screen.isEdited() ? "t.clc.cancel_discard" : "gui.cancel"));
} else { } else {

View File

@@ -1,8 +1,8 @@
package com.hypherionmc.craterlib.client.gui.config.widgets; package com.hypherionmc.craterlib.client.gui.config.widgets;
import com.mojang.blaze3d.vertex.PoseStack;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.Font; import net.minecraft.client.gui.Font;
import net.minecraft.client.gui.GuiGraphics;
import net.minecraft.client.gui.components.events.AbstractContainerEventHandler; import net.minecraft.client.gui.components.events.AbstractContainerEventHandler;
import net.minecraft.client.gui.components.events.GuiEventListener; import net.minecraft.client.gui.components.events.GuiEventListener;
import net.minecraft.network.chat.Component; import net.minecraft.network.chat.Component;
@@ -38,7 +38,7 @@ public abstract class Option<T> extends AbstractContainerEventHandler {
this.langKeys = langKeys; this.langKeys = langKeys;
} }
public abstract void render(Minecraft minecraft, Font font, int x, int y, int width, int height, PoseStack matrices, int mouseX, int mouseY, float delta); public abstract void render(Minecraft minecraft, Font font, int x, int y, int width, int height, GuiGraphics matrices, int mouseX, int mouseY, float delta);
public int height() { public int height() {
return 22; return 22;

View File

@@ -2,9 +2,9 @@ package com.hypherionmc.craterlib.client.gui.config.widgets;
import com.hypherionmc.craterlib.client.gui.config.CraterConfigScreen; import com.hypherionmc.craterlib.client.gui.config.CraterConfigScreen;
import com.hypherionmc.craterlib.core.config.ModuleConfig; import com.hypherionmc.craterlib.core.config.ModuleConfig;
import com.mojang.blaze3d.vertex.PoseStack;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.Font; import net.minecraft.client.gui.Font;
import net.minecraft.client.gui.GuiGraphics;
import net.minecraft.client.gui.components.Button; import net.minecraft.client.gui.components.Button;
import net.minecraft.client.gui.screens.Screen; import net.minecraft.client.gui.screens.Screen;
import net.minecraft.network.chat.Component; import net.minecraft.network.chat.Component;
@@ -27,7 +27,7 @@ public class SubConfigWidget<T> extends AbstractConfigWidget<T, Button> {
} }
@Override @Override
public void render(Minecraft minecraft, Font font, int x, int y, int width, int height, PoseStack matrices, int mouseX, int mouseY, float delta) { public void render(Minecraft minecraft, Font font, int x, int y, int width, int height, GuiGraphics matrices, int mouseX, int mouseY, float delta) {
this.text = Component.literal(subConfig.getClass().getSimpleName().toLowerCase()); this.text = Component.literal(subConfig.getClass().getSimpleName().toLowerCase());
this.hideReset(); this.hideReset();
super.render(minecraft, font, x, y, width, height, matrices, mouseX, mouseY, delta); super.render(minecraft, font, x, y, width, height, matrices, mouseX, mouseY, delta);

View File

@@ -1,8 +1,8 @@
package com.hypherionmc.craterlib.client.gui.config.widgets; package com.hypherionmc.craterlib.client.gui.config.widgets;
import com.mojang.blaze3d.vertex.PoseStack;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.Font; import net.minecraft.client.gui.Font;
import net.minecraft.client.gui.GuiGraphics;
import java.util.function.Function; import java.util.function.Function;
@@ -29,7 +29,7 @@ public class TextConfigOption <T> extends AbstractConfigWidget<T, WrappedEditBox
} }
@Override @Override
public void render(Minecraft minecraft, Font font, int x, int y, int width, int height, PoseStack matrices, int mouseX, int mouseY, float delta) { public void render(Minecraft minecraft, Font font, int x, int y, int width, int height, GuiGraphics matrices, int mouseX, int mouseY, float delta) {
widget.setTextColor(hasErrors ? 16733525 : 14737632); widget.setTextColor(hasErrors ? 16733525 : 14737632);
super.render(minecraft, font, x, y, width, height, matrices, mouseX, mouseY, delta); super.render(minecraft, font, x, y, width, height, matrices, mouseX, mouseY, delta);
} }

View File

@@ -4,7 +4,7 @@ import com.hypherionmc.craterlib.api.rendering.DyableBlock;
import com.hypherionmc.craterlib.api.rendering.ItemDyable; import com.hypherionmc.craterlib.api.rendering.ItemDyable;
import com.hypherionmc.craterlib.client.rendering.ItemColorHandler; import com.hypherionmc.craterlib.client.rendering.ItemColorHandler;
import com.hypherionmc.craterlib.core.platform.ClientPlatform; import com.hypherionmc.craterlib.core.platform.ClientPlatform;
import me.hypherionmc.craterlib.systems.reg.RegistrationProvider; import com.hypherionmc.craterlib.core.systems.reg.RegistrationProvider;
import net.minecraft.client.color.block.BlockColors; import net.minecraft.client.color.block.BlockColors;
import net.minecraft.client.color.item.ItemColors; import net.minecraft.client.color.item.ItemColors;
import net.minecraft.client.renderer.blockentity.BlockEntityRendererProvider; import net.minecraft.client.renderer.blockentity.BlockEntityRendererProvider;

View File

@@ -2,7 +2,7 @@ package com.hypherionmc.craterlib.core.platform.services;
import com.hypherionmc.craterlib.common.item.BlockItemDyable; import com.hypherionmc.craterlib.common.item.BlockItemDyable;
import com.hypherionmc.craterlib.core.network.CraterPacket; import com.hypherionmc.craterlib.core.network.CraterPacket;
import me.hypherionmc.craterlib.systems.reg.RegistryObject; import com.hypherionmc.craterlib.core.systems.reg.RegistryObject;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.blockentity.BlockEntityRendererProvider; import net.minecraft.client.renderer.blockentity.BlockEntityRendererProvider;
import net.minecraft.network.Connection; import net.minecraft.network.Connection;

View File

@@ -14,7 +14,7 @@ import net.minecraft.world.level.material.Fluids;
public class FluidUtils { public class FluidUtils {
public static int fluidColorFromDye(DyeColor color) { public static int fluidColorFromDye(DyeColor color) {
return color.getMaterialColor().col | 0xFF000000; return color.getMapColor().col | 0xFF000000;
} }
public static void putFluid(CompoundTag compound, String key, Fluid fluidVariant) { public static void putFluid(CompoundTag compound, String key, Fluid fluidVariant) {

View File

@@ -60,7 +60,7 @@ public class RenderUtils {
} }
public static int renderColorFromDye(DyeColor color) { public static int renderColorFromDye(DyeColor color) {
return color.getMaterialColor().col | 0xFF000000; return color.getMapColor().col | 0xFF000000;
} }
public static int alphaColorFromDye(DyeColor color, float alpha) { public static int alphaColorFromDye(DyeColor color, float alpha) {

View File

@@ -4,8 +4,8 @@ import com.hypherionmc.craterlib.api.rendering.CustomRenderType;
import com.hypherionmc.craterlib.common.item.BlockItemDyable; import com.hypherionmc.craterlib.common.item.BlockItemDyable;
import com.hypherionmc.craterlib.core.network.CraterPacket; import com.hypherionmc.craterlib.core.network.CraterPacket;
import com.hypherionmc.craterlib.core.platform.services.LibClientHelper; import com.hypherionmc.craterlib.core.platform.services.LibClientHelper;
import com.hypherionmc.craterlib.core.systems.reg.RegistryObject;
import com.hypherionmc.craterlib.util.ColorPropertyFunction; import com.hypherionmc.craterlib.util.ColorPropertyFunction;
import me.hypherionmc.craterlib.systems.reg.RegistryObject;
import net.fabricmc.api.EnvType; import net.fabricmc.api.EnvType;
import net.fabricmc.fabric.api.blockrenderlayer.v1.BlockRenderLayerMap; import net.fabricmc.fabric.api.blockrenderlayer.v1.BlockRenderLayerMap;
import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking; import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking;

View File

@@ -3,9 +3,9 @@ package com.hypherionmc.craterlib.client.gui.widgets;
import com.hypherionmc.craterlib.systems.fluid.FluidTank; import com.hypherionmc.craterlib.systems.fluid.FluidTank;
import com.hypherionmc.craterlib.util.RenderUtils; import com.hypherionmc.craterlib.util.RenderUtils;
import com.mojang.blaze3d.systems.RenderSystem; import com.mojang.blaze3d.systems.RenderSystem;
import com.mojang.blaze3d.vertex.PoseStack;
import net.fabricmc.fabric.api.transfer.v1.client.fluid.FluidVariantRendering; import net.fabricmc.fabric.api.transfer.v1.client.fluid.FluidVariantRendering;
import net.fabricmc.fabric.api.transfer.v1.fluid.FluidVariant; import net.fabricmc.fabric.api.transfer.v1.fluid.FluidVariant;
import net.minecraft.client.gui.GuiGraphics;
import net.minecraft.client.gui.components.AbstractWidget; import net.minecraft.client.gui.components.AbstractWidget;
import net.minecraft.client.gui.narration.NarrationElementOutput; import net.minecraft.client.gui.narration.NarrationElementOutput;
import net.minecraft.client.gui.screens.Screen; import net.minecraft.client.gui.screens.Screen;
@@ -35,7 +35,7 @@ public class FluidStackWidget extends AbstractWidget {
} }
@Override @Override
public void renderWidget(@NotNull PoseStack matrices, int mouseX, int mouseY, float delta) { public void renderWidget(@NotNull GuiGraphics matrices, int mouseX, int mouseY, float delta) {
RenderSystem.setShader(GameRenderer::getPositionTexShader); RenderSystem.setShader(GameRenderer::getPositionTexShader);
RenderSystem.defaultBlendFunc(); RenderSystem.defaultBlendFunc();
RenderSystem.enableDepthTest(); RenderSystem.enableDepthTest();
@@ -62,18 +62,18 @@ public class FluidStackWidget extends AbstractWidget {
int atlasWidth = (int) (still.getX() / (still.getU1() - still.getU0())); int atlasWidth = (int) (still.getX() / (still.getU1() - still.getU0()));
int atlasHeight = (int) (still.getY() / (still.getV1() - still.getV0())); int atlasHeight = (int) (still.getY() / (still.getV1() - still.getV0()));
matrices.pushPose(); matrices.pose().pushPose();
matrices.translate(0, height - 16, 0); matrices.pose().translate(0, height - 16, 0);
for (int i = 0; i < Math.ceil(renderableHeight / 16f); i++) { for (int i = 0; i < Math.ceil(renderableHeight / 16f); i++) {
int drawingHeight = Math.min(16, renderableHeight - 16 * i); int drawingHeight = Math.min(16, renderableHeight - 16 * i);
int notDrawingHeight = 16 - drawingHeight; int notDrawingHeight = 16 - drawingHeight;
// TODO Double Check this // TODO Double Check this
blit(matrices, getX(), getY() + notDrawingHeight, 0, still.getU0() * atlasWidth, still.getV0() * atlasHeight + notDrawingHeight, this.width, drawingHeight, atlasWidth, atlasHeight); matrices.blit(TextureAtlas.LOCATION_BLOCKS, getX(), getY() + notDrawingHeight, 0, still.getU0() * atlasWidth, still.getV0() * atlasHeight + notDrawingHeight, this.width, drawingHeight, atlasWidth, atlasHeight);
matrices.translate(0, -16, 0); matrices.pose().translate(0, -16, 0);
} }
RenderSystem.setShaderColor(1, 1, 1, 1); RenderSystem.setShaderColor(1, 1, 1, 1);
matrices.popPose(); matrices.pose().popPose();
} }
//renderToolTip(matrices, mouseX, mouseY); //renderToolTip(matrices, mouseX, mouseY);
} }

View File

@@ -46,7 +46,7 @@ public class FabricFluidHelper implements LibFluidHelper {
if (fluidVariant.isBlank()) if (fluidVariant.isBlank())
return false; return false;
if (fluidHandler.insert(new FluidHolder(fluidVariant.getFluid(), 1000), ICraterFluidHandler.FluidAction.EXECUTE) > 0) { if (fluidHandler.insert(new FluidHolder(fluidVariant.getFluid(), 1000), ICraterFluidHandler.FluidAction.EXECUTE) > 0) {
player.level.playSound(null, player.getOnPos(), SoundEvents.BUCKET_EMPTY, SoundSource.BLOCKS, 1.0f, 1.0f); player.level().playSound(null, player.getOnPos(), SoundEvents.BUCKET_EMPTY, SoundSource.BLOCKS, 1.0f, 1.0f);
return true; return true;
} }
} }

View File

@@ -19,7 +19,7 @@ public class MinecraftMixin {
@Inject(method = "<init>", at = @At("RETURN")) @Inject(method = "<init>", at = @At("RETURN"))
private void injectCraterLateInit(GameConfig gameConfig, CallbackInfo ci) { private void injectCraterLateInit(GameConfig gameConfig, CallbackInfo ci) {
CreativeTabRegistry.getTabs().forEach(tab -> { CreativeTabRegistry.getTabs().forEach(tab -> {
CreativeModeTab finalTab = FabricItemGroup.builder(tab.getResourceLocation()) CreativeModeTab finalTab = FabricItemGroup.builder()
.title(Component.translatable("itemGroup." + .title(Component.translatable("itemGroup." +
tab.getResourceLocation().toString().replace(":", ".") tab.getResourceLocation().toString().replace(":", ".")
)) ))
@@ -28,7 +28,7 @@ public class MinecraftMixin {
tab.setTab(finalTab); tab.setTab(finalTab);
ItemGroupEvents.modifyEntriesEvent(finalTab).register(entries -> CreativeTabRegistry ItemGroupEvents.modifyEntriesEvent(tab.getResourceKey()).register(entries -> CreativeTabRegistry
.getTabItems() .getTabItems()
.stream().filter(t -> t.getLeft().get() == finalTab && t.getRight() != null) .stream().filter(t -> t.getLeft().get() == finalTab && t.getRight() != null)
.map(Pair::getRight).forEach(itm -> entries.accept(itm.get()))); .map(Pair::getRight).forEach(itm -> entries.accept(itm.get())));

View File

@@ -34,7 +34,7 @@
"depends": { "depends": {
"fabricloader": ">=0.14", "fabricloader": ">=0.14",
"fabric": "*", "fabric": "*",
"minecraft": ">=1.19.4", "minecraft": ">=1.20",
"java": ">=17" "java": ">=17"
} }
} }

View File

@@ -8,7 +8,7 @@ registrationUtils {
projects { projects {
Common { type 'common'; project ':Common' } Common { type 'common'; project ':Common' }
Fabric { type 'fabric'; project ':Fabric' } Fabric { type 'fabric'; project ':Fabric' }
Forge { type 'forge'; project ':Forge' } //Forge { type 'forge'; project ':Forge' }
} }
} }

View File

@@ -1,11 +1,11 @@
# Project # Project
version_major=0 version_major=0
version_minor=0 version_minor=0
version_patch=8d version_patch=1d
group=me.hypherionmc.craterlib group=me.hypherionmc.craterlib
# Common # Common
minecraft_version=1.19.4 minecraft_version=1.20-pre1
common_runs_enabled=false common_runs_enabled=false
common_client_run_name=Common Client common_client_run_name=Common Client
common_server_run_name=Common Server common_server_run_name=Common Server
@@ -15,7 +15,7 @@ forge_version=45.0.9
forge_ats_enabled=true forge_ats_enabled=true
# Fabric # Fabric
fabric_version=0.76.0+1.19.4 fabric_version=0.80.3+1.20
fabric_loader_version=0.14.9 fabric_loader_version=0.14.9
# Mod options # Mod options
@@ -28,5 +28,5 @@ org.gradle.jvmargs=-Xmx3G
org.gradle.daemon=false org.gradle.daemon=false
# Dependencies # Dependencies
mod_menu_version=6.1.0-rc.4 mod_menu_version=7.0.0-beta.2
moon_config=1.0.9 moon_config=1.0.9

View File

@@ -13,4 +13,4 @@ pluginManagement {
} }
rootProject.name = 'CraterLib' rootProject.name = 'CraterLib'
include("Common", "Fabric", "Forge") include("Common", "Fabric", /*"Forge"*/)