Skip to content

Commit

Permalink
Merge branch '1.20.6' into 1.21
Browse files Browse the repository at this point in the history
# Conflicts:
#	common/src/main/java/xaeroplus/feature/render/DrawManager.java
#	common/src/main/java/xaeroplus/mixin/client/MixinGuiMap.java
#	settings.gradle.kts
  • Loading branch information
rfresh2 committed Jan 22, 2025
2 parents 1fcd566 + 8bb3bae commit d0adfba
Show file tree
Hide file tree
Showing 41 changed files with 683 additions and 604 deletions.
43 changes: 32 additions & 11 deletions .github/workflows/1.21.yml
Original file line number Diff line number Diff line change
Expand Up @@ -57,34 +57,55 @@ jobs:
run: echo "XP_VERSION=$(./gradlew -q printXaeroPlusVersion)" >> $GITHUB_ENV

- name: Get Fabric Jar Filename
run: echo "XP_FABRIC=XaeroPlus-${{ env.XP_VERSION}}+fabric-${{ env.MINECRAFT_VERSION }}-WM${{ env.WORLDMAP_VERSION_FABRIC }}-MM${{ env.MINIMAP_VERSION_FABRIC }}" >> $GITHUB_ENV
run: echo "XP_FABRIC=XaeroPlus-${{ env.XP_VERSION }}+fabric-${{ env.MINECRAFT_VERSION }}-WM${{ env.WORLDMAP_VERSION_FABRIC }}-MM${{ env.MINIMAP_VERSION_FABRIC }}" >> $GITHUB_ENV

- name: Get Forge Jar Filename
run: echo "XP_FORGE=XaeroPlus-${{ env.XP_VERSION}}+forge-${{ env.MINECRAFT_VERSION }}-WM${{ env.WORLDMAP_VERSION_FORGE }}-MM${{ env.MINIMAP_VERSION_FORGE }}" >> $GITHUB_ENV
run: echo "XP_FORGE=XaeroPlus-${{ env.XP_VERSION }}+forge-${{ env.MINECRAFT_VERSION }}-WM${{ env.WORLDMAP_VERSION_FORGE }}-MM${{ env.MINIMAP_VERSION_FORGE }}" >> $GITHUB_ENV

- name: Get Neo Jar Filename
run: |
echo "XP_NEO=XaeroPlus-${{ env.XP_VERSION}}+neoforge-${{ env.MINECRAFT_VERSION }}-WM${{ env.WORLDMAP_VERSION_NEO }}-MM${{ env.MINIMAP_VERSION_NEO }}" >> $GITHUB_ENV
- name: Get Commit Hash
run: echo "COMMIT_HASH=$(git rev-parse --short=8 HEAD)" >> $GITHUB_ENV

- name: Get Fabric Jar Result Filename
run: echo "XP_FABRIC_OUT=XaeroPlus-${{ env.XP_VERSION }}-DEV-${{ env.COMMIT_HASH }}+fabric-${{ env.MINECRAFT_VERSION }}-WM${{ env.WORLDMAP_VERSION_FABRIC }}-MM${{ env.MINIMAP_VERSION_FABRIC }}" >> $GITHUB_ENV

- name: Append Commit Hash To Fabric Jar Name
run: mv fabric/build/libs/${{ env.XP_FABRIC }}.jar fabric/build/libs/${{ env.XP_FABRIC_OUT }}.jar

- name: Get Forge Jar Result Filename
run: echo "XP_FORGE_OUT=XaeroPlus-${{ env.XP_VERSION }}-DEV-${{ env.COMMIT_HASH }}+forge-${{ env.MINECRAFT_VERSION }}-WM${{ env.WORLDMAP_VERSION_FORGE }}-MM${{ env.MINIMAP_VERSION_FORGE }}" >> $GITHUB_ENV

- name: Append Commit Hash To Forge Jar Name
run: mv forge/build/libs/${{ env.XP_FORGE }}.jar forge/build/libs/${{ env.XP_FORGE_OUT }}.jar

- name: Get NeoForge Jar Result Filename
run: echo "XP_NEO_OUT=XaeroPlus-${{ env.XP_VERSION }}-DEV-${{ env.COMMIT_HASH }}+neoforge-${{ env.MINECRAFT_VERSION }}-WM${{ env.WORLDMAP_VERSION_NEO }}-MM${{ env.MINIMAP_VERSION_NEO }}" >> $GITHUB_ENV

