1 Commits
1.18 ... 1.17

Author SHA1 Message Date
Christian Knaapen
68a5bab704 Fixed multiplayer: cache not working. 2022-01-16 15:56:09 +01:00
3 changed files with 7 additions and 23 deletions

View File

@@ -12,7 +12,7 @@ apply plugin: 'net.minecraftforge.gradle'
apply plugin: 'eclipse'
apply plugin: 'maven-publish'
version = '1.17.1-2.28'
version = '1.17.1-2.31'
group = 'nl.requios.effortlessbuilding' // http://maven.apache.org/guides/mini/guide-naming-conventions.html
archivesBaseName = 'effortlessbuilding'

View File

@@ -16,33 +16,25 @@ import javax.annotation.Nonnull;
@Mod.EventBusSubscriber
public class ModeSettingsManager {
private static ModeSettings cache = null;
//Retrieves the buildsettings of a player through the modeCapability capability
//Never returns null
@Nonnull
public static ModeSettings getModeSettings(Player player) {
if (cache != null) return cache;
LazyOptional<ModeCapabilityManager.IModeCapability> modeCapability =
player.getCapability(ModeCapabilityManager.MODE_CAPABILITY, null);
if (modeCapability.isPresent()) {
ModeCapabilityManager.IModeCapability capability = modeCapability.orElse(null);
cache = capability.getModeData();
if (cache == null) {
cache = new ModeSettings();
capability.setModeData(cache);
if (capability.getModeData() == null){
capability.setModeData(new ModeSettings());
}
//Add invalidation listener, to invalidate cache
modeCapability.addListener(self -> cache = null);
return capability.getModeData();
}
EffortlessBuilding.logger.warn("Player does not have modeCapability: " + player);
//Return dummy settings
return new ModeSettings();
// throw new IllegalArgumentException("Player does not have modeCapability capability");
}
public static void setModeSettings(Player player, ModeSettings modeSettings) {

View File

@@ -17,27 +17,19 @@ import javax.annotation.Nonnull;
@Mod.EventBusSubscriber
public class ModifierSettingsManager {
private static ModifierSettings cache = null;
//Retrieves the buildsettings of a player through the modifierCapability capability
//Never returns null
@Nonnull
public static ModifierSettings getModifierSettings(Player player) {
if (cache != null) return cache;
LazyOptional<ModifierCapabilityManager.IModifierCapability> modifierCapability =
player.getCapability(ModifierCapabilityManager.MODIFIER_CAPABILITY, null);
player.getCapability(ModifierCapabilityManager.MODIFIER_CAPABILITY, null);
if (modifierCapability.isPresent()) {
ModifierCapabilityManager.IModifierCapability capability = modifierCapability.orElse(null);
cache = capability.getModifierData();
if (cache == null) {
cache = new ModifierSettings();
capability.setModifierData(cache);
if (capability.getModifierData() == null){
capability.setModifierData(new ModifierSettings());
}
//Add invalidation listener, to invalidate cache
modifierCapability.addListener(self -> cache = null);
return cache;
return capability.getModifierData();
}
EffortlessBuilding.logger.warn("Player does not have modifierCapability: " + player);