Fixed sector remapping in JSON mods / New 76 submission

This commit is contained in:
Anuken
2026-03-07 20:11:11 -05:00
parent 63f0776079
commit 2b74317b34
4 changed files with 17 additions and 6 deletions

View File

@@ -23,7 +23,7 @@ public class SectorSubmissions{
public static void registerSectors(){ public static void registerSectors(){
registerSerpuloSector(76, "Skyon", "https://discord.com/channels/391020510269669376/1379926833411391580/1476466064194801688"); registerSerpuloSector(76, "Tyrant-classZzz", "https://discord.com/channels/391020510269669376/1379926833411391580/1479890094486716499");
registerSerpuloSector(47, "tinport", "https://discord.com/channels/391020510269669376/1379926802591645820/1397649518203371544"); registerSerpuloSector(47, "tinport", "https://discord.com/channels/391020510269669376/1379926802591645820/1397649518203371544");
registerSerpuloSector(225, "Summi", "https://discord.com/channels/391020510269669376/1379926925719376152/1399286858482978900"); registerSerpuloSector(225, "Summi", "https://discord.com/channels/391020510269669376/1379926925719376152/1399286858482978900");
//111 has an alternate submission https://discord.com/channels/391020510269669376/1379926842659569864/1404825715244793938 //111 has an alternate submission https://discord.com/channels/391020510269669376/1379926842659569864/1404825715244793938

View File

@@ -765,7 +765,12 @@ public class ContentParser{
} }
if(value.has("sector")){ if(value.has("sector")){
preset.initialize(planet, value.getInt("sector", 0)); //clear old value
Sector prev = preset.sector;
if(prev != null && prev.preset == preset){
prev.preset = null;
}
preset.initialize(planet, value.getInt("sector", 0), true);
} }
value.remove("sector"); value.remove("sector");

View File

@@ -68,15 +68,21 @@ public class SectorPreset extends UnlockableContent{
} }
public void initialize(Planet planet, int sector){ public void initialize(Planet planet, int sector){
initialize(planet, sector, false);
}
public void initialize(Planet planet, int sector, boolean override){
this.planet = planet; this.planet = planet;
if(generator == null){ if(generator == null){
this.generator = new FileMapGenerator(fileName == null ? this.name : fileName, this); this.generator = new FileMapGenerator(fileName == null ? this.name : fileName, this);
} }
this.originalPosition = sector; this.originalPosition = sector;
//auto remap based on data if(!override){
var data = planet.getData(); //auto remap based on data
if(data != null){ var data = planet.getData();
sector = data.presets.get(name, sector); if(data != null){
sector = data.presets.get(name, sector);
}
} }
sector %= planet.sectors.size; sector %= planet.sectors.size;
this.sector = planet.sectors.get(sector == -1 ? 0 : sector); this.sector = planet.sectors.get(sector == -1 ? 0 : sector);