- name: Append Commit Hash To NeoForge Jar Name
run: mv neo/build/libs/${{ env.XP_NEO }}.jar neo/build/libs/${{ env.XP_NEO_OUT }}.jar

- name: Upload Fabric Artifact
uses: actions/upload-artifact@v4
with:
name: ${{ env.XP_FABRIC }}
path: fabric/build/libs/${{ env.XP_FABRIC }}.jar
name: ${{ env.XP_FABRIC_OUT }}
path: fabric/build/libs/${{ env.XP_FABRIC_OUT }}.jar
if-no-files-found: error

- name: Upload Forge Artifact
uses: actions/upload-artifact@v4
with:
name: ${{ env.XP_FORGE }}
path: forge/build/libs/${{ env.XP_FORGE }}.jar
name: ${{ env.XP_FORGE_OUT }}
path: forge/build/libs/${{ env.XP_FORGE_OUT }}.jar
if-no-files-found: error

- name: Upload NeoForge Artifact
uses: actions/upload-artifact@v4
with:
name: ${{ env.XP_NEO }}
path: neo/build/libs/${{ env.XP_NEO }}.jar
name: ${{ env.XP_NEO_OUT }}
path: neo/build/libs/${{ env.XP_NEO_OUT }}.jar
if-no-files-found: error
outputs:
worldmap_version_fabric: ${{ env.WORLDMAP_VERSION_FABRIC }}
Expand All @@ -93,9 +114,9 @@ jobs:
minimap_version_fabric: ${{ env.MINIMAP_VERSION_FABRIC }}
minimap_version_forge: ${{ env.MINIMAP_VERSION_FORGE }}
minimap_version_neo: ${{ env.MINIMAP_VERSION_NEO }}
xp_fabric: ${{ env.XP_FABRIC }}
xp_forge: ${{ env.XP_FORGE }}
xp_neo: ${{ env.XP_NEO }}
xp_fabric: ${{ env.XP_FABRIC_OUT }}
xp_forge: ${{ env.XP_FORGE_OUT }}
xp_neo: ${{ env.XP_NEO_OUT }}

test-fabric:
runs-on: ubuntu-latest
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
package xaeroplus.feature.extensions;

import net.minecraft.client.gui.GuiGraphics;
import net.minecraft.client.gui.screens.Screen;
import net.minecraft.network.chat.Component;
import xaero.map.gui.GuiSettings;
import xaero.map.gui.ScreenSwitchSettingEntry;
import xaeroplus.settings.SettingLocation;
import xaeroplus.settings.Settings;

