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