Commit graph

264 commits

Author SHA1 Message Date
DarkGuardsman
8a85d97ae8 BlockRegistryChanges 2013-09-20 09:34:13 -04:00
DarkGuardsman
775b153b68 Added system to detect annotations and use them
Untested but then again the entire registration system is so...
2013-09-20 08:52:37 -04:00
DarkGuardsman
657e3cddf9 Toying with annotations
Plan is to replace IExtraObjectInfo with annotations to be used in combo
with the new reflection based block registration system. Might try this
on a few more things and see were it goes.
2013-09-20 08:10:30 -04:00
DarkGuardsman
a72c06950e Reworked block registration system
Used reflection to create new block instances. This was done to prevent
disabled block from trying to take block IDs without doing a if
statement per block declaration. As well to make it a bit easier all
around to work with the system.
2013-09-20 07:35:52 -04:00
DarkGuardsman
9a3b774c03 Changed ColorCode.class
Plan is to go back to how i use to use it. This means fluid mechanic
pipes will remap and go back to using a nbt var to store their type and
color.
2013-09-19 00:04:53 -04:00
DarkGuardsman
90c98c3e1e Added GUI and containers for basic machines
Also from Basic Components but they are just temporary to get things
rolling. I do not plan to create release with this code. Most of it will
rewritten to support my collective block designs.
2013-09-19 00:03:57 -04:00
DarkGuardsman
0447aba123 removed unneeded inv code from furnace
Inventory is handles by the prefabs
2013-09-18 09:37:49 -04:00
DarkGuardsman
be1f8a4efb Started working on some basic machines
based on Old Basic Component machines. I do plan to rework every aspect
but am trying to maintain that same fill as the old machines. This is
why some of the code is copied so that the handling, and slot IDs match
up.
2013-09-18 09:22:41 -04:00
DarkGuardsman
528e0f465b moved a few files to api folder 2013-09-18 09:21:47 -04:00
DarkGuardsman
efc89bbbb6 Cleanup 2013-09-18 09:20:06 -04:00
DarkGuardsman
fa7c9cec5f Changed sendTerminalOutput to check active players 2013-09-18 08:11:45 -04:00
DarkGuardsman
8ff0262ce1 re-did packet system for terminal
Also moved access cod into TileEntityInv as i play to allow all GUI
based machines to be locked by the player.
2013-09-18 08:05:19 -04:00
DarkGuardsman
788d4e406e removed UE prefabs 2013-09-18 07:04:32 -04:00
DarkGuardsman
841d891aa3 reworked energy prefabs
Plan to do a lot more work as i want more control over how the tiles
work even at the basic layer.
2013-09-18 06:53:42 -04:00
DarkGuardsman
2009392405 dark-CleanupSync 2013-09-18 04:28:57 -04:00
DarkGuardsman
14073150e5 fixed Fluid item container helpers
At least i think i fixed it this time.
2013-09-18 04:25:26 -04:00
DarkGuardsman
a41c3c7117 Changed Fluid item handler to return right
The item handler for FluidHelper fluid item interaction now returns true
only if the itemStack changed. This way right click with non-fluid
container items will work.
2013-09-18 03:33:30 -04:00
DarkGuardsman
03ca8bde35 Fixed nbt and meta recipe output issue
meta for recipes that had no defined meta was getting set to max meta
value. This catches on that and sets its to zero. Later after i work out
other bugs i'll flip this to being random to allow for more complex
salvaging.
2013-09-17 16:14:00 -04:00
DarkGuardsman
509a5c661b Reworked ProcessorRecipe system to allow salvaging 2013-09-17 06:10:48 -04:00
DarkGuardsman
36a480b9c0 Added fill/drain fluid item helpers to fluid helper
Simple code to work with fluid container items.
2013-09-16 12:01:33 -04:00
DarkGuardsman
d48f24b73d Auto-Sync 2013-09-16 07:29:54 -04:00
DarkGuardsman
3954cedea9 cleanup 2013-09-14 09:18:44 -04:00
DarkGuardsman
a2c80f201b Added processor recipe from AL 2013-09-14 04:17:37 -04:00
DarkGuardsman
1bd7a3cad8 added battery check help to machine prefab 2013-09-14 01:32:54 -04:00
DarkGuardsman
2fd66e113b cleanup 2013-09-13 08:57:40 -04:00
DarkGuardsman
e27d5a75dc removed refresh code from network
unused and when it was it caused more errors that is was worth. Refresh
should be handled by world triggers anyways. Eg. blocks placed next to
network blocks.
2013-09-13 08:55:08 -04:00
DarkGuardsman
c1f99d46d3 re-did render code
Yes the fluid code is based off of Build Craft fluid render and has been
for a while. This is not a copy though as the code is not 100%
buildcraft and has been modified to meet my use of the code.
2013-09-13 08:29:36 -04:00
DarkGuardsman
dccac5415d sync 2013-09-13 07:55:18 -04:00
DarkGuardsman
48c24356d9 Created a simple Selective fluid tank prefab
Still need to do more work to make it selective when working with non FM
blocks. Right now it simple contains a basic fluid allow list.
2013-09-10 19:15:42 -04:00
DarkGuardsman
8f15c5357c cleanup 2013-09-08 18:56:25 -04:00
DarkGuardsman
4b55a3b648 Packet handler work 2013-09-08 05:17:02 -04:00
DarkGuardsman
b76756d691 fixed missing channel on MultiBlock 2013-09-08 02:44:02 -04:00
DarkGuardsman
c3730acf8e Hard coded config path into blocks
Not really a reason why i had a var on the constructor to change the
config path.
2013-09-08 02:28:51 -04:00
DarkGuardsman
a02246c163 Changed damageable tile stuff 2013-09-07 18:53:31 -04:00
DarkGuardsman
871bc0cf65 Updated meter electric readings
They now use UE display class to provide a cleaner output of reading
numbers
2013-09-06 04:48:28 -04:00
DarkGuardsman
d1cd75c612 Worked on power issues 2013-09-06 04:23:36 -04:00
DarkGuardsman
9fe604449b Added transport part of BuildCraft API 2013-09-06 02:31:44 -04:00
DarkGuardsman
80c7eb930f Corrected ItemParts names and icons 2013-09-06 01:18:41 -04:00
DarkGuardsman
81abfe2627 Correct textures and name loading 2013-09-06 01:05:37 -04:00
DarkGuardsman
113706820b Fixed debugBlock registering tileEntities 2013-09-06 00:54:06 -04:00
DarkGuardsman
d048d92da4 Worked on lang file a bit 2013-09-06 00:47:28 -04:00
DarkGuardsman
c950f24580 Worked on debug block a bit 2013-09-06 00:32:02 -04:00
DarkGuardsman
13815689a2 @SideOnly(Side.CLIENT) 2013-09-05 20:47:03 -04:00
DarkGuardsman
e1256face0 cleanup 2013-09-04 22:56:51 -04:00
DarkGuardsman
f6914b21e9 merged ilus element into core
100% optional content, everything can be disabled
2013-09-04 22:50:29 -04:00
DarkGuardsman
f96c6542cf fixed server crash 2013-09-04 22:23:11 -04:00
DarkGuardsman
d617d914e5 Added force and pressure to connection types 2013-09-04 22:23:05 -04:00
DarkGuardsman
1065f3e66e Changed ITileConnector
added a sub enum system to better ID connections.
2013-09-04 18:44:35 -04:00
DarkGuardsman
08c51bf14d Moved api stuff around 2013-09-04 18:43:26 -04:00
DarkGuardsman
f19ac591ae Added Ilus Element mod for merging
Content will be merged into the core as an optional decor block/item
set.
2013-09-03 17:24:43 -04:00
DarkGuardsman
933b4e44b4 Fixed proxy paths 2013-09-03 04:31:12 -04:00
DarkGuardsman
a41e3c02b1 Package change from dark-> dark.core
Makes it easier for the build script to ID the core files when all the
CoreMachine mods are combined together
2013-09-03 01:26:15 -04:00
DarkGuardsman
17e709638e Misc 2013-09-03 01:10:35 -04:00
DarkGuardsman
88def701dd Created called to the UE init methods
Didn't noticed that these needed called inorder to function correctly.
Though i guess the UE loader mod would have covered this for me its
better to be safe than sorry.
2013-09-03 00:18:00 -04:00
DarkGuardsman
a10a39a311 Changed how simple packets work
Instead of ints i've changed it to string IDs too allow for more defined
ids per tile. Should remove any issues with super tiles using the same
packet ID as the tiles that extend them.
2013-09-03 00:17:17 -04:00
DarkGuardsman
a7e0c9b6a2 Created first advanced config block
This will be the first block of many to have its own config file. The
idea when i created the BlockRegistry was to also implement a system to
allow blocks to declare custom configs. In other words allowing them to
define settings that can easily be linked to the block without large
config files.
2013-09-03 00:16:22 -04:00
DarkGuardsman
bd3b4e58b2 Place IColorCoded interface in ColorCode.class 2013-09-02 16:26:19 -04:00
DarkGuardsman
c3158aeb74 cleanup 2013-09-02 16:26:02 -04:00
DarkGuardsman
c7947817e7 Merge Fluid Helper classes
Honestly i might want to keep them apart but i'm running into too many
classes making it hard to work.
2013-09-02 15:39:38 -04:00
DarkGuardsman
9f34cb4748 Removed Matrix4 as it was unused/unfinished 2013-09-02 15:38:54 -04:00
DarkGuardsman
3e9849b45e Merge math helper classes 2013-09-02 15:38:40 -04:00
DarkGuardsman
c9a8298058 Place IAutoCrafter interface into AutoCrafting class
Looking at saving space plus its a one method interface
2013-09-02 15:30:46 -04:00
DarkGuardsman
5a563266cc folder rework 2013-09-02 15:28:00 -04:00
DarkGuardsman
29b0ce2e72 Worked on new way to register blocks
Idea is to create a flex-able system to handle block registration,
settings, features, and setup. This include calling methods to register
block ore names, tile entities, and extra settings configuration files.
2013-08-29 17:25:35 -04:00
DarkGuardsman
a66aa8e053 Testing an idea on how to handle block registry
This is both to help me do modding better as well to test how i want to
handle block creation in my game.
2013-08-28 16:54:44 -04:00
DarkGuardsman
75eeae764b move file location changes 2013-08-28 16:10:31 -04:00
DarkGuardsman
611f39dd6c Working on a handler to manage registering blocks
This will be connected to a more advanced config, id, and a few other
handlers. This way all block/items will be in sync when it comes to
creations, and handling.
2013-08-28 16:08:15 -04:00
DarkGuardsman
e8bbe5796f Moved files around
The ammount of files in this project are getting out of hand tbh. I will
need to sit down later and sort them all out and remove any that are not
needed.
2013-08-28 16:07:15 -04:00
DarkGuardsman
6007cc1561 Removed BlockWires dependency on BlockConductor
Mainly just copied the methods but its needed due to future changes to
these methods that were copied. Mainly the collision methods will need
to be redone when the logic is finished for lay down wires.
2013-08-28 15:13:55 -04:00
DarkGuardsman
1c57103d53 worked on naming vars in FXBeam
A lot of the vars are not named in this class and make it hard to work
on.
2013-08-28 15:12:40 -04:00
DarkGuardsman
07e2a7511a fixed Debug load and source blocks
This was honestly very stupid why it wasn't working. It all came down
the a method called getOutputdirections. Honestly why did this stupid
enumset stuff return when its a bad way to track connections. It makes
rotation more complex, and can connect is good enough to handle both.
Any complex connection mojo should be handled by the update tick or
custom mod method rather then by default be there.
2013-08-26 16:48:53 -04:00
DarkGuardsman
244e822678 Fixed crash with getting network power with meter
ElectricalPacket != float *facepalm*
2013-08-26 16:07:22 -04:00
DarkGuardsman
3cac33d96d Added IConductor support to multi-meter
To be honest adding support for all things electrical will take time.
Main focus is to cover the basic UE machines, and parts. Then i will
move on to IC2 and buildcraft support if its easy to test. As well i
might have to cover mekanism in case it doesn't use the UE interfaces
for its machines.
2013-08-26 16:03:12 -04:00
DarkGuardsman
088d7d6a38 Created Multi-meter functionality
Also fixed the textures
2013-08-26 15:52:49 -04:00
DarkGuardsman
972bb67835 Imported textures from FM, and minor work 2013-08-26 15:52:24 -04:00
DarkGuardsman
19b6c5ee8a renamed itemOre -> itemBlockOre
This was to help sort out the fact its an itemBlock and not just an item
2013-08-26 15:04:52 -04:00
DarkGuardsman
a6a94aa753 Move laser render effect calls to core proxy
Its for the best seeing as 3 mods needed this one method and all of them
use the core anyways.
2013-08-26 15:04:21 -04:00
DarkGuardsman
8719fae859 relocated a few render classes 2013-08-26 14:57:16 -04:00
DarkGuardsman
b0493ec3ac redid BC wire model and renderer
Honestly i have to say this was done poorly but then again i think this
render is left over from when UE started. Also this will need to be
redone some more later to prevent issues were the client sees a
connection different then the server. A simple boolean array sent by
packet should solve this issue later on.
2013-08-26 14:54:24 -04:00
DarkGuardsman
842b0f69d5 Temp using BC wire render
I plan to make a redpower like wire render later but first we need to
make it work. The render is just for visual aid rather than anything
else.
2013-08-26 14:36:25 -04:00
DarkGuardsman
d733dd6029 Fixed up configs
Removed the option to disable the extra tools due to no other mod really
having a pipe gauge.
2013-08-26 14:22:46 -04:00
DarkGuardsman
87bf46a2b6 Added item parts from Fluid Mechanics
This is not only to move the crafting parts to the core, but as well to
reduce down the need to create another part class for future items.
2013-08-26 14:16:16 -04:00
DarkGuardsman
e0bd6c3796 Added pipe gauge from Fluid Mechanics
The work to add it was actually implemented a while ago but i'm just now
getting around to registering the new tool class for it.
2013-08-26 14:01:03 -04:00
DarkGuardsman
f891904849 Starting wire creation 2013-08-26 13:34:01 -04:00
DarkGuardsman
053c4a2831 Worked on debug blocks
Fixed void block not sucking in fluids, as well it stalled out the fluid
network oddly
Added textures
Added TileEntity registry
2013-08-26 13:33:53 -04:00
DarkGuardsman
1cc40cf6dc Moved ItemBlockHolder over from FM mod
Designed to be a very simple ItemBlock class to be used with a block for
better metadata control.
2013-08-26 12:44:11 -04:00
DarkGuardsman
866c254aa7 Created debug blocks
Not tested nor really done yet. The idea in creating these is to provide
a sure way to test basic functions of machines. Since these debug block
are very simple no real issue should arise of the block failing.
2013-08-26 12:43:36 -04:00
DarkGuardsman
3f3c6f3679 Added a bit to NetworkSharedPower.class
Added safety measures to getEnergy and getMaxEnergy.
Added a method to get the amount of room to store more energy
2013-08-24 10:17:46 -04:00
DarkGuardsman
f5e588c861 Worked on prefab machine packet system
Added a basic packet handler system to the prefab TileEntityMachine
class to make sorting packet data easier for other tiles. This was
original part of assembly line but it seems more fitting to make it part
of the base prefab.
2013-08-24 08:02:00 -04:00
DarkGuardsman
c5c7a4c31d Worked on configs 2013-08-14 14:07:32 -04:00
DarkGuardsman
bbf5b92bec Added drop inv to BlockMachine
And somehow all the API files decided they wanted to binary change
2013-08-14 13:28:37 -04:00
DarkGuardsman
f23060f0c1 updated APIs 2013-08-08 09:35:27 -04:00
DarkGuardsman
95c0b099fb Added a helper to get Fluid levels in tanks
Useful for  tanks with multi-sub tanks per side
2013-08-06 11:30:35 -04:00
DarkGuardsman
794600d71f Added to tools set 2013-08-06 11:30:04 -04:00
DarkGuardsman
cec261a273 Worked on inv prefabs 2013-08-06 11:29:56 -04:00
DarkGuardsman
38e98bab59 Fixed a few issues with the is fillable methods 2013-07-30 23:10:13 -04:00
DarkGuardsman
d3c27ca6e9 Plan for the future
Later down the road i will need some wires for my machines. The idea is
to extends the UE one and insert several function to make it function
better.
2013-07-30 03:13:39 -04:00
DarkGuardsman
8d70cf177c Added to the drain block method
It now contains an extra update flag var allowing more control on how
the block is set after its was changes. This was mainly done to allow
the starter pump in FM to still function as an infinite water source
while drain several blocks at a time.
2013-07-30 03:12:58 -04:00
DarkGuardsman
4b9d5a8a14 Fixed some issues with NetworkShaedPower.class 2013-07-29 03:35:49 -04:00
DarkGuardsman
390562876c Added some contructors to TileEntityMachine
Mainly an easier way to set watt per tick, and max power stored.
2013-07-29 03:35:29 -04:00