public class GuiXaeroPlusOverlaySettings extends GuiSettings {
public GuiXaeroPlusOverlaySettings(Screen parent, Screen escapeScreen) {
super(Component.translatable("xaeroplus.gui.overlay_settings"), parent, escapeScreen);
this.entries = Settings.REGISTRY.getWorldmapConfigSettingEntries(SettingLocation.OVERLAYS);
}

@Override
public void render(GuiGraphics guiGraphics, int par1, int par2, float par3) {
this.renderEscapeScreen(guiGraphics, par1, par2, par3);
super.render(guiGraphics, par1, par2, par3);
}

public static ScreenSwitchSettingEntry getScreenSwitchSettingEntry(Screen parent) {
return new ScreenSwitchSettingEntry(
"xaeroplus.gui.overlay_settings",
GuiXaeroPlusOverlaySettings::new,
null,
true
);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,11 @@ public GuiXaeroPlusWorldMapSettings(Screen parent, Screen escapeScreen) {
super(Component.translatable("xaeroplus.gui.world_map_settings"), parent, escapeScreen);
var mainSettingsEntries = Settings.REGISTRY.getWorldmapConfigSettingEntries(SettingLocation.WORLD_MAP_MAIN);
var chunkHighlightSettingSwitchEntry = GuiXaeroPlusChunkHighlightSettings.getScreenSwitchSettingEntry(parent);
this.entries = new ISettingEntry[mainSettingsEntries.length + 1];
var overlaySettingSwitchEntry = GuiXaeroPlusOverlaySettings.getScreenSwitchSettingEntry(parent);
this.entries = new ISettingEntry[mainSettingsEntries.length + 2];
this.entries[0] = chunkHighlightSettingSwitchEntry;
for (int i = 0; i < mainSettingsEntries.length; i++) {
this.entries[i + 1] = mainSettingsEntries[i];
}
this.entries[1] = overlaySettingSwitchEntry;
System.arraycopy(mainSettingsEntries, 0, this.entries, 2, mainSettingsEntries.length);
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,27 +10,23 @@

import static xaeroplus.util.GuiMapHelper.*;

public class DrawFeature {
public class ChunkHighlightDrawFeature {
private final AsyncLoadingCache<Long, LongList> chunkRenderCache;
private final ChunkHighlightProvider chunkHighlightProvider;
private final HighlightDrawBuffer drawBuffer = new HighlightDrawBuffer();

public DrawFeature(ChunkHighlightProvider chunkHighlightProvider) {
public ChunkHighlightDrawFeature(ChunkHighlightProvider chunkHighlightProvider) {
this.chunkHighlightProvider = chunkHighlightProvider;
this.chunkRenderCache = createChunkHighlightRenderCache(chunkHighlightProvider);
}

private AsyncLoadingCache<Long, LongList> createChunkHighlightRenderCache(final ChunkHighlightProvider chunkHighlightProvider) {
return Caffeine.newBuilder()
this.chunkRenderCache = Caffeine.newBuilder()
.expireAfterWrite(10, TimeUnit.SECONDS)
.refreshAfterWrite(500, TimeUnit.MILLISECONDS)
.executor(Globals.cacheRefreshExecutorService.get())
.removalListener((k, v, cause) -> markDrawBuffersStale())
// only one key
.buildAsync(k -> loadFeatureHighlightsInWindow(chunkHighlightProvider));
.buildAsync(k -> loadFeatureHighlightsInWindow());
}

private LongList loadFeatureHighlightsInWindow(final ChunkHighlightProvider chunkHighlightProvider) {
private LongList loadFeatureHighlightsInWindow() {
final int windowX, windowZ, windowSize;
var guiMapOptional = getGuiMap();
if (guiMapOptional.isPresent()) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,5 @@

@FunctionalInterface
public interface ChunkHighlightSupplier {
LongList getHighlights(final int windowRegionX, final int windowRegionZ, final int windowRegionSize, ResourceKey<Level> dimension);
LongList getHighlights(final int windowRegionX, final int windowRegionZ, final int windowRegionSize, final ResourceKey<Level> dimension);
}
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
package xaeroplus.feature.render;

import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import org.joml.Matrix4f;
import xaero.map.region.MapTileChunk;
import xaeroplus.feature.extensions.SeenChunksTrackingMapTileChunk;
import xaeroplus.util.ChunkUtils;

public class MinimapBackgroundDrawHelper {
public class DrawHelper {

public static void addMMBackgroundToBuffer(Matrix4f matrix, VertexConsumer bufferBuilder, final int drawX, final int drawY, final MapTileChunk chunk) {
// Most of the cpu cost in this method is submitting vertices to the buffer
Expand Down Expand Up @@ -64,4 +65,11 @@ public static void fillIntoExistingBuffer(Matrix4f matrix, VertexConsumer buffer
bufferBuilder.addVertex(matrix, x2, y1, 0.0F).setColor(r, g, b, a);
bufferBuilder.addVertex(matrix, x1, y1, 0.0F).setColor(r, g, b, a);
}

public static void addColoredLineToExistingBuffer(
PoseStack.Pose matrices, VertexConsumer vertexBuffer, float x1, float y1, float x2, float y2, float r, float g, float b, float a
) {
vertexBuffer.addVertex(matrices.pose(), x1, y1, 0.0F).setColor(r, g, b, a).setNormal(matrices, x2 - x1, y2 - y1, 0.0F);
vertexBuffer.addVertex(matrices.pose(), x2, y2, 0.0F).setColor(r, g, b, a).setNormal(matrices, x2 - x1, y2 - y1, 0.0F);
}
}
Loading

0 comments on commit d0adfba

Please sign in to comment.