Refactored a bunch of block logic to move block initialisation from the
WarpDrive class to the block's own class.
Nuclear reactor component which draws a tonne of heat from components
and the reactor Very quickly.
Nuclear monitor which uses lasers (of course) to remove the heat from
laser focuses VERY VERY quickly at the cost of energy.
Added a creative tab just for warpdrive, because
CreativeTabs.tabRedstone isn't the best place for lasers.
Made WarpDriveConfig completely static; there can only ever be one
instance of it (hence WarpDriveConfig.i) and there should never be
multiple copies of the options.
Made a bunch of config stuff static
Changed things to access static config values
Removed unused imports
Added basic workings of transporter
Changed a few more TEs to use WarpDrive.debugPrint
Made TileEntityShipScanner an extension of TileEntityAbstractLaser
Removed some unused variables
Switched from @PostInit and similar to @EventHandler
Changed some Vector3.add to Vector3.translate
Moved the sendLaserPacket function into its own abstract class (had to
extend WarpChunkTE for mining laser and things)
Made beamFX debug messages much more concise.
Tidied up cloaking field callMethods to use new toInt functions.
Made laser lift try to move stuff every 8 ticks rather than every 40 to
eliminate the slow feeling.
Made a custom laser calling function in laserLift since source and dest
are the same in nearly every call.
Made BeamFX only use the grey texture since it can just colorise it.
Changed a few System.out.printlns to WarpDrive.debugPrints.
Added config option to turn debug mode on or off
Added base TE class to be lazy with some functions (e.g. for computer
input and Math.min(Math.max(a,b),c) replacement
FXBeam can be any color (green for tree farm, blue for mining)
Made so machines define their own parameter using abstracts.
Added green version of mining laser for tree farm texture.
Added grey version of FXBeam for when it doesn't match any normal color.
Moved majority of the code out of the mining laser class.
Things which are not specific to any laser block harvester (such as
finding a particle accelerator or harvesting a block) have been moved to
the TileEntityAbstractMiner abstract class.
The only things in the mining laser are the things related to the
operation of that particular laser.