Commit graph

3915 commits

Author SHA1 Message Date
AngelBottomless
5dbad187ef
Dispenser Scrap Box related bug fix. Thanks to aria1th.
* Cache World-common recipe and use it

solves weird recipe errors and small performance improvement 
Expects : RebornRecipes are Immutable

* okay what is that split?

this actually solves recipe getting evaporated by modifying recipe object itself
2022-04-01 09:54:42 +03:00
Simon
0f9512efc5
Fix #2847 Allowing values larger than Integer.MAX_VALUE. Thanks to SimonFlapse
* Fix #2847 Allowing values larger than Integer.MAX_VALUE

* Allowed the GUI to display `Long` numbers to fix overflow values

* Added missing Death Messages from stepping on the fusion reactor

* Fusion Control using TranslatableText

* I've converted LiteralText to TranslatableText
2022-03-30 12:29:58 +03:00
Ayutac
3f28d3903f
Added fishing junk loot (#2869)
Rubber and tree tap
2022-03-30 12:23:55 +03:00
Simon
fa0b47c0a8
Fix #2811 Iron Furnace recipe reset did not reset progress. Thanks to SimonFlapse 2022-03-30 12:23:42 +03:00
Simon
e28c9176e5
#2775 Adding Trinket support for BatpackItem. Thanks to SimonFlapse
* #2775 Adding trinket support for BatpackItem

* Added support for wearing BatpackItems in the 'back' trinket slot on the chest. This frees up an additional space for regular armor.

* BatpackItem only output when in chest armor slot
2022-03-30 12:21:29 +03:00
Simon
c61398c950
Fix #2850 Fetching cooking time based on recipe. Thanks to SimonFlapse
* Added new method cookingTime(), replacing totalCookingTime
* Added GameTest for validating smelting times
2022-03-27 16:15:22 +03:00
Technici4n
5eb8890d94
Cable optimization: use BlockApiCache to get adjacent BE. Thanks Technici4n 2022-03-25 10:38:58 +03:00
Ayutac
cfff12afd6
Made drain speed configurable for #2863. Thanks to Ayutac. 2022-03-25 10:28:14 +03:00
AngelBottomless
7f415d3ec9
Cache Torus.generate result for Origin (#2845)
* Cache Torus.generate result for Origin

Fusion Coils are laggy, not by ticking block entities, just purely by torus.generate(BlockPos.origin, size)

* Assign TorusListCache

* use cached result
2022-03-05 14:17:16 +00:00
modmuss50
40f4785816 Fix possible server crash. 2022-03-04 16:07:37 +00:00
modmuss50
85757e7854 Remove autoswitch api as the API broke, and I cannot find a working latest version on jitpack or cursemaven. I can bring this back once fixed, right now this is breaking the build. 2022-03-04 16:06:41 +00:00
modmuss50
0a8e34d9c6 Add ClientNetworkManager 2022-03-02 14:39:30 +00:00
Ayutac
08ed4abcd4
Resin Basin updated. Thanks to Spearkiller and Ayutac. (#2777)
* Resin Basin updated. Thanks to Spearkiller and Ayutac.

Hitbox has been updated to half a block, better matching the model.
Item model has been updated by Spearkiller to look nice.
There was a weird inconsistency about the amount of sap given to player depending on either putting it into an inventory or breaking the block.

Right click to harvest basin didn't work as intended, so removed for now.

Also it seems the block states (full/pouring/pouringTime) are not saved via nbt?

Also also wow the warnings.

* Added removal of sap from basin when right -clicking.

The error was me not understanding that "setFullState" had nothing to do with the variable "isFull". My bad, my bad.

For some reason one right click triggers the onUse twice, and previously I didn't correctly update the sap after the first one, but now it should work. Testing went off without a hitch.
2022-03-02 14:33:27 +00:00
modmuss50
612657ecf4 Even more client/server cleanup. 2022-03-02 14:32:52 +00:00
modmuss50
0296c59393 More client/server cleanup. 2022-03-02 14:20:34 +00:00
modmuss50
27cc9d0730 Refactor sendNoSpamMessage to use a packet, fixes a number of issues where no chat messsage was being received at all.
More work towards splitting client and server.
2022-03-02 01:50:38 +00:00
modmuss50
45c1e7412c Merge remote-tracking branch 'Ayutac/1.18-Ayutac-datagen-6' into 1.18
# Conflicts:
#	RebornCore/src/main/java/reborncore/common/misc/TagConvertible.java
#	src/datagen/groovy/techreborn/datagen/recipes/TechRebornRecipesProvider.groovy
#	src/datagen/groovy/techreborn/datagen/recipes/machine/compressor/CompressorRecipesProvider.groovy
#	src/main/java/techreborn/init/TRContent.java
2022-03-02 01:19:11 +00:00
modmuss50
7065f5efae Split GuiType into ClientGuiType to remove some horrid code. 2022-03-02 01:06:05 +00:00
modmuss50
f7d5139332
Port to 1.18.2 (#2824)
* Port to 1.18.2-pre1

* 1.18.2-pre3

* Fix build.

* Fixes and cleanup

* Build fix?

* Update REI
2022-02-28 09:18:27 +00:00
Ayutac
e35e222fa6 Merge branch '1.18' into 1.18-Ayutac-datagen-6
# Conflicts:
#	src/main/java/techreborn/init/TRContent.java
#	src/main/resources/data/techreborn/recipes/compressor/chrome_plate.json
#	src/main/resources/data/techreborn/recipes/compressor/chrome_plate_from_block.json
#	src/main/resources/data/techreborn/recipes/grinder/chrome_dust.json
2022-02-26 12:14:11 +01:00
Tryank
4ce4d6c361
Use translation keys on RebornCore and CellItem. Thanks to Maz-T 2022-02-26 14:10:43 +03:00
Ayutac
b378f2dcb9
In-depth update of chrome->chromium, thanks to Ayutac, Xanthian
* In-depth update of chrome->chromium, thanks to Ayutac, Xanthian

This fixes Bug #2621 without accidentally destroying items (untested, but the chrome item registration isn't changed) and supersedes PR #2780 which only made language changes.

I just plainly copied the lang changes from Xanthian. As for the chrome stuff, I thought long and hard how to do it properly. Possible variants:
1. Change tag names in constructor for chrome only.
2. Change tag names in enum for chrome only.
3. Don't change the internal tag names of the enums, but change the tag registration process in datagen for chrome only.
4. Introduce CHROMIUM variant, add conversion recipes etc. and hope over time CHROME can be safely removed.

(4) always had the potential of item loss, so I discarded it first. Deciding between (1), (2) and (3) was harder. The drawback of (2) is code bloating by adding a lot of extra enum constructors, especially for cases which already had enum constructor options. But in the end I decided to go with it because it was the cleanest solution to a dirty problem. This is the first time I encountered a datagen drawback, because if we didn't register by running through the enum array, we could have simply changed it there; a possible (5) but still worse than (2).

* Whoops, forgot recipe changes with the tags

* Merged chromium with hardness/resistance

Replaced the isHot argument from constructors with default false while I was at it.
2022-02-26 14:03:23 +03:00
drcrazy
21515c8908 Check for ability to output from side. Closes #2822 2022-02-26 01:25:00 +03:00
AngelBottomless
1a4895e525
Fixes Invalid recipe lag by caching validity of recipe. Thanks to aria1th.
reduces 5mspt -> 0.01mspt
2022-02-20 12:26:07 +03:00
ErrorSys
7b6c117f7a
Fixes deepslate ores having the same hardness values as their stone variants. They shouldn't be the same. Thanks to ErrorSys 2022-02-18 13:53:48 +03:00
Ayutac
07f8722d83
rebalanced tank capacities. Thanks to Ayutac.
I increased the capacity of tanks to be even remotely considered an alternative to storage units with cells. I kept the values conservative since increasing is always an option, but decreasing might cause item loss.

Changes:
Basic Tank: 35 -> 128 (about 3.5 times)
Advanced Tank: 200 -> 512 (about 2.5 times)
Industrial Tank: 500 -> 1024 (about 2 times)

I oriented myself at the storage unit steps, which are quadrupled with each tier until advanced, then doubled to industrial.

While I was at it, I changed everything to powers of 2 with the shift operator (so other code readers aren't too confused about seemingly arbitrary values) and added explaining comments.
2022-02-18 13:49:39 +03:00
ErrorSys
19b44c200a
Added properties for individual metal blocks for hardness. Thanks to ErrorSys.
Added properties for individual machine casings so that they are easier to break with a pickaxe.
2022-02-18 13:47:10 +03:00
Ayutac
8888f1d698 Corrected Toast icons for blast furnace and assembling machine
Just like in last commit, assembling machine one is a bit hacky (we add dummy classes), but better than putting an if into RebornRecipe and faster+safer than correcting the differences between assembly_machine and assembling_machine in the code.
2022-02-11 22:08:26 +01:00
Ayutac
d200f931f3 Corrected Toast icons for fusion computer and centrifuge
Centrifuge one is a bit hacky (we add dummy classes), but better than putting an if into RebornRecipe and faster+safer than correcting the differences between centrifuge and industrial_centrifuge in the code.
2022-02-11 21:40:39 +01:00
Ayutac
ee17fe58d8 Added ind sawmill datagen 2022-02-10 20:21:07 +01:00
Ayutac
4bc6841eae Gave datagen/content a marker to be filtered out if not needed 2022-02-10 10:58:38 +01:00
Ayutac
19f657a0d6 Merge branch '1.18' into 1.18-Ayutac-datagen-6 2022-02-09 20:30:43 +01:00
Foo
43c0fa9e89
Fix spelling, grammar, javadocs, and similar issues (#2784)
* fix naming in ModelSantaHat.java

* Fix grammar, spelling, and javadocs in RebornCore

* Fix spelling error in datagen

* fix missed variable name

* fix grammar, spelling, and javadoc errors

* fix grammar and spelling errors in project files

* specify indent_size in .editorconfig
2022-02-06 13:14:56 +00:00
Ayutac
8ed5082d81
Fixed datagen related bug (#2790)
Raw metals thought the ingot storage block variant was their variant. THIS AFFECTS STORAGE RECIPES! Effectively means 9 raw variants can be combined to one ingot storage block, so maybe quickly new beta?
2022-02-06 13:14:32 +00:00
modmuss50
1fcf18707b Handle the world not existing for some reason when calculating the ore depth. 2022-02-03 11:20:37 +00:00
Ayutac
100579c288
Added two storage blocks, textures by Xanthian. Thanks to Ayutac.
* Half of 2 new blocks, other half is a lot of data/model files

* Rest of the data/asset changes for new storage blocks.

* Bugfixes

* made hot tungstensteel storage block opaque
2022-02-01 13:53:11 +03:00
modmuss50
7082238357 Fix rolling machine crash. 2022-01-31 18:24:51 +00:00
Ayutac
5b4dec0cc3 Compressor datagen w/o toasts. 66 recipes changed from manual to datagen
Unified power/time for a couple of similar processings.
2022-01-29 17:26:55 +01:00
Ayutac
79715b89a1 Grinder datagen w/o toasts. -25 manual, +41 datagen recipes
Unified power/time for a couple of similar processings.
All storage blocks of items that could be grinded should be able to be grinded now, with some time save compared to the items themselves.
2022-01-29 10:27:51 +01:00
modmuss50
5b596aa5f8 Sync ore depths to all clients via a packet on server login. 2022-01-28 20:14:35 +00:00
modmuss50
fa657d46e8 Fix recipe syncing, improve (add) error handling. 2022-01-27 20:34:26 +00:00
Ayutac
9fcf9447e4
Added Rubber Sapling to wandering trader (#2772) 2022-01-23 18:35:26 +00:00
Ayutac
f65e4466fe
added missing loot chests (#2771) 2022-01-23 18:35:11 +00:00
Ayutac
0a5be13901
1.18 ayutac datagen4 (#2769)
* Added dust crafting data gen.

Generation works, but how do I get TR to recognize the existence of the new stuff?

* Added generic armor and tools to the datagen. Also resolved conflicts from the merge with recently changed datagen

* Fixed copy-paste error

by accident for second ingredient first would be taken again

* automatized tag generation

* fixed lingering bugs from previous commit

* much much more gen, for about 269 files

* wrongly deleted recipes in last commit

* Added rest of the decorative storage block variants to datagen
2022-01-23 18:34:35 +00:00
Ayutac
9f5a616b15
fixed typo in variable declaration via refactor. Thanks to Ayutac. 2022-01-23 13:05:12 +03:00
Ayutac
18c8c40f27
Fixed AutoCrafting Table bug (#2762)
If the table was locked, canMake only checked for each ingredient to be there more than once, but make greedily took all items from the first encountered slot of the needed ingredient if the recipe didn't use the full crafting table and the ingredients weren't aligned to the upper left corner of the crafting table (discovered and reproducible with three wheat in the first column second row and single wheats in the other two columns of the second row).

This commit simply disallows greedy behaviour, each crafting grid slot can only be used once.

I also made one or two changes to the rest of the code (formatting,use of constants etc) while I was at it, but these didn't change functionality.
2022-01-20 20:20:32 +00:00
Ayutac
6180141cd0
Added optional removal of the current recipe unlock (#2758)
Should default to false in old and new configs, ie no new behaviour, but now I can deactivate it via config instead of using an unofficial distribution. Will probably come back to this once the toasts are finished...
2022-01-20 19:56:47 +00:00
modmuss50
e3e5414cee
Merge pull request #2760 from Ayutac/1.18-Ayutac-38
Added XP for ores, fixes #2759
2022-01-20 19:56:23 +00:00
modmuss50
17e8911978
Refactor recipe system. 2022-01-20 19:55:40 +00:00
modmuss50
7e1125f6aa Fix #2625. 2022-01-20 19:54:20 +00:00