Skip to content

Commit f1694aa

Browse files
committed
fix with autosave and not loading default items
1 parent 431f299 commit f1694aa

2 files changed

Lines changed: 22 additions & 17 deletions

File tree

gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ yarn_mappings=1.21.1+build.3
88
loader_version=0.16.7
99

1010
# Mod Properties
11-
mod_version=1.5.2-Alpha+1.21.1
11+
mod_version=1.5.3-Alpha+1.21.1
1212
maven_group=pl.lordtricker
1313
archives_base_name=ltrynek
1414

src/client/java/pl/lordtricker/ltrynek/client/command/ClientCommandRegistration.java

Lines changed: 21 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -143,6 +143,7 @@ private static void registerLtrynekCommand(
143143
));
144144

145145
ctx.getSource().sendFeedback(ColorUtils.translateColorCodes(msg));
146+
syncMemoryToConfig();
146147
return 1;
147148
})
148149
)
@@ -162,6 +163,7 @@ private static void registerLtrynekCommand(
162163
"profile", activeProfile
163164
));
164165
ctx.getSource().sendFeedback(ColorUtils.translateColorCodes(msg));
166+
syncMemoryToConfig();
165167
return 1;
166168
})
167169
)
@@ -260,6 +262,7 @@ private static void registerLtrynekCommand(
260262
LtrynekClient.serversConfig.soundsEnabled = true;
261263
String msg = Messages.get("command.sounds.enabled");
262264
ctx.getSource().sendFeedback(ColorUtils.translateColorCodes(msg));
265+
saveAllConfigs(LtrynekClient.serversConfig);
263266
return 1;
264267
})
265268
)
@@ -268,6 +271,7 @@ private static void registerLtrynekCommand(
268271
LtrynekClient.serversConfig.soundsEnabled = false;
269272
String msg = Messages.get("command.sounds.disabled");
270273
ctx.getSource().sendFeedback(ColorUtils.translateColorCodes(msg));
274+
saveAllConfigs(LtrynekClient.serversConfig);
271275
return 1;
272276
})
273277
)
@@ -393,25 +397,26 @@ private static void registerLtrynekCommand(
393397
}
394398

395399
private static void syncMemoryToConfig() {
400+
if (LtrynekClient.serversConfig == null || LtrynekClient.serversConfig.servers == null) {
401+
return;
402+
}
396403
Map<String, List<PriceEntry>> allProfiles = ClientPriceListManager.getAllProfiles();
397-
for (Map.Entry<String, List<PriceEntry>> profEntry : allProfiles.entrySet()) {
398-
String profileName = profEntry.getKey();
399-
List<PriceEntry> priceEntries = profEntry.getValue();
400-
ServerEntry se = findServerEntryByProfile(profileName);
401-
if (se == null) continue;
402-
for (PriceEntry storedPe : priceEntries) {
403-
boolean exists = se.prices.stream().anyMatch(pe -> pe.name.equals(storedPe.name));
404-
if (!exists) {
405-
PriceEntry pe = new PriceEntry();
406-
pe.name = storedPe.name;
407-
pe.maxPrice = storedPe.maxPrice;
408-
pe.lore = storedPe.lore;
409-
pe.material = storedPe.material;
410-
pe.enchants = storedPe.enchants;
411-
se.prices.add(pe);
412-
}
404+
405+
for (ServerEntry se : LtrynekClient.serversConfig.servers) {
406+
List<PriceEntry> memList = allProfiles.getOrDefault(se.profileName, List.of());
407+
408+
se.prices.clear();
409+
for (PriceEntry src : memList) {
410+
PriceEntry pe = new PriceEntry();
411+
pe.name = src.name;
412+
pe.maxPrice = src.maxPrice;
413+
pe.lore = src.lore;
414+
pe.material = src.material;
415+
pe.enchants = src.enchants;
416+
se.prices.add(pe);
413417
}
414418
}
419+
415420
saveAllConfigs(LtrynekClient.serversConfig);
416421
}
417422

0 commit comments

Comments
 (0)