Initial 1.19.3 Porting with new Creative Tab API

This commit is contained in:
2022-12-29 18:15:42 +02:00
parent 48c0dff0dd
commit 5311799988
26 changed files with 182 additions and 146 deletions

View File

@@ -3,14 +3,8 @@ package me.hypherionmc.craterlib;
import me.hypherionmc.craterlib.common.FabricCommonHelper;
import net.fabricmc.api.ModInitializer;
import net.fabricmc.fabric.api.event.lifecycle.v1.ServerLifecycleEvents;
import net.fabricmc.loader.api.entrypoint.PreLaunchEntrypoint;
public class CraterLibInitializer implements ModInitializer, PreLaunchEntrypoint {
@Override
public void onPreLaunch() {
}
public class CraterLibInitializer implements ModInitializer {
@Override
public void onInitialize() {

View File

@@ -1,11 +1,12 @@
package me.hypherionmc.craterlib.client;
import net.fabricmc.api.ClientModInitializer;
import net.fabricmc.fabric.api.itemgroup.v1.ItemGroupEvents;
public class CraterLibClientInitializer implements ClientModInitializer {
@Override
public void onInitializeClient() {
ItemGroupEvents.MODIFY_ENTRIES_ALL.register(FabricClientHelper::registerCreativeItems);
}
}

View File

@@ -9,6 +9,7 @@ import me.hypherionmc.craterlib.util.ColorPropertyFunction;
import net.fabricmc.api.EnvType;
import net.fabricmc.fabric.api.blockrenderlayer.v1.BlockRenderLayerMap;
import net.fabricmc.fabric.api.client.networking.v1.ClientPlayNetworking;
import net.fabricmc.fabric.api.itemgroup.v1.FabricItemGroupEntries;
import net.fabricmc.fabric.api.networking.v1.PacketSender;
import net.fabricmc.fabric.api.object.builder.v1.client.model.FabricModelPredicateProviderRegistry;
import net.fabricmc.loader.api.FabricLoader;
@@ -18,6 +19,7 @@ import net.minecraft.network.Connection;
import net.minecraft.network.FriendlyByteBuf;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.CreativeModeTab;
import net.minecraft.world.item.Item;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.block.Block;
@@ -84,4 +86,8 @@ public class FabricClientHelper implements LibClientHelper {
client.execute(() -> packet.handle(client.player, client));
});
}
public static void registerCreativeItems(CreativeModeTab tab, FabricItemGroupEntries entries) {
}
}

View File

@@ -63,33 +63,35 @@ public class FluidStackWidget extends AbstractWidget {
float filledVolume = stored / capacity;
int renderableHeight = (int) (filledVolume * height);
int atlasWidth = (int) (still.getWidth() / (still.getU1() - still.getU0()));
int atlasHeight = (int) (still.getHeight() / (still.getV1() - still.getV0()));
int atlasWidth = (int) (still.getX() / (still.getU1() - still.getU0()));
int atlasHeight = (int) (still.getY() / (still.getV1() - still.getV0()));
matrices.pushPose();
matrices.translate(0, height - 16, 0);
for (int i = 0; i < Math.ceil(renderableHeight / 16f); i++) {
int drawingHeight = Math.min(16, renderableHeight - 16 * i);
int notDrawingHeight = 16 - drawingHeight;
blit(matrices, x, y + notDrawingHeight, displayOn.getBlitOffset(), still.getU0() * atlasWidth, still.getV0() * atlasHeight + notDrawingHeight, this.width, drawingHeight, atlasWidth, atlasHeight);
blit(matrices, getX(), getY() + notDrawingHeight, displayOn.getBlitOffset(), still.getU0() * atlasWidth, still.getV0() * atlasHeight + notDrawingHeight, this.width, drawingHeight, atlasWidth, atlasHeight);
matrices.translate(0, -16, 0);
}
RenderSystem.setShaderColor(1, 1, 1, 1);
matrices.popPose();
}
renderToolTip(matrices, mouseX, mouseY);
//renderToolTip(matrices, mouseX, mouseY);
}
}
@Override
// TODO Fix Tooltips
/*@Override
public void renderToolTip(PoseStack poseStack, int mouseX, int mouseY) {
if (this.visible && this.isFocused() && isHoveredOrFocused()) {
displayOn.renderTooltip(poseStack, Arrays.asList(LangUtils.getTooltipTitle(toolTipTitle), Component.literal((int) (((float) this.getFluid.get().getAmount() / this.getFluid.get().getCapacity()) * 100) + "%")), Optional.empty(), mouseX, mouseY);
}
}
}*/
@Override
public void updateNarration(NarrationElementOutput narrationElementOutput) {
protected void updateWidgetNarration(NarrationElementOutput narrationElementOutput) {
}
}

