Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion platform/minecraft/gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ minecraft_version=26.1.2
# as they do not follow standard versioning conventions.
minecraft_version_range=[26.1, 26.2)
# The Neo version must agree with the Minecraft version to get a valid artifact
neo_version=26.1.2.72
neo_version=26.1.2.74
# The Neo version range can use any version of Neo as bounds
neo_version_range=[26.1.2.29-beta,)
# The loader version range can only use the major version of FML as bounds
Expand Down
28 changes: 16 additions & 12 deletions platform/minecraft/gradle/dependencies/26.1.2/dependencies.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -31,18 +31,18 @@ dependencies {
// http://www.gradle.org/docs/current/userguide/artifact_dependencies_tutorial.html
// http://www.gradle.org/docs/current/userguide/dependency_management.html

antlr 'org.antlr:antlr4:4.13.1'
jarJar(implementation('org.antlr:antlr4-runtime:4.13.1')) {
version {
strictly '[4.13.1]'
}
}
testImplementation 'com.github.javaparser:javaparser-symbol-solver-core:3.26.4'
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.1'
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.1'
testRuntimeOnly 'org.junit.platform:junit-platform-launcher:1.8.1'

// https://github.com/ollama4j/ollama4j
antlr 'org.antlr:antlr4:4.13.1'
jarJar(implementation('org.antlr:antlr4-runtime:4.13.1')) {
version {
strictly '[4.13.1]'
}
}
testImplementation 'com.github.javaparser:javaparser-symbol-solver-core:3.26.4'
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.1'
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.1'
testRuntimeOnly 'org.junit.platform:junit-platform-launcher:1.8.1'
// https://github.com/ollama4j/ollama4j
// jarJar(implementation("io.github.ollama4j:ollama4j")) {
// version {
// strictly "[1.0.100]"
Expand Down Expand Up @@ -74,4 +74,8 @@ dependencies {
//compileOnly "org.appliedenergistics:appliedenergistics2:19.2.15:api"

//implementation "curse.maven:building-gadgets-298187:6850515"
implementation "curse.maven:ctm-lib-1568397:8260644"
implementation "curse.maven:crystalix-1187033:8229127"
implementation "curse.maven:chisel-3-225236:8224767"
implementation "curse.maven:worldedit-225608:8037379"
}
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,9 @@ ca/teamdman/sfm/common/resourcetype/GasResourceType.java
ca/teamdman/sfm/common/resourcetype/InfuseResourceType.java
ca/teamdman/sfm/common/resourcetype/PigmentResourceType.java
ca/teamdman/sfm/common/resourcetype/SlurryResourceType.java

ca/teamdman/sfm/common/compat/SFMMekanismCompat.java
ca/teamdman/sfm/common/resourcetype/ChemicalResourceType.java
ca/teamdman/sfm/common/program/linting/compat/mekanism/MekanismSidednessProgramLinter.java

ca/teamdman/sfm/common/capability/CauldronBlockCapabilityProvider.java
Original file line number Diff line number Diff line change
@@ -1,13 +1,17 @@
package ca.teamdman.sfm.common.block;

import ca.teamdman.sfm.common.facade.FacadeTransparency;
import ca.teamdman.sfm.common.facade.FacadeData;
import ca.teamdman.sfm.common.facade.FacadeProperties;
import ca.teamdman.sfm.common.localization.LocalizationEntry;
import ca.teamdman.sfm.common.localization.SFMLocalizationDatagen;
import ca.teamdman.sfm.common.registry.registration.SFMBlockEntities;
import ca.teamdman.sfm.common.registry.registration.SFMBlocks;
import net.minecraft.core.BlockPos;
import net.minecraft.core.Direction;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.level.BlockAndLightGetter;
import net.minecraft.world.level.BlockGetter;
import net.minecraft.world.level.LevelReader;
import net.minecraft.world.level.block.Block;
import net.minecraft.world.level.block.EntityBlock;
Expand All @@ -17,9 +21,9 @@
import net.minecraft.world.level.block.state.StateDefinition;
import net.minecraft.world.phys.shapes.Shapes;
import net.minecraft.world.phys.shapes.VoxelShape;
import net.neoforged.neoforge.common.extensions.IBlockStateExtension;
import org.jetbrains.annotations.Nullable;


public class CableFacadeBlock extends CableBlock implements EntityBlock, IFacadableBlock {
@SFMLocalizationDatagen
public static final LocalizationEntry CABLE_FACADE_BLOCK = new LocalizationEntry(
Expand All @@ -28,15 +32,11 @@ public class CableFacadeBlock extends CableBlock implements EntityBlock, IFacada
);

public CableFacadeBlock(Properties properties) {

super(properties.lightLevel(LightBlock.LIGHT_EMISSION));
registerDefaultState(
getStateDefinition()
.any()
.setValue(
FacadeTransparency.FACADE_TRANSPARENCY_PROPERTY,
FacadeTransparency.OPAQUE
)
.setValue(FacadeProperties.SOLID, true)
.setValue(LightBlock.LEVEL, 0)
);
}
Expand All @@ -54,10 +54,9 @@ public CableFacadeBlock(Properties properties) {
public VoxelShape getOcclusionShape(
BlockState pState
) {
// Translucent blocks should have no occlusion
return pState.getValue(FacadeTransparency.FACADE_TRANSPARENCY_PROPERTY) == FacadeTransparency.TRANSLUCENT ?
Shapes.empty() :
Shapes.block();
return pState.getValue(FacadeProperties.SOLID) ?
Shapes.block() :
Shapes.empty();
}

@Override
Expand All @@ -66,17 +65,46 @@ public ItemStack getCloneItemStack(LevelReader level, BlockPos pos, BlockState s
}

@Override
public boolean propagatesSkylightDown(
BlockState pState
) {
protected void createBlockStateDefinition(StateDefinition.Builder<Block, BlockState> builder) {
createFacadeBlockStateDefinition(builder);
builder.add(FacadeProperties.SOLID);
}

@Override
public BlockState getAppearance(BlockState state, BlockAndLightGetter level, BlockPos pos, Direction side, @Nullable BlockState queryState, @Nullable BlockPos queryPos) {
BlockState mimicState = FacadeData.resolveAppearance(level, pos, state);
if (state == mimicState) {
return super.getAppearance(state, level, pos, side, queryState, queryPos);
}
return mimicState.getAppearance(level, pos, side, queryState, queryPos);
}

return pState.getValue(FacadeTransparency.FACADE_TRANSPARENCY_PROPERTY) == FacadeTransparency.TRANSLUCENT;
@Override
protected boolean propagatesSkylightDown(BlockState state) {
return !state.getValue(FacadeProperties.SOLID);
}

@Override
protected void createBlockStateDefinition(StateDefinition.Builder<Block, BlockState> builder) {
public boolean supportsExternalFaceHiding(BlockState state) {
return !state.getValue(FacadeProperties.SOLID);
}

createFacadeBlockStateDefinition(builder);
@Override
public boolean hidesNeighborFace(
BlockGetter level,
BlockPos pos,
BlockState state,
BlockState neighborState,
Direction dir
) {
BlockState ourAppearance = FacadeData.resolveAppearance(level, pos, state);
BlockPos neighborPos = pos.relative(dir);
BlockState neighborAppearance = FacadeData.resolveAppearance(level, neighborPos, neighborState);
return ourAppearance.skipRendering(neighborAppearance, dir);
}

/* @Override
protected boolean skipRendering(BlockState state, BlockState neighborState, Direction direction) {
return false;
}*/
}
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ public class FancyCableBlock extends CableBlock implements IFacadableBlock, Simp

public FancyCableBlock(Properties properties) {

super(properties);
super(properties.noOcclusion());
registerDefaultState(
defaultBlockState()
.setValue(WATERLOGGED, false)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package ca.teamdman.sfm.common.block;

import ca.teamdman.sfm.common.facade.FacadeTransparency;
import ca.teamdman.sfm.common.registry.registration.SFMBlockEntities;
import ca.teamdman.sfm.common.registry.registration.SFMBlocks;
import ca.teamdman.sfm.common.util.MCVersionDependentBehaviour;
Expand All @@ -14,14 +13,15 @@
import net.minecraft.world.level.block.entity.BlockEntity;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.StateDefinition;
import net.neoforged.neoforge.common.extensions.IBlockStateExtension;
import org.jetbrains.annotations.Nullable;

public class FancyCableFacadeBlock extends FancyCableBlock implements EntityBlock, IFacadableBlock {
public FancyCableFacadeBlock(Properties properties) {
super(properties.lightLevel(LightBlock.LIGHT_EMISSION));
registerDefaultState(
defaultBlockState()
.setValue(FacadeTransparency.FACADE_TRANSPARENCY_PROPERTY, FacadeTransparency.TRANSLUCENT)
getStateDefinition()
.any()
.setValue(LightBlock.LEVEL, 0)
);
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package ca.teamdman.sfm.common.block;

import ca.teamdman.sfm.common.facade.FacadeTransparency;
import net.minecraft.core.BlockPos;
import net.minecraft.world.level.LevelAccessor;
import net.minecraft.world.level.block.Block;
Expand All @@ -19,7 +18,6 @@ BlockState getStateForPlacementByFacadePlan(
);

default void createFacadeBlockStateDefinition(StateDefinition.Builder<Block, BlockState> builder) {
builder.add(FacadeTransparency.FACADE_TRANSPARENCY_PROPERTY);
builder.add(LightBlock.LEVEL);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@

import ca.teamdman.sfm.common.blockentity.IFacadeBlockEntity;
import ca.teamdman.sfm.common.facade.FacadeData;
import ca.teamdman.sfm.common.facade.FacadeTransparency;
import ca.teamdman.sfm.common.localization.LocalizationEntry;
import ca.teamdman.sfm.common.localization.SFMLocalizationDatagen;
import ca.teamdman.sfm.common.registry.registration.SFMBlockEntities;
Expand All @@ -16,7 +15,6 @@
import net.minecraft.world.level.Explosion;
import net.minecraft.world.level.LevelReader;
import net.minecraft.world.level.block.EntityBlock;
import net.minecraft.world.level.block.LightBlock;
import net.minecraft.world.level.block.entity.BlockEntity;
import net.minecraft.world.level.block.state.BlockState;
import org.jetbrains.annotations.Nullable;
Expand All @@ -35,17 +33,7 @@ public class ToughCableFacadeBlock extends CableFacadeBlock implements EntityBlo
);

public ToughCableFacadeBlock(Properties properties) {

super(properties.lightLevel(LightBlock.LIGHT_EMISSION));
registerDefaultState(
getStateDefinition()
.any()
.setValue(
FacadeTransparency.FACADE_TRANSPARENCY_PROPERTY,
FacadeTransparency.OPAQUE
)
.setValue(LightBlock.LEVEL, 0)
);
super(properties);
}

@Override
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package ca.teamdman.sfm.common.block;

import ca.teamdman.sfm.common.facade.FacadeTransparency;
import ca.teamdman.sfm.common.localization.LocalizationEntry;
import ca.teamdman.sfm.common.localization.SFMLocalizationDatagen;
import ca.teamdman.sfm.common.registry.registration.SFMBlockEntities;
Expand All @@ -14,7 +13,6 @@
import net.minecraft.world.level.Explosion;
import net.minecraft.world.level.LevelReader;
import net.minecraft.world.level.block.EntityBlock;
import net.minecraft.world.level.block.LightBlock;
import net.minecraft.world.level.block.entity.BlockEntity;
import net.minecraft.world.level.block.state.BlockState;
import org.jetbrains.annotations.Nullable;
Expand All @@ -30,13 +28,7 @@ public class ToughFancyCableFacadeBlock extends FancyCableFacadeBlock implements
);

public ToughFancyCableFacadeBlock(Properties properties) {

super(properties);
registerDefaultState(
defaultBlockState()
.setValue(FacadeTransparency.FACADE_TRANSPARENCY_PROPERTY, FacadeTransparency.TRANSLUCENT)
.setValue(LightBlock.LEVEL, 0)
);
}

@Override
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package ca.teamdman.sfm.common.block;

import ca.teamdman.sfm.common.facade.FacadeTransparency;
import ca.teamdman.sfm.common.localization.LocalizationEntry;
import ca.teamdman.sfm.common.localization.SFMLocalizationDatagen;
import ca.teamdman.sfm.common.registry.registration.SFMBlockEntities;
Expand All @@ -11,7 +10,6 @@
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.level.LevelReader;
import net.minecraft.world.level.block.EntityBlock;
import net.minecraft.world.level.block.LightBlock;
import net.minecraft.world.level.block.entity.BlockEntity;
import net.minecraft.world.level.block.state.BlockState;
import org.jetbrains.annotations.Nullable;
Expand All @@ -24,17 +22,7 @@ public class TunnelledCableFacadeBlock extends CableFacadeBlock implements Entit
);

public TunnelledCableFacadeBlock(Properties properties) {

super(properties.lightLevel(LightBlock.LIGHT_EMISSION));
registerDefaultState(
getStateDefinition()
.any()
.setValue(
FacadeTransparency.FACADE_TRANSPARENCY_PROPERTY,
FacadeTransparency.OPAQUE
)
.setValue(LightBlock.LEVEL, 0)
);
super(properties);
}

@Override
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package ca.teamdman.sfm.common.block;

import ca.teamdman.sfm.common.facade.FacadeTransparency;
import ca.teamdman.sfm.common.localization.LocalizationEntry;
import ca.teamdman.sfm.common.localization.SFMLocalizationDatagen;
import ca.teamdman.sfm.common.registry.registration.SFMBlockEntities;
Expand All @@ -11,7 +10,6 @@
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.level.LevelReader;
import net.minecraft.world.level.block.EntityBlock;
import net.minecraft.world.level.block.LightBlock;
import net.minecraft.world.level.block.entity.BlockEntity;
import net.minecraft.world.level.block.state.BlockState;
import org.jetbrains.annotations.Nullable;
Expand All @@ -24,13 +22,7 @@ public class TunnelledFancyCableFacadeBlock extends FancyCableFacadeBlock implem
);

public TunnelledFancyCableFacadeBlock(Properties properties) {

super(properties.lightLevel(LightBlock.LIGHT_EMISSION));
registerDefaultState(
defaultBlockState()
.setValue(FacadeTransparency.FACADE_TRANSPARENCY_PROPERTY, FacadeTransparency.TRANSLUCENT)
.setValue(LightBlock.LEVEL, 0)
);
super(properties);
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@ public void updateFacadeData(
if (level != null) {
BlockState state = getBlockState();
level.sendBlockUpdated(worldPosition, state, state, Block.UPDATE_IMMEDIATE);
level.getLightEngine().checkBlock(worldPosition);
}
requestModelDataUpdate();
}
Expand All @@ -58,6 +59,8 @@ protected void loadAdditional(
if (tried != null) {
this.facadeData = tried;
requestModelDataUpdate();
if (level != null)
level.getLightEngine().checkBlock(worldPosition);
}
}

Expand Down
Loading