diff --git a/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/performance/PerformanceScreen.java b/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/performance/PerformanceScreen.java index c53cdd2bd..f0a54018f 100644 --- a/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/performance/PerformanceScreen.java +++ b/runtime/src/main/java/me/shedaniel/rei/impl/client/gui/performance/PerformanceScreen.java @@ -149,7 +149,7 @@ public void init() { RoughlyEnoughItemsCore.PERFORMANCE_LOGGER.getStages().forEach((stage, inner) -> { List entries = new ArrayList<>(); inner.times().forEach((obj, time) -> { - entries.add(new PerformanceEntryImpl(new TextComponent(obj instanceof Pair ? ((Pair, REIPlugin>) obj).getFirst().getPluginProviderName() : Objects.toString(obj)), time)); + entries.add(new PerformanceEntryImpl(new TextComponent(obj instanceof Pair ? getNameOfPlugin(obj) : Objects.toString(obj)), time)); }); Collection values = inner.times().values(); long separateTime; @@ -167,6 +167,24 @@ public void init() { addWidget(list); } + private String getNameOfPlugin(Object obj) { + Pair, REIPlugin> pair = (Pair, REIPlugin>) obj; + REIPluginProvider provider = pair.getFirst(); + REIPlugin plugin = pair.getSecond(); + + String providerName = provider.getPluginProviderName(); + + if (provider.provide().size() >= 1) { + String pluginName = plugin.getPluginProviderName(); + + if (!providerName.equals(pluginName)) { + providerName = pluginName + " of " + providerName; + } + } + + return providerName; + } + @Override public void render(PoseStack poses, int mouseX, int mouseY, float delta) { renderDirtBackground(0);