View File

@@ -4,7 +4,6 @@ import me.hypherionmc.craterlib.network.CraterNetworkHandler;
import me.hypherionmc.craterlib.network.CraterPacket;
import me.hypherionmc.craterlib.network.FabricNetworkHandler;
import me.hypherionmc.craterlib.platform.services.LibCommonHelper;
import net.fabricmc.fabric.api.client.itemgroup.FabricItemGroupBuilder;
import net.fabricmc.fabric.api.networking.v1.PacketSender;
import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking;
import net.fabricmc.fabric.api.screenhandler.v1.ExtendedScreenHandlerFactory;
@@ -20,14 +19,11 @@ import net.minecraft.world.entity.player.Inventory;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.inventory.AbstractContainerMenu;
import net.minecraft.world.inventory.MenuType;
import net.minecraft.world.item.CreativeModeTab;
import net.minecraft.world.item.ItemStack;
import org.apache.commons.lang3.function.TriFunction;
import org.jetbrains.annotations.Nullable;
import java.util.function.Consumer;
import java.util.function.Function;
import java.util.function.Supplier;
/**
* @author HypherionSA
@@ -83,19 +79,4 @@ public class FabricCommonHelper implements LibCommonHelper {
return new ExtendedScreenHandlerType<>(constructor::apply);
}
@Override
public CreativeModeTab tabBuilder(String modid, String tabid, Supplier<ItemStack> icon, String backgroundSuf) {
FabricItemGroupBuilder tab = FabricItemGroupBuilder.create(new ResourceLocation(modid, tabid));
if (icon != null) {
tab.icon(icon);
}
CreativeModeTab tab1 = tab.build();
if (backgroundSuf != null && !backgroundSuf.isEmpty()) {
tab1.setBackgroundSuffix(backgroundSuf);
}
return tab1;
}
}

View File

@@ -4,6 +4,7 @@ import net.fabricmc.fabric.api.transfer.v1.client.fluid.FluidVariantRendering;
import net.fabricmc.fabric.api.transfer.v1.fluid.FluidVariant;
import net.minecraft.client.renderer.texture.TextureAtlasSprite;
import net.minecraft.core.Registry;
import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.nbt.CompoundTag;
import net.minecraft.nbt.StringTag;
import net.minecraft.resources.ResourceLocation;
@@ -28,7 +29,7 @@ public class FluidUtils {
return FluidVariant.blank();
if (tag.get(key) instanceof StringTag) {
return FluidVariant.of(Registry.FLUID.get(new ResourceLocation(tag.getString(key))));
return FluidVariant.of(BuiltInRegistries.FLUID.get(new ResourceLocation(tag.getString(key))));
} else {
CompoundTag compound = tag.getCompound(key);
if (compound.contains("fk")) {
@@ -41,7 +42,7 @@ public class FluidUtils {
private static Fluid readLbaTag(CompoundTag tag) {
if (tag.contains("ObjName") && tag.getString("Registry").equals("f")) {
return Registry.FLUID.get(new ResourceLocation(tag.getString("ObjName")));
return BuiltInRegistries.FLUID.get(new ResourceLocation(tag.getString("ObjName")));
} else {
return Fluids.EMPTY;
}

View File

@@ -37,7 +37,7 @@
"depends": {
"fabricloader": ">=0.14",
"fabric": "*",
"minecraft": "1.19.2",
"minecraft": "1.19.3",
"java": ">=17"
}
}