From 67f366dd2d38beab41162f9aa98f016d00da7fc8 Mon Sep 17 00:00:00 2001 From: shedaniel Date: Wed, 9 Aug 2023 03:24:02 +0800 Subject: [PATCH] Fix plugin names in performance screen --- .../gui/performance/PerformanceScreen.java | 20 ++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) 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);