Added a read and write method to NetworkTile class
Should allow networks that extend this to read and write data from there tiles when its called. Mainly used to store important info in tiles while merging or splitting a network. However, it is used by NetworkFluidTiles class in FM for reading/writing fluid volumes to the tiles.
This commit is contained in:
parent
ced2f8f142
commit
38e0833a21
1 changed files with 29 additions and 14 deletions
|
@ -25,6 +25,12 @@ public abstract class NetworkTileEntities
|
||||||
this.networkMember.addAll(Arrays.asList(parts));
|
this.networkMember.addAll(Arrays.asList(parts));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** Should be called after a network is created from a split or merge */
|
||||||
|
public void init()
|
||||||
|
{
|
||||||
|
cleanUpMembers();
|
||||||
|
}
|
||||||
|
|
||||||
/** Creates a new instance of this network to be used to merge or split networks while still
|
/** Creates a new instance of this network to be used to merge or split networks while still
|
||||||
* maintaining each class that extends the base network class
|
* maintaining each class that extends the base network class
|
||||||
*
|
*
|
||||||
|
@ -127,6 +133,19 @@ public abstract class NetworkTileEntities
|
||||||
return this.networkMember;
|
return this.networkMember;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** Override this to write any data to the time. Called before a merge, split, or major edit of the
|
||||||
|
* network */
|
||||||
|
public void writeDataToTiles()
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
/** Override this to write any data to the time. Called after a merge, split, or major edit of the
|
||||||
|
* network */
|
||||||
|
public void readDataFromTiles()
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
/** Combines two networks together into one. Calls to preMerge and doMerge instead of doing the
|
/** Combines two networks together into one. Calls to preMerge and doMerge instead of doing the
|
||||||
* merge process itself
|
* merge process itself
|
||||||
*
|
*
|
||||||
|
@ -159,6 +178,7 @@ public abstract class NetworkTileEntities
|
||||||
* Ex Lava and water */
|
* Ex Lava and water */
|
||||||
public boolean preMergeProcessing(NetworkTileEntities network, INetworkPart part)
|
public boolean preMergeProcessing(NetworkTileEntities network, INetworkPart part)
|
||||||
{
|
{
|
||||||
|
this.writeDataToTiles();
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -168,6 +188,7 @@ public abstract class NetworkTileEntities
|
||||||
NetworkTileEntities newNetwork = this.newInstance();
|
NetworkTileEntities newNetwork = this.newInstance();
|
||||||
newNetwork.getNetworkMemebers().addAll(this.getNetworkMemebers());
|
newNetwork.getNetworkMemebers().addAll(this.getNetworkMemebers());
|
||||||
newNetwork.getNetworkMemebers().addAll(network.getNetworkMemebers());
|
newNetwork.getNetworkMemebers().addAll(network.getNetworkMemebers());
|
||||||
|
newNetwork.readDataFromTiles();
|
||||||
newNetwork.init();
|
newNetwork.init();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -238,12 +259,6 @@ public abstract class NetworkTileEntities
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Should be called after a network is created from a split or merge */
|
|
||||||
public void init()
|
|
||||||
{
|
|
||||||
cleanUpMembers();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString()
|
public String toString()
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in a new issue