Skip to content

Commit

Permalink
prepare for update to 1.21 (ae2 isn't ported yet, but that won't stop…
Browse files Browse the repository at this point in the history
… me)
  • Loading branch information
Mari023 committed Jun 14, 2024
1 parent c0301c9 commit 7fbb561
Show file tree
Hide file tree
Showing 9 changed files with 27 additions and 36 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
- update to 1.21
2 changes: 1 addition & 1 deletion build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
plugins {
id("net.neoforged.moddev") version "0.1.59-pr-1-pr-publish"
id("net.neoforged.moddev") version "0.1.74"
id("com.diffplug.spotless") version "6.25.0"
id("maven-publish")
java
Expand Down
4 changes: 2 additions & 2 deletions gradle.properties
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
minecraftVersion=1.20.6
neoforgeVersion=20.6.91-beta-pr-959-features-gradle-metadata
minecraftVersion=1.201
neoforgeVersion=21.0.0-beta
neoForge.parchment.minecraftVersion=1.20.6
neoForge.parchment.mappingsVersion=2024.05.01-nightly-SNAPSHOT

Expand Down
2 changes: 1 addition & 1 deletion src/main/java/de/mari_023/ae2wtlib/AE2wtlib.java
Original file line number Diff line number Diff line change
Expand Up @@ -91,6 +91,6 @@ public static void registerScreens(RegisterMenuScreensEvent event) {
}

public static ResourceLocation id(String name) {
return new ResourceLocation(MOD_NAME, name);
return ResourceLocation.fromNamespaceAndPath(MOD_NAME, name);
}
}
3 changes: 1 addition & 2 deletions src/main/java/de/mari_023/ae2wtlib/AE2wtlibForge.java
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@
import net.minecraft.network.chat.Component;
import net.minecraft.network.codec.StreamCodec;
import net.minecraft.network.protocol.common.custom.CustomPacketPayload;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.server.level.ServerPlayer;
import net.minecraft.server.packs.PackType;
import net.minecraft.server.packs.repository.Pack;
Expand Down Expand Up @@ -76,7 +75,7 @@ public AE2wtlibForge(IEventBus modEventBus) {
registerPowerStorageItem(event, AE2wtlibItems.PATTERN_ENCODING_TERMINAL);
});
modEventBus.addListener((AddPackFindersEvent event) -> event.addPackFinders(
new ResourceLocation(AE2wtlib.MOD_NAME, "ae2_style_wireless_crafting_terminal"),
AE2wtlib.id("ae2_style_wireless_crafting_terminal"),
PackType.CLIENT_RESOURCES,
Component.literal("AE2 style wireless crafting terminal"),
PackSource.BUILT_IN,
Expand Down
8 changes: 4 additions & 4 deletions src/main/java/de/mari_023/ae2wtlib/wut/recipe/Combine.java
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@

import net.minecraft.core.HolderLookup;
import net.minecraft.core.NonNullList;
import net.minecraft.world.inventory.CraftingContainer;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.crafting.CraftingInput;
import net.minecraft.world.item.crafting.Ingredient;
import net.minecraft.world.item.crafting.RecipeSerializer;
import net.minecraft.world.level.Level;
Expand Down Expand Up @@ -46,13 +46,13 @@ public WTDefinition getTerminalBDefinition() {
}

@Override
public boolean matches(CraftingContainer inv, Level world) {
public boolean matches(CraftingInput inv, Level world) {
return !InputHelper.getInputStack(inv, terminalA).isEmpty()
&& !InputHelper.getInputStack(inv, terminalB).isEmpty() && InputHelper.getInputCount(inv) == 2;
&& !InputHelper.getInputStack(inv, terminalB).isEmpty() && inv.ingredientCount() == 2;
}

@Override
public ItemStack assemble(CraftingContainer inv, HolderLookup.Provider provider) {
public ItemStack assemble(CraftingInput inv, HolderLookup.Provider provider) {
ItemStack wut = mergeTerminal(outputStack.copy(), InputHelper.getInputStack(inv, terminalA),
terminalADefinition);
wut = mergeTerminal(wut, InputHelper.getInputStack(inv, terminalB), terminalBDefinition);
Expand Down
19 changes: 6 additions & 13 deletions src/main/java/de/mari_023/ae2wtlib/wut/recipe/InputHelper.java
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package de.mari_023.ae2wtlib.wut.recipe;

import net.minecraft.world.inventory.CraftingContainer;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.crafting.CraftingInput;
import net.minecraft.world.item.crafting.Ingredient;

import de.mari_023.ae2wtlib.AE2wtlibItems;
Expand All @@ -10,20 +10,13 @@ public final class InputHelper {
private InputHelper() {
}

public static ItemStack getInputStack(CraftingContainer inventory, Ingredient ingredient) {
for (int i = 0; i < inventory.getContainerSize(); i++)
if (ingredient.test(inventory.getItem(i)))
return inventory.getItem(i);
public static ItemStack getInputStack(CraftingInput input, Ingredient ingredient) {
for (var stack : input.items()) {
if (ingredient.test(stack))
return stack;
}
return ItemStack.EMPTY;
}

public static int getInputCount(CraftingContainer inventory) {
int count = 0;
for (int i = 0; i < inventory.getContainerSize(); i++)
if (!inventory.getItem(i).isEmpty())
count++;
return count;
}

public static final Ingredient WUT = Ingredient.of(AE2wtlibItems.UNIVERSAL_TERMINAL);
}
9 changes: 4 additions & 5 deletions src/main/java/de/mari_023/ae2wtlib/wut/recipe/Upgrade.java
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@

import net.minecraft.core.HolderLookup;
import net.minecraft.core.NonNullList;
import net.minecraft.world.inventory.CraftingContainer;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.crafting.CraftingInput;
import net.minecraft.world.item.crafting.Ingredient;
import net.minecraft.world.item.crafting.RecipeSerializer;
import net.minecraft.world.level.Level;
Expand All @@ -32,15 +32,14 @@ public WTDefinition getTerminalDefinition() {
}

@Override
public boolean matches(CraftingContainer inv, Level world) {
public boolean matches(CraftingInput inv, Level world) {
ItemStack wut = InputHelper.getInputStack(inv, InputHelper.WUT);
return !InputHelper.getInputStack(inv, terminal).isEmpty() && !wut.isEmpty()
&& InputHelper.getInputCount(inv) == 2
return !InputHelper.getInputStack(inv, terminal).isEmpty() && !wut.isEmpty() && inv.ingredientCount() == 2
&& wut.get(terminalDefinition.componentType()) != null;
}

@Override
public ItemStack assemble(CraftingContainer inv, HolderLookup.Provider provider) {
public ItemStack assemble(CraftingInput inv, HolderLookup.Provider provider) {
return mergeTerminal(InputHelper.getInputStack(inv, InputHelper.WUT).copy(),
InputHelper.getInputStack(inv, terminal).copy(), terminalDefinition);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -53,25 +53,24 @@ public static void drawSegment(PoseStack poseStack, int startingAngle, int endin
poseStack.pushPose();
RenderSystem.enableBlend();
RenderSystem.defaultBlendFunc();
BufferBuilder bufferBuilder = Tesselator.getInstance().getBuilder();
Matrix4f modelMatrix = poseStack.last().pose();
bufferBuilder.begin(VertexFormat.Mode.TRIANGLE_FAN, DefaultVertexFormat.POSITION_COLOR);// TODO use quads and
// segment it
BufferBuilder bufferBuilder = Tesselator.getInstance().begin(VertexFormat.Mode.TRIANGLE_FAN,
DefaultVertexFormat.POSITION_COLOR);// TODO use quads and segment it

for (int i = endingAngle; i >= startingAngle; i--) {
float x = AngleHelper.getX(i, outerRadius);
float y = AngleHelper.getY(i, outerRadius);
bufferBuilder.vertex(modelMatrix, centerX + x, centerY - y, 0)
.color(color.getRed(), color.getGreen(), color.getBlue(), color.getAlpha()).endVertex();
bufferBuilder.addVertex(modelMatrix, centerX + x, centerY - y, 0)
.setColor(color.getRed(), color.getGreen(), color.getBlue(), color.getAlpha());
}
for (int i = startingAngle; i <= endingAngle; i++) {
float x = AngleHelper.getX(i, innerRadius);
float y = AngleHelper.getY(i, innerRadius);
bufferBuilder.vertex(modelMatrix, centerX + x, centerY - y, 0)
.color(color.getRed(), color.getGreen(), color.getBlue(), color.getAlpha()).endVertex();
bufferBuilder.addVertex(modelMatrix, centerX + x, centerY - y, 0)
.setColor(color.getRed(), color.getGreen(), color.getBlue(), color.getAlpha());
}

BufferUploader.drawWithShader(bufferBuilder.end());
BufferUploader.drawWithShader(bufferBuilder.buildOrThrow());
RenderSystem.disableBlend();
poseStack.popPose();
}
Expand Down

0 comments on commit 7fbb561

Please sign in to comment.