Skip to content

Commit

Permalink
Merge branch '1.20.4' into 1.20.6
Browse files Browse the repository at this point in the history
  • Loading branch information
rfresh2 committed Jul 17, 2024
2 parents e1e2b82 + 80b4a63 commit cc81088
Show file tree
Hide file tree
Showing 13 changed files with 215 additions and 1 deletion.
1 change: 1 addition & 0 deletions common/src/main/java/xaeroplus/module/ModuleManager.java
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ public static void init() {
asList(
new BaritoneGoalSync(),
new FpsLimiter(),
new Highways(),
new LiquidNewChunks(),
new OldChunks(),
new PaletteNewChunks(),
Expand Down
131 changes: 131 additions & 0 deletions common/src/main/java/xaeroplus/module/impl/Highways.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,131 @@
package xaeroplus.module.impl;

import it.unimi.dsi.fastutil.ints.IntOpenHashSet;
import it.unimi.dsi.fastutil.ints.IntSet;
import net.minecraft.resources.ResourceKey;
import net.minecraft.world.level.Level;
import xaeroplus.Globals;
import xaeroplus.feature.render.ChunkHighlightProvider;
import xaeroplus.feature.render.ColorHelper;
import xaeroplus.module.Module;
import xaeroplus.settings.XaeroPlusSettingRegistry;
import xaeroplus.util.ChunkUtils;

import static xaeroplus.feature.render.ColorHelper.getColor;

public class Highways extends Module {
private int highwaysColor = getColor(0, 0, 255, 100);

// Highway data sourced from: https://www.desmos.com/calculator/ogsleiq29o

/**
* Known Errors / Missing Data
*
* Lesser known highways like Old Spawn Road and Flower Trail (and many more)
*
* OW/End highways extend past actual road
*/

private static final IntSet ringRoads = chunkSetFromPosList(
200,
500,
1000,
1500,
2000,
2500,
5000,
7500,
10000,
15000,
20000,
25000,
50000,
62500,
100000,
125000,
250000,
500000,
750000,
1000000,
1250000,
1568852,
1875000,
2500000,
3750000
);

private static final IntSet diamonds = chunkSetFromPosList(
2500,
5000,
25000,
50000,
125000,
250000,
500000,
3750000
);

private static final int fiftyK = ChunkUtils.posToChunkPos(50000);
private static final int fiveK = ChunkUtils.posToChunkPos(5000);

@Override
public void onEnable() {
Globals.drawManager.registerChunkHighlightProvider(
this.getClass(),
new ChunkHighlightProvider(
this::isHighwayChunk,
this::getHighwayColor
));
}

@Override
public void onDisable() {
Globals.drawManager.unregister(this.getClass());
}

public boolean isHighwayChunk(int x, int z, ResourceKey<Level> dimension) {
if (x == 0 || z == 0) return true; // cardinal directions
var xAbs = Math.abs(x);
var zAbs = Math.abs(z);
if (xAbs == zAbs) return true; // diags
if (dimension == Level.NETHER) {
// ring roads
if (ringRoads.contains(xAbs)) {
if (z >= -xAbs && z <= xAbs) return true;
}
if (ringRoads.contains(zAbs)) {
if (x >= -zAbs && x <= zAbs) return true;
}

// diamonds
if (diamonds.contains(xAbs + zAbs)) return true;

// grid
if (xAbs < fiftyK && zAbs < fiftyK) {
if (xAbs % fiveK == 0) return true;
if (zAbs % fiveK == 0) return true;
}
}
return false;
}

public int getHighwayColor() {
return highwaysColor;
}

public void setRgbColor(final int color) {
highwaysColor = ColorHelper.getColorWithAlpha(color, (int) XaeroPlusSettingRegistry.highwaysColorAlphaSetting.getValue());
}

public void setAlpha(final float a) {
highwaysColor = ColorHelper.getColorWithAlpha(highwaysColor, (int) a);
}

private static IntOpenHashSet chunkSetFromPosList(int... pos) {
final IntOpenHashSet set = new IntOpenHashSet(pos.length);
for (int i = 0; i < pos.length; i++) {
set.add(ChunkUtils.posToChunkPos(pos[i]));
}
return set;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,6 @@ public final class XaeroPlusSettingRegistry {
/**
* The order settings are defined here determines the order in the settings GUI's.
*/

public static final XaeroPlusBooleanSetting minimapFpsLimiter = XaeroPlusBooleanSetting.create(
"Minimap FPS Limiter",
"setting.minimap.fps_limiter",
Expand Down Expand Up @@ -419,6 +418,29 @@ public final class XaeroPlusSettingRegistry {
(b) -> ModuleManager.getModule(PortalSkipDetection.class).setOldChunksInverse(b),
true,
SettingLocation.CHUNK_HIGHLIGHTS);
public static final XaeroPlusBooleanSetting highwayHighlightsSetting = XaeroPlusBooleanSetting.create(
"2b2t Highways",
"setting.world_map.2b2t_highways_enabled",
"setting.world_map.2b2t_highways_enabled.tooltip",
(b) -> ModuleManager.getModule(Highways.class).setEnabled(b),
false,
SettingLocation.CHUNK_HIGHLIGHTS);
public static final XaeroPlusEnumSetting<ColorHelper.HighlightColor> highwaysColorSetting = XaeroPlusEnumSetting.create(
"2b2t Highways Color",
"setting.world_map.2b2t_highways_color",
"setting.world_map.2b2t_highways_color.tooltip",
(b) -> ModuleManager.getModule(Highways.class).setRgbColor(b.getColor()),
ColorHelper.HighlightColor.values(),
ColorHelper.HighlightColor.BLUE,
SettingLocation.CHUNK_HIGHLIGHTS);
public static final XaeroPlusFloatSetting highwaysColorAlphaSetting = XaeroPlusFloatSetting.create(
"2b2t Highways Opacity",
"setting.world_map.2b2t_highways_opacity",
0f, 255f, 10f,
"setting.world_map.2b2t_highways_opacity.tooltip",
(b) -> ModuleManager.getModule(Highways.class).setAlpha(b),
100,
SettingLocation.CHUNK_HIGHLIGHTS);
public static final XaeroPlusBooleanSetting owAutoWaypointDimension = XaeroPlusBooleanSetting.create(
"Prefer Overworld Waypoints",
"setting.world_map.ow_auto_waypoint_dimension",
Expand Down
6 changes: 6 additions & 0 deletions common/src/main/resources/assets/xaeroplus/lang/en_us.json
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,12 @@
"setting.world_map.portal_skip_new_chunks.tooltip": "Uses NewChunks to determine if a chunk was not loaded before. Therefore a portal could not have been created in its radius. \n Requires NewChunks to be enabled.",
"setting.world_map.portal_skip_old_chunks_inverse": "PortalSkip OldChunks Inverse",
"setting.world_map.portal_skip_old_chunks_inverse.tooltip": "Uses OldChunks Inverse to determine if a chunk was not loaded before. Therefore a portal could not have been created in its radius. \n Requires OldChunks inverse to be enabled.",
"setting.world_map.2b2t_highways_enabled": "2b2t Highways",
"setting.world_map.2b2t_highways_enabled.tooltip": "Highlights chunks on 2b2t highways",
"setting.world_map.2b2t_highways_color": "2b2t Highways Color",
"setting.world_map.2b2t_highways_color.tooltip": "Sets the color of 2b2t Highways highlights",
"setting.world_map.2b2t_highways_opacity": "2b2t Highways Opacity",
"setting.world_map.2b2t_highways_opacity.tooltip": "Sets the color opacity of 2b2t Highways highlights",
"setting.world_map.wdl_highlight": "WDL Highlight",
"setting.world_map.wdl_highlight.tooltip": "Highlights chunks WDL mod has downloaded on the Minimap and WorldMap.",
"setting.world_map.wdl_opacity": "WDL Opacity",
Expand Down
6 changes: 6 additions & 0 deletions common/src/main/resources/assets/xaeroplus/lang/es_ar.json
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,12 @@
"setting.world_map.portal_skip_new_chunks.tooltip": "Usa ChunksNuevos para determinar si un chunk no se cargó antes. De asi serlo, no se pudo haber creado un portal en su radio. \n Requiere que ChunksNuevos esté habilitado.",
"setting.world_map.portal_skip_old_chunks_inverse": "PortalSkip ChunksAntiguos Invertido",
"setting.world_map.portal_skip_old_chunks_inverse.tooltip": "Usa ChunksAntiguos para determinar si un chunk no se cargó antes. Por lo tanto, no se pudo haber creado un portal en su radio. \n Requiere que ChunksAntiguos Invertido esté habilitado.",
"setting.world_map.2b2t_highways_enabled": "Carreteras 2b2t",
"setting.world_map.2b2t_highways_enabled.tooltip": "Destaca los chunks en las carreteras de 2b2t",
"setting.world_map.2b2t_highways_color": "Color de las Carreteras 2b2t",
"setting.world_map.2b2t_highways_color.tooltip": "Establece el color de los resaltados de las carreteras de 2b2t",
"setting.world_map.2b2t_highways_opacity": "Opacidad de las Carreteras 2b2t",
"setting.world_map.2b2t_highways_opacity.tooltip": "Establece la opacidad del color de los resaltados de las carreteras de 2b2t",
"setting.world_map.wdl_highlight": "Resaltado WDL",
"setting.world_map.wdl_highlight.tooltip": "Resalta los chunk que el mod WDL (World Download) ha descargado en el Minimapa y el MapaMundi.",
"setting.world_map.wdl_opacity": "Opacidad Resaltado WDL",
Expand Down
6 changes: 6 additions & 0 deletions common/src/main/resources/assets/xaeroplus/lang/fr_ca.json
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,12 @@
"setting.world_map.portal_skip_new_chunks.tooltip": "Utilise NewChunks pour déterminer si un morceau n'a pas été chargé auparavant. Un portail n’aurait donc pas pu être créé dans son rayon.\n Nécessite que NewChunks soit activé.",
"setting.world_map.portal_skip_old_chunks_inverse": "PortalSkip OldChunks Inverse",
"setting.world_map.portal_skip_old_chunks_inverse.tooltip": "Utilise OldChunks Inverse pour déterminer si un morceau n'a pas été chargé auparavant. Un portail n’aurait donc pas pu être créé dans son rayon.\n Nécessite l’activation d’OldChunks inverse.",
"setting.world_map.2b2t_highways_enabled": "Autoroutes 2b2t",
"setting.world_map.2b2t_highways_enabled.tooltip": "Surligne les chunks sur les autoroutes de 2b2t",
"setting.world_map.2b2t_highways_color": "Couleur des Autoroutes 2b2t",
"setting.world_map.2b2t_highways_color.tooltip": "Définit la couleur des surlignages des autoroutes de 2b2t",
"setting.world_map.2b2t_highways_opacity": "Opacité des Autoroutes 2b2t",
"setting.world_map.2b2t_highways_opacity.tooltip": "Définit l'opacité des surlignages des autoroutes de 2b2t",
"setting.world_map.wdl_highlight": "Mise en évidence WDL",
"setting.world_map.wdl_highlight.tooltip": "Met en évidence les chunks que le mod WDL a téléchargés sur la Minimap et la WorldMap.",
"setting.world_map.wdl_opacity": "Opacité WDL",
Expand Down
6 changes: 6 additions & 0 deletions common/src/main/resources/assets/xaeroplus/lang/fr_fr.json
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,12 @@
"setting.world_map.portal_skip_new_chunks.tooltip": "Utilise NewChunks pour déterminer si un morceau n'a pas été chargé auparavant. Un portail n’aurait donc pas pu être créé dans son rayon.\n Nécessite que NewChunks soit activé.",
"setting.world_map.portal_skip_old_chunks_inverse": "PortalSkip OldChunks Inverse",
"setting.world_map.portal_skip_old_chunks_inverse.tooltip": "Utilise OldChunks Inverse pour déterminer si un morceau n'a pas été chargé auparavant. Un portail n’aurait donc pas pu être créé dans son rayon.\n Nécessite l’activation d’OldChunks inverse.",
"setting.world_map.2b2t_highways_enabled": "Autoroutes 2b2t",
"setting.world_map.2b2t_highways_enabled.tooltip": "Surligne les chunks sur les autoroutes de 2b2t",
"setting.world_map.2b2t_highways_color": "Couleur des Autoroutes 2b2t",
"setting.world_map.2b2t_highways_color.tooltip": "Définit la couleur des surlignages des autoroutes de 2b2t",
"setting.world_map.2b2t_highways_opacity": "Opacité des Autoroutes 2b2t",
"setting.world_map.2b2t_highways_opacity.tooltip": "Définit l'opacité des surlignages des autoroutes de 2b2t",
"setting.world_map.wdl_highlight": "Mise en évidence WDL",
"setting.world_map.wdl_highlight.tooltip": "Met en évidence les chunks que le mod WDL a téléchargés sur la Minimap et la WorldMap.",
"setting.world_map.wdl_opacity": "Opacité WDL",
Expand Down
6 changes: 6 additions & 0 deletions common/src/main/resources/assets/xaeroplus/lang/ja_jp.json
Original file line number Diff line number Diff line change
Expand Up @@ -97,6 +97,12 @@
"setting.world_map.portal_skip_new_chunks.tooltip": "NewChunksを使用して、チャンクが以前にロードされていないかどうかを判断する。そのため、ポータルがその半径内に作成されていない可能性があります。\nNewChunks が有効になっている必要があります。",
"setting.world_map.portal_skip_old_chunks_inverse": "PortalSkip OldChunks Inverse",
"setting.world_map.portal_skip_old_chunks_inverse.tooltip": "チャンクが以前にロードされていないかどうかを判断するために、OldChunks Inverseを使用する。そのため、ポータルがその半径内に作成されていない可能性があります。\nOldChunks Inverseが有効になっている必要があります。",
"setting.world_map.2b2t_highways_enabled": "2b2t ハイウェイ",
"setting.world_map.2b2t_highways_enabled.tooltip": "2b2t ハイウェイ上のチャンクを強調表示します",
"setting.world_map.2b2t_highways_color": "2b2t ハイウェイの色",
"setting.world_map.2b2t_highways_color.tooltip": "2b2t ハイウェイの強調表示の色を設定します",
"setting.world_map.2b2t_highways_opacity": "2b2t ハイウェイの不透明度",
"setting.world_map.2b2t_highways_opacity.tooltip": "2b2t ハイウェイの強調表示の不透明度を設定します",
"setting.world_map.wdl_highlight": "WDL Highlight",
"setting.world_map.wdl_highlight.tooltip": "WDL modがMinimapとWorldMapにダウンロードしたチャンクをハイライトします。",
"setting.world_map.wdl_opacity": "WDL Opacity",
Expand Down
6 changes: 6 additions & 0 deletions common/src/main/resources/assets/xaeroplus/lang/pl_pl.json
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,12 @@
"setting.world_map.portal_skip_new_chunks.tooltip": "Używa NewChunks do określenia, czy porcja nie była wcześniej załadowana. Dlatego w jego promieniu nie można było stworzyć portalu.\n Wymaga włączenia NewChunks.",
"setting.world_map.portal_skip_old_chunks_inverse": "PortalPomiń odwrotność OldChunks",
"setting.world_map.portal_skip_old_chunks_inverse.tooltip": "Używa OldChunks Inverse, aby określić, czy porcja nie była wcześniej załadowana. Dlatego w jego promieniu nie można było stworzyć portalu.\n Wymaga włączenia odwrotności OldChunks.",
"setting.world_map.2b2t_highways_enabled": "Autostrady 2b2t",
"setting.world_map.2b2t_highways_enabled.tooltip": "Podświetla chunki na autostradach 2b2t",
"setting.world_map.2b2t_highways_color": "Kolor Autostrad 2b2t",
"setting.world_map.2b2t_highways_color.tooltip": "Ustawia kolor podświetleń autostrad 2b2t",
"setting.world_map.2b2t_highways_opacity": "Przezroczystość Autostrad 2b2t",
"setting.world_map.2b2t_highways_opacity.tooltip": "Ustawia przezroczystość podświetleń autostrad 2b2t",
"setting.world_map.wdl_highlight": "Podświetlanie WDL",
"setting.world_map.wdl_highlight.tooltip": "Podświetla chunki, które mod WDL pobrał na Minimapę i Mapę Świata.",
"setting.world_map.wdl_opacity": "Nieprzezroczystość WDL",
Expand Down
6 changes: 6 additions & 0 deletions common/src/main/resources/assets/xaeroplus/lang/pt_pt.json
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,12 @@
"setting.world_map.portal_skip_new_chunks.tooltip": "Usa partes novas do mapa para determinar se essa parte ainda não tinha sido carregada. Portanto um portal não poderá ter sido criado na sua área. \n É necessário Partes Novas ativo.",
"setting.world_map.portal_skip_old_chunks_inverse": "Saltos em Portais em Partes Antigas Invertido",
"setting.world_map.portal_skip_old_chunks_inverse.tooltip": "Usa partes antigas inversamente para determinar se essa parte ainda não tinha sido carregada. Portanto um portal não poderá ter sido criado na sua área. \n É necessário Partes Antigas Invertidas ativo.",
"setting.world_map.2b2t_highways_enabled": "Rodovias 2b2t",
"setting.world_map.2b2t_highways_enabled.tooltip": "Destaca chunks nas rodovias 2b2t",
"setting.world_map.2b2t_highways_color": "Cor das Rodovias 2b2t",
"setting.world_map.2b2t_highways_color.tooltip": "Define a cor dos destaques das rodovias 2b2t",
"setting.world_map.2b2t_highways_opacity": "Opacidade das Rodovias 2b2t",
"setting.world_map.2b2t_highways_opacity.tooltip": "Define a opacidade da cor dos destaques das rodovias 2b2t",
"setting.world_map.wdl_highlight": "Destacar WDL",
"setting.world_map.wdl_highlight.tooltip": "Destaca partes do mapa transferidas pelo mod WDL no mini-mapa e mapa-mundo.",
"setting.world_map.wdl_opacity": "Transparência de Destaque do WDL",
Expand Down
6 changes: 6 additions & 0 deletions common/src/main/resources/assets/xaeroplus/lang/ru_ru.json
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,12 @@
"setting.world_map.portal_skip_new_chunks.tooltip": "Использует NewChunks, чтобы определить, не был ли чанк загружен ранее. Следовательно, портал не мог быть создан в его радиусе.\n Требуется, чтобы NewChunks был включен.",
"setting.world_map.portal_skip_old_chunks_inverse": "PortalSkip OldChunks Инверсия",
"setting.world_map.portal_skip_old_chunks_inverse.tooltip": "Использует OldChunks Inverse, чтобы определить, не был ли чанк загружен ранее. Следовательно, портал не мог быть создан в его радиусе.\n Требуется, чтобы инверсия OldChunks была включена.",
"setting.world_map.2b2t_highways_enabled": "Шоссе 2b2t",
"setting.world_map.2b2t_highways_enabled.tooltip": "Выделяет чанки на шоссе 2b2t",
"setting.world_map.2b2t_highways_color": "Цвет шоссе 2b2t",
"setting.world_map.2b2t_highways_color.tooltip": "Устанавливает цвет выделения шоссе 2b2t",
"setting.world_map.2b2t_highways_opacity": "Прозрачность шоссе 2b2t",
"setting.world_map.2b2t_highways_opacity.tooltip": "Устанавливает прозрачность цвета выделения шоссе 2b2t",
"setting.world_map.wdl_highlight": "WDL Выделять",
"setting.world_map.wdl_highlight.tooltip": "Выделенные анки WDL mod загружает на миникарту и карту мира.",
"setting.world_map.wdl_opacity": "WDL Непрозрачность",
Expand Down
6 changes: 6 additions & 0 deletions common/src/main/resources/assets/xaeroplus/lang/vi_vn.json
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,12 @@
"setting.world_map.portal_skip_new_chunks.tooltip": "Sử dụng NewChunks để xác định nếu một chunk chưa được tải trước đó. Do đó, một cổng không thể được tạo trong bán kính của nó. \n Yêu cầu NewChunks được kích hoạt.",
"setting.world_map.portal_skip_old_chunks_inverse": "PortalSkip Đảo Ngược OldChunks",
"setting.world_map.portal_skip_old_chunks_inverse.tooltip": "Sử dụng Đảo Ngược OldChunks để xác định nếu một chunk chưa được tải trước đó. Do đó, một cổng không thể được tạo trong bán kính của nó. \n Yêu cầu Đảo Ngược OldChunks được kích hoạt.",
"setting.world_map.2b2t_highways_enabled": "Đường cao tốc 2b2t",
"setting.world_map.2b2t_highways_enabled.tooltip": "Làm nổi bật các chunk trên đường cao tốc 2b2t",
"setting.world_map.2b2t_highways_color": "Màu sắc Đường cao tốc 2b2t",
"setting.world_map.2b2t_highways_color.tooltip": "Đặt màu cho các điểm nổi bật trên đường cao tốc 2b2t",
"setting.world_map.2b2t_highways_opacity": "Độ trong suốt Đường cao tốc 2b2t",
"setting.world_map.2b2t_highways_opacity.tooltip": "Đặt độ trong suốt của màu trên đường cao tốc 2b2t",
"setting.world_map.wdl_highlight": "Nổi Bật WDL",
"setting.world_map.wdl_highlight.tooltip": "Nổi bật các chunk WDL mod đã tải xuống trên Minimap và WorldMap.",
"setting.world_map.wdl_opacity": "Độ Mờ WDL",
Expand Down
Loading

0 comments on commit cc81088

Please sign in to comment.