*changed how it sends packets to only update if something changes or at
random points in time.
*changed the getColor() to use the blocks metadata and not a var
*added code to the setColor to change the blocks metadata
*Fixed load function to not set content if it read as unkown
Changed name of network part so save me from miss typing it every time
Fixed connection rules for pipes so that they will connect and render
Fixed networks merging and not crashing on merge
Fixed pipe gauge item's texture so it showed
Added a render for the network pipe (temp_use)
Bug connections/networks don't update on load just yet.
My network code is about the same as UE's short of the fact i have to
still ably to net.minecraftForge.Liquids interfaces in order to keep my
mod compatibly with other mods. So its only logical that my network pipe
updates, reacts, and works the same as the UE conductor. Though i will
be making change to mine in order to have it function with liquids more
and more.
removed the old canConnect methods from every class that used it and
replaced it with the new one still matching how the class used the old
one. Though i'm concerned that the new method might increase processor
use a bit since it sifts threw all stacks that the pipe can handle
instead of the first valid one.
this will not be easy as i've forgot some of my hydraulic's class. As
well if the pressure or load changes i have to update the entire network
to the change and recalculate the network's pressure.
even if the tileEntity is a ITankContainer it will call
IPsiReceiver.onRecieve first then if there is anything left of the stack
it will call ITankContainer.fill. I still need rework this too work
better, and use the path finder but for now it will do.
added comments and change comments in several places
added can connect method to psi receiver and change the receiver method
to get a liquid stack so it can pass that stack to the next network.
changed onOverCharge to onPressureChange that will check each time the
pressure network increases if one of the parts will bust.
They are now known as ILiquidNetworkPart since any tileEntity can act as
a conveyor of liquids in the network as long as they use that interface
and its methods right. This allows for pipes, as well as guages, fluid
motors, and other things to exist in the network without its spliting or
changing the over all network.
trying to save myself grief later with the hydraulic system for when
other use it. I've split it into two parts api for working with FM and
core for using the pipe network system.
Getting close to being done now that the pre update stuff is out of the
way. Now its on to testing and bug hunting. After that its on to working
on the new pipe system and getting it done some time this week.
There might be a few issue here with how it should work and how it will
work now. As well for more advanced path finding that needs to check for
tileEntity it can be done in is Valid Node.
For the moment its just added and not used. I will have to rewrite it in
a way that it doesn't care for TileEntities. This way i can use it for
the pump to make sure that water sources are connected to the pump.
As nice as UE's network is it turns out i can use it that way due to
Forge Liquid Api. So i have to setup a network system that will just
track all TileEntities and add liquid or apply pressure as needed.
Also due to an F up i redownloaded some files to correct me trying to
remove the unkown liquid. I forgot i used that to prevent null errors,
and since i'll changing over system soon there is no point in correcting
it.
This is were bug testers are so nice. Turns out that machine from other
mods could directly put the wrong liquid into the pipe the way i had it
coded.
Also i'm going to work threw my api and clean it up the best i can. A
few of the functions i have are unneed as well as not very well made.
Due to the way i was getting all the valid tanks inside of a block i
failed to get the block itself. This resulted in the release valve
draining the ILiquidTank varables rather than the ITankContainer block.
Its now fixed hower i need to go back threw and make changes to use
ForgeDirection later.