Clickable advancements[Forge/Fabric]

Clickable advancements[Forge/Fabric]

30M Downloads

[Bug]: incompatibility with advancement-reload mod

42atomys opened this issue ยท 6 comments

commented

Describe the bug you're experiencing

Hi, I'm the creator of the mod advancements-reloaded, and a player reached out a few weeks ago regarding an incompatibility between our mods. I tried to find the source code to understand what you're calling to attempt to fix the issue, but your code isn't public. Before implementing what your mod does, Iโ€™d prefer to discuss with you to ensure compatibility. :)

Original issue : 42atomys/mc-advancements-reloaded#16

Reproducability

  1. Minecraft version 1.21 / 1.21.1 The list below don't list above 1.19
  2. Have both mods installed
  3. Try to click on an advancement, the new UI dont open.

Mod up to date

  • Before submitting this issue I updated to the newest version and reproduced it

Minecraft version

1.19

Modloader version

Fabric

Logs

n/a

commented

you just need to select the right branch to view the code :D https://github.com/someaddons/ClickableAdvancements/tree/fabric1.21

you're probably interested in:

final AdvancementsScreen screen = new AdvancementsScreen(manager);

if I understood it right that you're adding a more fancy advancement window instead of the vanilla one.
Though if yours did extend the vanilla type and replaced the screen during setScreen with your custom one it should work by default without any need of explicit compat

commented

Good thing, I don't think to look at branches !

I have rework a lot of code and AdvancementReloadedScreen aren't extended from AdvancementScreen but from Screen directly (act as replacement) to prevent a lot of mixin !

In my case I have also rework some part of the AdvancementTab to increase performance when rendering thousand of advancement in the same tab and the line https://github.com/42atomys/mc-advancements-reloaded/blob/mc-1.21/common/src/main/java/codes/atomys/advr/screens/AdvancementReloadedTab.java#L468 cannot be called because scroll aren't present anymore ๐Ÿ˜ข

I think the "same" behavior will be AdvancementReloadedTad#move, need to be tried.

Maybe the "best solution" are to create an interface of your need, in addition of the vanilla behavior, and I will match it (ensure future compatibility with others mods in the same time).

WDYT ?

commented

got same issue xD

commented

Good thing, I don't think to look at branches !

I have rework a lot of code and AdvancementReloadedScreen aren't extended from AdvancementScreen but from Screen directly (act as replacement) to prevent a lot of mixin !

In my case I have also rework some part of the AdvancementTab to increase performance when rendering thousand of advancement in the same tab and the line

actualScreen.selectedTab.scroll(midX - entry.getX(), midY - entry.getY());

cannot be called because scroll aren't present anymore ๐Ÿ˜ข
I think the "same" behavior will be AdvancementReloadedTad#move, need to be tried.

Maybe the "best solution" are to create an interface of your need, in addition of the vanilla behavior, and I will match it (ensure future compatibility with others mods in the same time).

WDYT ?

I'm not sure why you are not extending the base class for proper typing, if you do that you should not need any additional mixins? You can just override what you need

commented

Don't worry we will handle that :)

commented

Hi there, this was something I also was looking into. I added the mod, but it opened like the classic frame instead the nice full screen one that [mc-advancements-reloaded] Provides. Hope to see some sort of option or fix for this in the future if possible :)