Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add registry context to LootTableLoadEvent #1677

Open
wants to merge 5 commits into
base: 1.21.x
Choose a base branch
from

Conversation

Matyrobbrt
Copy link
Member

Closes #1625
Adds an AT for RegistryOps.lookupProvider to be able to extract it from method that only have a registry ops.

@Matyrobbrt Matyrobbrt added enhancement New (or improvement to existing) feature or request data driven This request involves a data driven system 1.21.3 Targeted at Minecraft 1.21.3 labels Nov 9, 2024
@neoforged-pr-publishing
Copy link

neoforged-pr-publishing bot commented Nov 9, 2024

  • Publish PR to GitHub Packages

Last commit published: 828b516b85d88540c4bcd1a0394a114786b3cba9.

PR Publishing

The artifacts published by this PR:

Repository Declaration

In order to use the artifacts published by the PR, add the following repository to your buildscript:

repositories {
    maven {
        name 'Maven for PR #1677' // https://github.com/neoforged/NeoForge/pull/1677
        url 'https://prmaven.neoforged.net/NeoForge/pr1677'
        content {
            includeModule('net.neoforged', 'testframework')
            includeModule('net.neoforged', 'neoforge')
        }
    }
}

MDK installation

In order to setup a MDK using the latest PR version, run the following commands in a terminal.
The script works on both *nix and Windows as long as you have the JDK bin folder on the path.
The script will clone the MDK in a folder named NeoForge-pr1677.
On Powershell you will need to remove the -L flag from the curl invocation.

mkdir NeoForge-pr1677
cd NeoForge-pr1677
curl -L https://prmaven.neoforged.net/NeoForge/pr1677/net/neoforged/neoforge/21.4.14-beta-pr-1677-gh-1625/mdk-pr1677.zip -o mdk.zip
jar xf mdk.zip
rm mdk.zip || del mdk.zip

To test a production environment, you can download the installer from here.

@neoforged-compatibility-checks
Copy link

neoforged-compatibility-checks bot commented Nov 9, 2024

@Matyrobbrt, this PR introduces breaking changes.
Fortunately, this project is currently accepting breaking changes, but if they are not intentional, please revert them.
Last checked commit: 828b516b85d88540c4bcd1a0394a114786b3cba9.

neoforge (:neoforge)

  • net/neoforged/neoforge/event/LootTableLoadEvent
    • <init>(Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/level/storage/loot/LootTable;)V: ❗ API method was removed
  • net/neoforged/neoforge/event/EventHooks
    • loadLootTable(Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/level/storage/loot/LootTable;)Lnet/minecraft/world/level/storage/loot/LootTable;: ❗ API method was removed

if (table == LootTable.EMPTY) // Empty table has a null name, and shouldn't be modified anyway.
return null;
LootTableLoadEvent event = new LootTableLoadEvent(name, table);
LootTableLoadEvent event = new LootTableLoadEvent(registries, name, table);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How did it end up that you added the lookup provider to the end of the args for loadLootTable but the front of the args for LoadLootTableEvent?

@Matyrobbrt Matyrobbrt added keep rebased Add this label to a PR to keep it rebased continuously automatically 1.21.4 Targeted at Minecraft 1.21.4 and removed 1.21.3 Targeted at Minecraft 1.21.3 keep rebased Add this label to a PR to keep it rebased continuously automatically labels Dec 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
1.21.4 Targeted at Minecraft 1.21.4 data driven This request involves a data driven system enhancement New (or improvement to existing) feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

LootTableLoadEvent does not have registry access
3 participants