Fix mod filtering
This commit is contained in:
@@ -11,7 +11,6 @@ public final class RSKeyBindings {
|
||||
public static final KeyBinding OPEN_WIRELESS_CRAFTING_MONITOR = new KeyBinding("key.refinedstorage.openWirelessCraftingMonitor", KeyConflictContext.IN_GAME, 0, "Refined Storage");
|
||||
|
||||
public static void init() {
|
||||
ClientRegistry.registerKeyBinding(OPEN_PORTABLE_GRID);
|
||||
ClientRegistry.registerKeyBinding(OPEN_WIRELESS_CRAFTING_MONITOR);
|
||||
}*/
|
||||
|
||||
|
@@ -6,6 +6,7 @@ import com.raoulvdberge.refinedstorage.screen.grid.stack.FluidGridStack;
|
||||
import com.raoulvdberge.refinedstorage.screen.grid.stack.IGridStack;
|
||||
import com.raoulvdberge.refinedstorage.screen.grid.stack.ItemGridStack;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraftforge.fluids.FluidStack;
|
||||
|
||||
import java.util.List;
|
||||
@@ -46,11 +47,15 @@ public class FilterGridFilter implements Predicate<IGridStack> {
|
||||
FluidStack stackInFilter = (FluidStack) filter.getStack();
|
||||
|
||||
if (filter.isModFilter()) {
|
||||
String stackInFilterModId = /* TODO FluidRegistry.getModId(stackInFilter)*/"bla bla";
|
||||
ResourceLocation stackInFilterRegistryName = stackInFilter.getFluid().getRegistryName();
|
||||
|
||||
if (stackInFilterModId != null && stackInFilterModId.equalsIgnoreCase(stack.getModId())) {
|
||||
if (stackInFilterRegistryName != null) {
|
||||
String stackInFilterModId = stackInFilterRegistryName.getNamespace();
|
||||
|
||||
if (stackInFilterModId.equalsIgnoreCase(stack.getModId())) {
|
||||
return filter.getMode() == IFilter.MODE_WHITELIST;
|
||||
}
|
||||
}
|
||||
} else if (API.instance().getComparer().isEqual(((FluidGridStack) stack).getStack(), stackInFilter, filter.getCompare())) {
|
||||
return filter.getMode() == IFilter.MODE_WHITELIST;
|
||||
}
|
||||
|
@@ -5,6 +5,7 @@ import com.raoulvdberge.refinedstorage.apiimpl.API;
|
||||
import com.raoulvdberge.refinedstorage.render.FluidRenderer;
|
||||
import com.raoulvdberge.refinedstorage.screen.BaseScreen;
|
||||
import net.minecraft.client.resources.I18n;
|
||||
import net.minecraft.util.ResourceLocation;
|
||||
import net.minecraftforge.fluids.FluidStack;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
@@ -54,16 +55,17 @@ public class FluidGridStack implements IGridStack {
|
||||
|
||||
@Override
|
||||
public String getName() {
|
||||
return stack.getDisplayName().getFormattedText(); // TODO correct method usage
|
||||
return stack.getDisplayName().getFormattedText();
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getModId() {
|
||||
if (modId == null) {
|
||||
// modId = FluidRegistry.getModId(stack);
|
||||
modId = "dinosaur";//TODO
|
||||
ResourceLocation registryName = stack.getFluid().getRegistryName();
|
||||
|
||||
if (modId == null) {
|
||||
if (registryName != null) {
|
||||
modId = registryName.getNamespace();
|
||||
} else {
|
||||
modId = "???";
|
||||
}
|
||||
}
|
||||
@@ -92,7 +94,7 @@ public class FluidGridStack implements IGridStack {
|
||||
|
||||
@Override
|
||||
public String getTooltip() {
|
||||
return stack.getDisplayName().getFormattedText();//TODO
|
||||
return stack.getDisplayName().getFormattedText();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -6,8 +6,11 @@ import com.raoulvdberge.refinedstorage.screen.BaseScreen;
|
||||
import com.raoulvdberge.refinedstorage.util.RenderUtils;
|
||||
import net.minecraft.client.resources.I18n;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraftforge.fml.ModContainer;
|
||||
import net.minecraftforge.fml.ModList;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
import java.util.Optional;
|
||||
import java.util.UUID;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@@ -38,13 +41,9 @@ public class ItemGridStack implements IGridStack {
|
||||
|
||||
@Nullable
|
||||
static String getModNameByModId(String modId) {
|
||||
/*ModContainer container = Loader.instance().getActiveModList().stream()
|
||||
.filter(m -> m.getModId().toLowerCase().equals(modId))
|
||||
.findFirst()
|
||||
.orElse(null);
|
||||
Optional<? extends ModContainer> modContainer = ModList.get().getModContainerById(modId);
|
||||
|
||||
return container == null ? null : container.getName();*/
|
||||
return "dinosaur"; // TODO
|
||||
return modContainer.map(container -> container.getModInfo().getDisplayName()).orElse(null);
|
||||
}
|
||||
|
||||
public ItemStack getStack() {
|
||||
|
Reference in New Issue
Block a user