Fixed altar detection

This commit is contained in:
Nicholas Ignoffo 2017-08-16 17:29:24 -07:00
parent 37ec0582eb
commit a10b2ece9a
22 changed files with 36 additions and 204 deletions

View file

@ -2,12 +2,14 @@ package WayofTime.bloodmagic.api_impl;
import WayofTime.bloodmagic.api.altar.EnumAltarComponent;
import WayofTime.bloodmagic.apiv2.IBloodMagicAPI;
import com.google.common.collect.ArrayListMultimap;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.Maps;
import com.google.common.collect.Multimap;
import net.minecraft.block.state.IBlockState;
import net.minecraft.util.ResourceLocation;
import java.util.Map;
import java.util.*;
public class BloodMagicAPI implements IBloodMagicAPI {
@ -15,12 +17,12 @@ public class BloodMagicAPI implements IBloodMagicAPI {
private final BloodMagicBlacklist blacklist;
private final Map<ResourceLocation, Integer> sacrificialValues;
private final Map<IBlockState, EnumAltarComponent> altarComponents;
private final Multimap<EnumAltarComponent, IBlockState> altarComponents;
public BloodMagicAPI() {
this.blacklist = new BloodMagicBlacklist();
this.sacrificialValues = Maps.newHashMap();
this.altarComponents = Maps.newHashMap();
this.altarComponents = ArrayListMultimap.create();
}
@Override
@ -43,14 +45,14 @@ public class BloodMagicAPI implements IBloodMagicAPI {
}
}
altarComponents.put(state, component);
altarComponents.put(component, state);
}
public Map<ResourceLocation, Integer> getSacrificialValues() {
return ImmutableMap.copyOf(sacrificialValues);
}
public Map<IBlockState, EnumAltarComponent> getAltarComponents() {
return ImmutableMap.copyOf(altarComponents);
public List<IBlockState> getComponentStates(EnumAltarComponent component) {
return (List<IBlockState>) altarComponents.get(component);
}
}