Commit Graph
316 Commits
Author SHA1 Message Date
firenooandGitHub GTNH Actions f87b76347e Update APIs (#130)
* Add an API to allow other mods to blacklist fluids from this mod.

* Removed Thaumic Energistics config setting. This will be handled by
Thaumic Energistic's side (which also happens to have a config setting).

* Added an API that allows for blacklisting fluids from either the storage
or the display individually.

* Prevent blacklisted fluids from being discretized

* Update API usage

- use AE2's new API

- use ThE's config setting for aspect -> gas

* spotlessApply

---------

Co-authored-by: GitHub GTNH Actions <unknown>
2023-05-20 19:46:37 +02:00
miozune 14853a2481 Fix NPE with FCStackStringifyHandler (#129) 2023-05-13 19:03:22 +02:00
miozune 2cd049d40e ForgeDirection fix & update dependencies (#128) 2023-05-09 07:39:00 +02:00
miozune f01cde7659 Show detailed fluid amount tooltip for Fluid Drop and Packet item (#127)
* Show detailed fluid amount tooltip for Fluid Drop and Packet item

* Guard against division by zero
2023-05-08 17:57:35 +02:00
miozune 56cda9f9e2 Fix fluid animation with Hodgepodge loaded (#126)
* Fix fluid animation with Hodgepodge loaded

* updateBuildScript
2023-05-07 17:55:46 +02:00
firenooGitHub GTNH Actionsgithub-actions[bot]
3da14b3bbe More ec2 mappings (#124)
* Replace ore dictionary bus

Extra Cells ore dict bus -> export bus w/ ore dict card
(retains ore filter setting, not verified they are 1:1)

* Add OpenComputer migration

Moves migration to postInit, and migrates OC upgrades.

* Remap wireless w/ correct encryption key + power

Basically now works without needing to relink in security term

* Update buildscript

* spotless apply

* spotlessApply (#125)

Co-authored-by: GitHub GTNH Actions <>

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2023-05-06 19:04:59 +02:00
firenoo 97c7533ffb Add support for the Advanced Blocking Card to Dual Interfaces (#123)
* Update ae2 to latest (beta-203)

* Add support for the Advanced Blocking Card to Dual Interfaces

Behavior: The Dual Interface acts in the same way as the regular ME
interface when the advanced blocking card is used, but has an additional
check for fluids on top of items contained in the ME system.
2023-05-05 20:19:55 +02:00
firenoo d2df9beb31 Fix fluid export bus voiding fluids on crafting only mode (#120)
The Fluid Export Bus was voiding fluids on craft only mode because it
tried to craft it, and decided to continue with the normal export logic:
Extract fluid from ME system and fill the tank.

Unfortunately, there was a condition that prevented the extracted fluid
from going anywhere depending on craft only mode, so it got voided.

Commit fixes this by skipping the normal extract logic if set to craft
only.

The amount must be simulated before extracting from the ME system. This
helps prevent a scenario where we cannot insert the fluid back (such as
when we have a fluid storage bus on Extract Only).

Signed-off-by: Firenoo <49818773+firenoo@users.noreply.github.com>
2023-05-01 19:43:07 +02:00
firenoo dab5a0dbf3 Add mappings for most important Extra Cells items (#115)
* EC2 deprecation: Part 1 - Items

Laying the groundwork for absorbing EC2 mappings.

* EC2 deprecation: Part 2 - Blocks

* EC2 Deprecation: Part 3 - Parts

Parts are deprecated.

* set config "replaceEC2" to default true

* API changes to make room for Extra Cells fluid placeholder

* Finish basic item replacement code

- parts work
- items are remapped properly, and converted when they enter the player inventory

* Fixed some storage cell conversion issues

The placeholders did not transfer NBT data properly

* Add handlers for deprecated item cells

Now the placeholder should work automatically in a drive.

The void cell is still a WIP.

* Add more tooltip help and cell handler for void cell

* apply spotless

too lazy to rebase
2023-05-01 19:42:52 +02:00
firenoo 6090f198e6 Allow all 63 partition items to be used for fluid cells (#121)
Previously, only one partition item was allowed. This fix will have
the cell consider all 63 slots. If you configure more than 1 or 5
cell slots, it works as expected - up to 1 or 5 of the whitelisted
fluids can be stored at a time.

This will degrade performance slightly.

Signed-off-by: Firenoo <49818773+firenoo@users.noreply.github.com>
2023-05-01 19:38:07 +02:00
firenoo c29f8cf846 Fix FluidContainerRegistry interactions w/ Certus Quart Tank (#122)
The Certus Quartz Tank previously did not consider the
FluidContainerRegistry API for fluid containers, so fluid containers
that implemented that (like ic2 cells) were voided when filling the
tank.

Signed-off-by: Firenoo <49818773+firenoo@users.noreply.github.com>
2023-05-01 19:37:53 +02:00
firenoo 77ec41812d Add null check for tanks (#118)
* Add null check for tanks

Some IFluidHandlers return null for getTankInfo(), so a null check is needed.

* spotless apply
2023-04-28 19:19:53 +02:00
Martin Robertz 258465a654 fix (#117) 2023-04-26 22:38:09 +02:00
firenoo 508f6e5d64 Add null check when determining potential tanks to import (#116)
It seems that implementers of IFluidHandler sometimes return null
in `getTankInfo()`, so this adds a check for that before doing the
bus work.
2023-04-26 21:14:40 +02:00
firenoo c174db3f15 Fix fluid terminal interactions (#111)
Now the math is properly calculated.
2023-04-01 14:54:48 +02:00
firenooandMartin Robertz e1b3f20078 Network throttle: Force ME update packets to be sent once every N ms. (#110)
* Network throttle: Force ME update packets to be sent once every 50ms.

1. Item and fluid packets are separated to their own classes, as they are
not even allowed to be mixed together in the first place. This will enforce a strict
separation of the two.

2. New network worker thread for handling ME inventory updates. Instead of
creating packets directly, classes should schedule packet(s) to be sent at the
next 50ms boundary. The packet has a limit of 256 items to prevent killing the
client, but this can be changed in the config. In fact, the packet send rate is
also configurable.

3. Upon opening a terminal GUI, ME update packets are split. Only the last received
packet will trigger a terminal sorting, so if the ME system is large, it may take
several seconds (!) to load all the items.

* Update SPacketMEFluidInvUpdate.java

---------

Co-authored-by: Martin Robertz <dream-master@gmx.net>
2023-04-01 14:04:39 +02:00
chochem 54781c290e quantum fluid fix (#114) 2023-03-30 22:21:00 +02:00
firenoo 9c2ef02383 Split packets when sending items over network (#107)
Packets are now split into smaller chunks when sent. The packet
size is adjustable in the config.
2023-03-23 17:14:14 +01:00
Raven Szewczyk 6a244c12c4 Add unlocalized names to fluid drops&packets (#105)
Previously they were null.

Fixes <https://github.com/GTNewHorizons/GT-New-Horizons-Modpack/issues/12874>
2023-03-14 21:04:56 +01:00
asdflj 399c5f53dd craft confirm screen add cpu select support (#99)
* craft confirm screen add cpu select support

* fix bug
2023-03-13 12:58:20 +08:00
asdfljandRaven Szewczyk b9724d9369 fc terminal add type filter (#98)
* fc terminal add type filter

* Update dependencies.gradle

---------

Co-authored-by: Raven Szewczyk <git@eigenraven.me>
2023-03-12 20:25:42 +01:00
Yang Xizhi c92f8bdd7c Merge pull request #103 from asdflj/recipe
fix fc pattern terminal shift click will use not support item to fill slot
2023-03-07 12:41:05 +08:00
asdflj ab7769a45d add default method 2023-03-06 18:35:54 +08:00
asdflj d2c03bc903 fix fc pattern terminal shift click will use not support item to fill slot 2023-03-06 15:54:33 +08:00
Yang Xizhi e8664328ed Merge pull request #102 from asdflj/terminal
fix cant Take/Put items in Universal Terminal
2023-03-04 13:10:41 +08:00
asdflj 84e395e470 fix cant Take/Put items in Universal Terminal 2023-03-04 08:36:21 +08:00
GlodBlock 0a01bb008b fix gl crash 2023-03-03 20:27:02 +08:00
Yang Xizhi f73f79da7b Merge pull request #100 from asdflj/terminal
terminal does not update view
2023-03-03 13:03:22 +08:00
asdflj 16f207ce80 terminal does not update view 2023-03-03 13:00:01 +08:00
GlodBlock 18f31ac3ef fix export bus exporting too much fluid 2023-03-02 16:46:35 +08:00
asdflj 6505967826 add fluid packet check 2023-02-28 09:06:06 +08:00
asdflj 78e9291fc6 Certus Quartz Tank add waila support
fluid packet decode add support to use conduit to export fluid
2023-02-27 16:50:29 +08:00
asdflj ebf5a23ab9 fluid export bus add schedule mode 2023-02-26 10:46:55 +08:00
GlodBlock 161e38cbda fix fluid dupe from simulate drain 2023-02-25 22:06:29 +08:00
Yang Xizhi 948dcdcbce Merge pull request #95 from asdflj/master
fix can't be display in network details
2023-02-25 20:42:39 +08:00
asdflj 0b99ba974f fixed renamer bug 2023-02-25 19:21:52 +08:00
asdflj 2407653e96 fix universal terminal infinity connect bug 2023-02-25 11:43:21 +08:00
asdflj acfb5b1d48 add universal terminal more tips 2023-02-24 16:30:39 +08:00
asdflj 232b64e819 fix Universal terminal patten mode recipe transfer to slot item stack size error 2023-02-24 11:16:54 +08:00
asdflj 7438c7075c fix can't be display in network details 2023-02-24 09:40:21 +08:00
Martin Robertz 98c633e13d Merge pull request #94 from GTNewHorizons/master
merge from master
2023-02-22 12:12:18 +01:00
GlodBlock bf7190ce21 sa 2023-02-22 15:46:22 +08:00
GlodBlock 883ae61395 fix eio item conduit doesn't work 2023-02-22 15:44:28 +08:00
asdflj a203f2ff6b fix bug 2023-02-22 15:21:05 +08:00
GlodBlock fee5c6ee76 check gt pipe connection and fix eio fluid conduit 2023-02-21 18:22:53 +08:00
GlodBlock fb003da0a3 fix inventory check of gt machine 2023-02-21 15:36:10 +08:00
Martin Robertz 0e774f4e66 Merge pull request #91 from GTNewHorizons/master
merge master
2023-02-20 23:04:14 +01:00
asdflj bc053b2690 fix fluid storage bus crash 2023-02-20 18:19:47 +08:00
Martin Robertz 9761008907 Merge pull request #89 from GTNewHorizons/master
merge master
2023-02-18 23:25:05 +01:00
asdflj c21752b80d fix bug 2023-02-18 14:18:22 +08:00