• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

CyclopsMC / IntegratedDynamics / 21104370479

18 Jan 2026 02:08AM UTC coverage: 45.176% (-0.008%) from 45.184%
21104370479

Pull #1594

github

web-flow
Merge 51f5da90d into 506a005e1
Pull Request #1594: Fix part capabilities not being invalidated when network is reinitialized

2633 of 8602 branches covered (30.61%)

Branch coverage included in aggregate %.

11924 of 23621 relevant lines covered (50.48%)

2.4 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

34.29
/src/main/java/org/cyclops/integrateddynamics/core/network/NetworkElementBase.java
1
package org.cyclops.integrateddynamics.core.network;
2

3
import lombok.Data;
4
import net.minecraft.core.BlockPos;
5
import net.minecraft.world.item.ItemStack;
6
import net.minecraft.world.level.BlockGetter;
7
import net.minecraft.world.level.Level;
8
import net.minecraft.world.level.block.Block;
9
import org.cyclops.cyclopscore.datastructure.DimPos;
10
import org.cyclops.integrateddynamics.api.network.INetwork;
11
import org.cyclops.integrateddynamics.api.network.INetworkElement;
12
import org.cyclops.integrateddynamics.core.helper.NetworkHelpers;
13

14
import javax.annotation.Nullable;
15
import java.util.List;
16

17
/**
18
 * Base implementation for a network element.
19
 * @author rubensworks
20
 */
21
@Data
3!
22
public abstract class NetworkElementBase implements INetworkElement {
23

24
    @Override
25
    public int getUpdateInterval() {
26
        return 0;
×
27
    }
28

29
    @Override
30
    public boolean isUpdate() {
31
        return false;
2✔
32
    }
33

34
    @Override
35
    public void update(INetwork network) {
36

37
    }
×
38

39
    @Override
40
    public void beforeNetworkKill(INetwork network) {
41

42
    }
1✔
43

44
    @Override
45
    public void afterNetworkAlive(INetwork network) {
46

47
    }
1✔
48

49
    @Override
50
    public void afterNetworkReAlive(INetwork network) {
51

52
    }
1✔
53

54
    @Override
55
    public void addDrops(List<ItemStack> itemStacks, boolean dropMainElement, boolean saveState) {
56

57
    }
1✔
58

59
    @Override
60
    public boolean onNetworkAddition(INetwork network) {
61
        return true;
2✔
62
    }
63

64
    @Override
65
    public void onNetworkRemoval(INetwork network) {
66

67
    }
1✔
68

69
    @Override
70
    public void onPreRemoved(INetwork network) {
71

72
    }
×
73

74
    @Override
75
    public void onPostRemoved(INetwork network) {
76

77
    }
×
78

79
    @Override
80
    public void onNeighborBlockChange(@Nullable INetwork network, BlockGetter world, Block neighbourBlock,
81
                                      BlockPos neighbourBlockPos) {
82

83
    }
1✔
84

85
    @Override
86
    public void invalidate(INetwork network) {
87
        network.invalidateElement(this);
3✔
88
    }
1✔
89

90
    @Override
91
    public void revalidate(INetwork network) {
92
        network.revalidateElement(this);
×
93
    }
×
94

95
    protected boolean canRevalidatePositioned(INetwork network, DimPos dimPos) {
96
        return dimPos.isLoaded();
3✔
97
    }
98

99
    protected boolean revalidatePositioned(INetwork network, DimPos dimPos) {
100
        Level level = dimPos.getLevel(true);
×
101
        return NetworkHelpers.getNetworkCarrier(level, dimPos.getBlockPos(), null)
×
102
                .map(networkCarrier -> {
×
103
                    if (networkCarrier.getNetwork() == null) {
×
104
                        networkCarrier.setNetwork(network);
×
105
                        level.invalidateCapabilities(dimPos.getBlockPos());
×
106
                        return true;
×
107
                    }
108
                    return false;
×
109
                })
110
                .orElse(false);
×
111
    }
112
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc