Astral Sorcery

Astral Sorcery

63M Downloads

Spectral Relays with a Glass Lens but without the multiblock count towards relay starlight cannibalisation

Jeuvke opened this issue ยท 2 comments

commented

1.15.2-1.12.13
This is because TileSpectralRelay.java only checks if a relay has a lens, and not if it has a multiblock too.
Relevant code:

    private static void foreachNearbyRelay(World world, BlockPos pos, Consumer<TileSpectralRelay> relayConsumer) {
        List<BlockPos> nearbyRelays = BlockDiscoverer.searchForBlocksAround(world, pos, 8,
                ((world1, pos1, state) -> {
                    TileSpectralRelay relay;
                    return state.getBlock() instanceof BlockSpectralRelay &&
                            (relay = MiscUtils.getTileAt(world1, pos1, TileSpectralRelay.class, false)) != null &&
                            relay.hasGlassLens();
                }));
        nearbyRelays.forEach(relayPos -> {
            TileSpectralRelay relay = MiscUtils.getTileAt(world, relayPos, TileSpectralRelay.class, false);
            if (relay != null) {
                relayConsumer.accept(relay);
            }
        });
    }
commented

1.16.4: Fixed with version 1.13.3

commented

1.15.2: Fixed with version 1.12.14