Skip to content

Commit

Permalink
Update NeoForge to 21.0.78-beta to account for breaking changes (#539)
Browse files Browse the repository at this point in the history
* fix compiler errors and update to 21.0.78-beta

* Update RegistrarManagerImpl.java
  • Loading branch information
Jab125 authored Jul 11, 2024
1 parent 4e5f1ee commit cd9551f
Show file tree
Hide file tree
Showing 5 changed files with 17 additions and 32 deletions.
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ fabric_api_version=0.100.0+1.21
mod_menu_version=11.0.1

forge_version=51.0.0
neoforge_version=21.0.42-beta
neoforge_version=21.0.78-beta

# Set to empty if not snapshots
neoforge_pr=
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -63,13 +63,13 @@ public class CreativeTabRegistryImpl {
if (keyEntry.getKey() instanceof TabKey.SupplierTabKey supplierTabKey) {
if (Objects.equals(CreativeModeTabRegistry.getName(event.getTab()), supplierTabKey.supplier().getId())) {
for (ItemStack stack : stacks.get()) {
event.getEntries().put(stack, CreativeModeTab.TabVisibility.PARENT_AND_SEARCH_TABS);
event.accept(stack, CreativeModeTab.TabVisibility.PARENT_AND_SEARCH_TABS);
}
}
} else if (keyEntry.getKey() instanceof TabKey.DirectTabKey directTabKey) {
if (event.getTab().equals(directTabKey.tab())) {
for (ItemStack stack : stacks.get()) {
event.getEntries().put(stack, CreativeModeTab.TabVisibility.PARENT_AND_SEARCH_TABS);
event.accept(stack, CreativeModeTab.TabVisibility.PARENT_AND_SEARCH_TABS);
}
}
}
Expand Down Expand Up @@ -161,44 +161,24 @@ public static void modify(DeferredSupplier<CreativeModeTab> tab, CreativeTabRegi
BUILD_CONTENTS_LISTENERS.add(event -> {
if (tab.isPresent()) {
if (event.getTab().equals(tab.get())) {
filler.accept(event.getFlags(), wrapTabOutput(event.getEntries()), event.hasPermissions());
filler.accept(event.getFlags(), wrapTabOutput(event), event.hasPermissions());
}
} else if (Objects.equals(CreativeModeTabRegistry.getName(event.getTab()), tab.getId())) {
filler.accept(event.getFlags(), wrapTabOutput(event.getEntries()), event.hasPermissions());
filler.accept(event.getFlags(), wrapTabOutput(event), event.hasPermissions());
}
});
}

private static CreativeTabOutput wrapTabOutput(MutableHashedLinkedMap<ItemStack, CreativeModeTab.TabVisibility> entries) {
private static CreativeTabOutput wrapTabOutput(BuildCreativeModeTabContentsEvent event) {
return new CreativeTabOutput() {
@Override
public void acceptAfter(ItemStack after, ItemStack stack, CreativeModeTab.TabVisibility visibility) {
if (after.isEmpty()) {
entries.put(stack, visibility);
} else {
for (Map.Entry<ItemStack, CreativeModeTab.TabVisibility> entry : entries) {
if (ItemStack.isSameItemSameComponents(entry.getKey(), after)) {
after = entry.getKey();
break;
}
}
entries.putAfter(after, stack, visibility);
}
event.insertAfter(after, stack, visibility);
}

@Override
public void acceptBefore(ItemStack before, ItemStack stack, CreativeModeTab.TabVisibility visibility) {
if (before.isEmpty()) {
entries.put(stack, visibility);
} else {
for (Map.Entry<ItemStack, CreativeModeTab.TabVisibility> entry : entries) {
if (ItemStack.isSameItemSameComponents(entry.getKey(), before)) {
before = entry.getKey();
break;
}
}
entries.putBefore(before, stack, visibility);
}
event.insertBefore(before, stack, visibility);
}
};
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@
import net.minecraft.world.entity.SpawnPlacementType;
import net.minecraft.world.entity.SpawnPlacements;
import net.minecraft.world.level.levelgen.Heightmap;
import net.neoforged.neoforge.event.entity.SpawnPlacementRegisterEvent;
import net.neoforged.neoforge.event.entity.RegisterSpawnPlacementsEvent;

import java.util.ArrayList;
import java.util.List;
Expand All @@ -42,10 +42,10 @@ private record Entry<T extends Mob>(Supplier<? extends EntityType<T>> type, Spaw

static {
EventBusesHooks.whenAvailable(ArchitecturyConstants.MOD_ID, bus -> {
bus.<SpawnPlacementRegisterEvent>addListener(event -> {
bus.<RegisterSpawnPlacementsEvent>addListener(event -> {
for (Entry<?> entry : entries) {
Entry<Mob> casted = (Entry<Mob>) entry;
event.register(casted.type().get(), casted.spawnPlacement(), casted.heightmapType(), casted.spawnPredicate(), SpawnPlacementRegisterEvent.Operation.OR);
event.register(casted.type().get(), casted.spawnPlacement(), casted.heightmapType(), casted.spawnPredicate(), RegisterSpawnPlacementsEvent.Operation.OR);
}
entries = null;
});
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -286,6 +286,11 @@ public Holder<E> getHolder() {
return holder = registrar.getHolder(getId());
}

@Override
public ResourceKey<E> getKey() {
return RegistrySupplierImpl.super.getKey();
}

@Override
public RegistrarManager getRegistrarManager() {
return RegistrarManager.get(modId);
Expand Down
2 changes: 1 addition & 1 deletion neoforge/src/main/resources/META-INF/neoforge.mods.toml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ side = "BOTH"
[[dependencies.architectury]]
modId = "neoforge"
type = "required"
versionRange = "[21.0.40-beta,)"
versionRange = "[21.0.78-beta,)"
ordering = "NONE"
side = "BOTH"

Expand Down

0 comments on commit cd9551f

Please sign in to comment.