6cf218a184
Considerably buff matter bottler
2025-03-22 15:06:56 +07:00
0a9e90bec6
Make matter recycler receive random amount of matter on tick instead of determining total matter received upon job start
2025-03-22 00:49:42 +07:00
45181c9e55
Merge branch '1.21' into new-container-api
2025-03-22 00:31:35 +07:00
0126d4d976
Don't override nextGaussian, because JVM implementation should be generally faster
2025-03-22 00:30:03 +07:00
01d3cbf7b2
Add "Smart exchange" button to quickstack controls
2025-03-21 21:58:56 +07:00
be2011cf96
Merge branch '1.21' into new-container-api
2025-03-21 21:24:26 +07:00
ab2cc33b7a
"Smart storage exchange icon"
2025-03-21 21:24:16 +07:00
9413ae5f2b
Shrink effect list panel so it no longer overlaps "quick stack" controls
2025-03-21 21:17:50 +07:00
dc73ac7b55
Merge branch '1.21' into new-container-api
2025-03-21 21:11:30 +07:00
bfb8f0380a
Panel debug rendering
2025-03-21 21:10:46 +07:00
a6361f10f2
Final improvements to quick stack controls
2025-03-21 18:35:25 +07:00
f16b003cdf
Merge branch '1.21' into new-container-api
2025-03-21 18:18:18 +07:00
06f109575d
Fix children not getting re-sorted upon visibility changes
2025-03-21 18:18:07 +07:00
a2d9f43a2e
Fix grid panel layouts, introduce column major order
2025-03-21 18:17:50 +07:00
07e0c73479
Fixes for quick stack controls
2025-03-21 15:19:07 +07:00
2547478914
Merge branch '1.21' into new-container-api
2025-03-21 15:11:17 +07:00
7c028b1fa6
Im with stupid
2025-03-21 15:11:09 +07:00
dcff861e71
More quickstack controls
2025-03-21 14:31:59 +07:00
9be8596a5f
Merge branch '1.21' into new-container-api
2025-03-21 14:05:50 +07:00
57c6bbb795
Update cases where wrong random being used
2025-03-21 14:00:19 +07:00
29c51617b9
Merge branch '1.21' into new-container-api
2025-03-21 13:52:56 +07:00
3e92c5272d
Move panels additional types to separate file
2025-03-21 13:52:00 +07:00
f9821aa552
Use GJRAND64 in menus
2025-03-21 13:36:46 +07:00
b921658eb2
Remove randomGenerator
from editable panel
2025-03-21 13:34:53 +07:00
9b27ed7fb6
Add netFloat and nextDouble helper methods to RandomSource
2025-03-21 13:33:53 +07:00
269227f6cf
Add helper methods for fast DockProperty creation
2025-03-21 12:58:13 +07:00
27834cc595
Fix wrong layout final iteration value
2025-03-21 12:23:08 +07:00
70ed0cfcba
Merge branch '1.21' into new-container-api
2025-03-21 10:46:03 +07:00
c343de6031
Parenting callbacks in panels
2025-03-21 10:45:07 +07:00
65bf4dc9d0
Merge branch '1.21' into new-container-api
2025-03-21 08:07:52 +07:00
e6c9708652
Add layout modes to grid panel
2025-03-21 08:07:43 +07:00
a48aaf52ae
Add DockProperty#all variant
2025-03-21 07:19:03 +07:00
9b384f2213
Implement sizeToContents() for GridPanel
2025-03-21 07:18:42 +07:00
5b1ae12f85
Prioritize slots with filter or items across all chests
2025-03-19 16:50:43 +07:00
85c4aa4dc4
Prioritize non-filtered slots when taking items first
2025-03-19 11:29:47 +07:00
bd4622fc0d
Ignore slot filters when taking from chests
2025-03-19 10:58:50 +07:00
36f6a12395
Fix quick move to nearby chests treating every chest equally
...
and possibly creating situation where items of one type of one of chests go into empty slots of different (unrelated) chest(s)
2025-03-18 22:55:17 +07:00
06a621d370
Prioritize chests closer to player first
2025-03-18 22:47:26 +07:00
d6f53946d9
"Quick stack to nearby chests" prototype
2025-03-18 22:37:44 +07:00
10f250b822
Provide convenient unit packet registration
2025-03-18 18:58:51 +07:00
7f299a6dec
Provide Unit (singleton) codecs
2025-03-18 18:58:49 +07:00
f7a4623830
Provide convenient unit packet registration
2025-03-18 18:56:23 +07:00
c9dca76870
Provide Unit (singleton) codecs
2025-03-18 18:55:55 +07:00
ef2602895b
Declare VanillaMenuTypes#register as internal
2025-03-18 18:41:09 +07:00
0a0b0e3819
Merge branch '1.21' into new-container-api
2025-03-18 18:40:39 +07:00
442a7b7496
Declare event listener functions as internal
2025-03-18 18:40:07 +07:00
2f016a76a6
Declare registerNetworkPackets as internal
2025-03-18 18:27:54 +07:00
8f40717ff6
Change quickmove slot priority to consider hotbar slots last, to match vanilla behavior
2025-03-17 23:15:54 +07:00
7f362a95a2
Rearrange icons in quickmove
2025-03-17 23:01:58 +07:00
a84df28cf8
Rearrange icons in quickmove
2025-03-17 22:28:02 +07:00
03c64425a9
Add take all, restock, full restock buttons
2025-03-17 21:08:10 +07:00
d41d331e0f
Merge branch '1.21' into new-container-api
2025-03-17 11:24:15 +07:00
5b68a6c7ba
Add "quick move" to/from storage graphics
2025-03-17 11:23:51 +07:00
d89d5b9672
Add "quick move" to/from storage graphics
2025-03-17 11:23:34 +07:00
ee4b12e687
Improved "quick move" code in menus
2025-03-16 23:41:33 +07:00
9a5614de65
Don't drop experience capsules when keepInventory is enabled
2025-03-16 17:29:13 +07:00
95f19bc18f
Merge branch '1.21' into new-container-api
2025-03-16 00:31:14 +07:00
df5c8dc6aa
Make Matter Decomposer throttle for 1 tick when buffer can't fit all matter produced
2025-03-16 00:31:05 +07:00
d5a9632c97
Move SortInput to upper level
2025-03-15 22:26:47 +07:00
cf32fd9d2a
Extract moveItemStackToSlots static context
2025-03-15 17:43:41 +07:00
427b5f9179
Merge branch '1.21' into new-container-api
2025-03-15 13:23:43 +07:00
f599f1c2b9
Fix saturation going negative
2025-03-15 13:23:34 +07:00
fd9960bd86
Remove HandlerFilter
2025-03-15 11:38:26 +07:00
962ecb1996
Use nextDouble() because PRNG provides 64 bit numbers
2025-03-15 10:42:45 +07:00
7c6d58b782
Merge branch '1.21' into new-container-api
2025-03-15 10:15:31 +07:00
42386e1fbe
Update commentary on otmRandom
2025-03-15 10:08:02 +07:00
5d15425fa4
Merge branch '1.21' into new-container-api
2025-03-15 10:06:27 +07:00
b7b2b8095c
Revert "Remove otmRandom"
...
This reverts commit 5a016bef
The way OTM uses random generator in its code will quickly cause LCG used in Minecraft to show its bias
because LCG in minecraft samples its highest 48 bits, which gives us at best 2^16 period in the lowest bit returned by LCG.
Which it doesn't sound bad, it quickly causes RNG become biased the quicker/more it is sampled on each tick, especially considering
some may use `level.random.nextInt(chance) == 0` to determine chance of something happening,
which will get extremely biased on heavy RNG congested environment
If we avoid sampling Level's generator this much, we won't suffer from bias in our own code, as well as avoid biasing other mods this much.
The "2^16 period" problem is also might be the reason why Entities get their own instance of RandomSource, and Mob Goals use random exactly the way described above (`nextInt(chance)`), which can and will suffer from bias the moment mob exists in world for more than 2^16 ticks (but actual bias will happen sooner because RNG is not sampled only once per tick, obviously)
2025-03-15 10:04:16 +07:00
0efc520782
Implement faster lookup methods for Slotted Container as well
2025-03-15 00:18:02 +07:00
8b38504a26
Derive hasEmptySlots, isEmpty, countItem from other methods
2025-03-14 23:10:25 +07:00
69d9aaab50
Fast implementation of some methods in EnhancedContainer
2025-03-14 22:15:58 +07:00
448041fe2e
More specialized versions of iterators in IEnhancedContainer
2025-03-14 22:09:32 +07:00
bc5ad7f37b
кипяточек
2025-03-14 19:47:13 +07:00
70c5382e9d
Always use slotted addItem implementation in containers
2025-03-14 19:45:28 +07:00
01215d647c
Cache hasFilterableSlots in CombinedContainer
2025-03-14 19:40:01 +07:00
3a5f37bd76
Specify argument names explicitly
2025-03-14 19:32:17 +07:00
4ab667b37e
Ooprs!!1
2025-03-14 19:32:04 +07:00
2943026dd5
Add generic param to CombinedContainer
2025-03-14 19:06:49 +07:00
90a22a093d
Don't create filter syncher for IPlayerInventorySlot
2025-03-14 18:57:14 +07:00
c43be6eb62
Remove IContainer
2025-03-14 18:40:10 +07:00
59eab74b44
Remove IMatteryContainer
2025-03-14 18:38:28 +07:00
bdeb740df0
Remove ShadowContainer and MatteryContainer
2025-03-14 18:35:22 +07:00
621661c9fe
Remove MatteryCraftingContainer usage
2025-03-14 18:34:19 +07:00
d0904da1db
Remove remaining MatteryContainer usages
2025-03-14 18:32:28 +07:00
05bdff6a37
Remove unused class
2025-03-14 18:31:01 +07:00
b076d29560
Declare IEnhancedContainer as having generic parameter Slot
2025-03-14 18:29:51 +07:00
a2263c5725
Update MatteryPlayer to use Enhanced containers instead of Mattery containers
2025-03-14 18:11:39 +07:00
d57371ca13
Merge branch '1.21' into new-container-api
2025-03-14 17:47:09 +07:00
579445fbbe
Nerf food for androids further
2025-03-14 17:44:26 +07:00
80ff50b937
Nullify excess hunger when eating as android
2025-03-14 17:40:16 +07:00
ca37b4959f
Bring back old behavior where exhaustion is immediately nullified by energy buffer on Androids
2025-03-14 17:36:55 +07:00
305ddbd0d4
Merge branch 'player-improvements' into new-container-api
2025-03-14 12:14:36 +07:00
b42a503096
Merge branch '1.21' into new-container-api
2025-03-14 12:14:06 +07:00
5d8f2d5a4a
Add REGENERATE_ENERGY_EFFICIENCY_FOOD and REGENERATE_ENERGY_EFFICIENCY_SATURATION
2025-03-14 12:04:16 +07:00
e06928a4b5
Update mixin signature
2025-03-14 11:24:58 +07:00
d10b1b4ee1
Aeugh
2025-03-14 11:21:08 +07:00
922f94b9de
e
2025-03-14 11:02:08 +07:00
b23bda2f6a
Move android package to player package
2025-03-14 10:54:08 +07:00
c4d5ffefa5
Move all logic regarding food / regeneration to MatteryFoodData
2025-03-14 10:37:54 +07:00
a34b485e68
Base replacement for FoodData
2025-03-14 08:52:36 +07:00