Skip to content

Commit 3deccb6

Browse files
committed
fix: 🐛 Fixed void upgrade block-list defaults in limited barrels
1 parent d890ec1 commit 3deccb6

3 files changed

Lines changed: 23 additions & 1 deletion

File tree

gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ loader_version_range=[4,)
1515
mod_id=sophisticatedcore
1616
mod_name=Sophisticated Core
1717
mod_license=All Rights Reserved
18-
mod_version=1.4.91
18+
mod_version=1.4.92
1919
mod_group_id=net.p3pp3rf1y
2020
mod_authors=P3pp3rF1y
2121
mod_description=A library / shared functionality mod for Sophisticated Storage and Backpacks

src/main/java/net/p3pp3rf1y/sophisticatedcore/upgrades/FilterLogic.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -147,6 +147,9 @@ protected void setAttributes(Function<FilterAttributes, FilterAttributes> setter
147147

148148
public void setAllowByDefault(boolean allowListDefault) {
149149
this.allowListDefault = allowListDefault;
150+
if (!upgrade.has(filterAttributesComponent)) {
151+
emptyAttributes = null;
152+
}
150153
}
151154

152155
protected void save() {

src/test/java/net/p3pp3rf1y/sophisticatedcore/upgrades/voiding/VoidUpgradeWrapperTest.java

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,25 @@ void emptyContainedFilterDoesNotMatchFluid() {
6363
assertFalse(getVoidUpgradeWrapper().shouldVoidFluid(new FluidStack(Fluids.WATER, 1_000), VoidType.ALWAYS));
6464
}
6565

66+
@Test
67+
void setAllowByDefaultUpdatesEmptyFilterAttributes() {
68+
VoidUpgradeWrapper wrapper = getVoidUpgradeWrapper();
69+
70+
wrapper.getFilterLogic().setAllowByDefault(false);
71+
72+
assertTrue(wrapper.getFilterLogic().matchesFilter(new ItemStack(Items.DIAMOND)));
73+
}
74+
75+
@Test
76+
void setAllowByDefaultDoesNotOverridePersistedFilterAttributes() {
77+
VoidUpgradeWrapper wrapper = getVoidUpgradeWrapper();
78+
wrapper.getFilterLogic().setAllowList(true);
79+
80+
wrapper.getFilterLogic().setAllowByDefault(false);
81+
82+
assertFalse(wrapper.getFilterLogic().matchesFilter(new ItemStack(Items.DIAMOND)));
83+
}
84+
6685
private static VoidUpgradeWrapper getVoidUpgradeWrapper() {
6786
VoidUpgradeItem upgradeItem = mock(VoidUpgradeItem.class);
6887
when(upgradeItem.getFilterSlotCount()).thenReturn(1);

0 commit comments

Comments
 (0)