324 Commits

Author SHA1 Message Date
Dylan K. Taylor
04aabaee5e
Fix CS 2023-04-28 19:31:08 +01:00
Dylan K. Taylor
75410a5412
BlockStateUpgradeSchemaUtils: sort data before emitting JSON
this makes it easier to see what's changing, as well as making the order stable across multiple regenerations.
2023-04-28 19:31:00 +01:00
Dylan K. Taylor
e2108557ab
BlockStateUpgrader: make sure the returned state always has an updated version ID
PM itself doesn't require this, but it's useful for tools to know whether to upgrade the schema again (e.g. in testing scenarios).
2023-04-28 17:26:19 +01:00
Dylan K. Taylor
ff8301b86c
BlockStateData: fixed outdated version ID 2023-04-28 17:23:32 +01:00
Dylan K. Taylor
869c836e2d
BlockStateUpgradeSchemaUtils: ensure that remapped values are generated in a consistent order
this uses lexical order, which isn't ideal for numeric values (1, 10, 2, etc), but it's good enough to ensure that the order is stable.
2023-04-28 17:12:52 +01:00
Dylan K. Taylor
a8dec1adb1
PM5-specific changes for 1.19.80 2023-04-26 23:30:56 +01:00
Dylan K. Taylor
0818388bd5
Allow remapped oldState and newState to accept null, to make it easier for third-party tools to use the schemas
since PHP emits empty JSON objects as arrays, this makes it pretty annoying to work with the schemas in other languages. However, nullability is something most languages understand pretty easily.

This should continue to support old schemas.
2023-03-25 19:41:40 +00:00
Dylan K. Taylor
777b4d6ac3
PM5-specific updates for 1.19.70 2023-03-14 18:50:04 +00:00
Dylan K. Taylor
a123194368
BlockStateData: added getVersionAsString() 2023-03-13 16:14:19 +00:00
Dylan K. Taylor
5eeb63f64b
always the CS ... 2023-03-04 15:52:57 +00:00
Dylan K. Taylor
b9d62de29d
Pack wall connections into 7 bits for runtime data encoding 2023-03-04 15:47:34 +00:00
Dylan K. Taylor
7608d5f04e
Use BedrockDataFiles in more places 2023-02-23 22:03:35 +00:00
Dylan K. Taylor
c82b43a586
Merge branch 'next-minor' into next-major 2023-02-23 22:00:14 +00:00
Dylan K. Taylor
f704bfb63a
Use BedrockData 2.0.0 2023-02-23 21:52:17 +00:00
Dylan K. Taylor
9acb4d64db
Added generated constants for available BedrockData files
this makes it easier to detect unused files, detect removed files, and also avoid typos in usages.
2023-02-23 21:45:12 +00:00
Dylan K. Taylor
94ffef1a99
ItemIdMetaUpgrader: consistency of API method naming 2023-02-21 16:14:31 +00:00
Dylan K. Taylor
2feb9ca903
ItemIdMetaUpgrader: consistency of API method naming 2023-02-21 16:12:44 +00:00
Dylan K. Taylor
55a48e0c84
Block: specifying required type/state data bits is no longer required
RuntimeDataSizeCalculator allows calculating the number of required bits from describeType directly, which considerably reduces boilerplate code.
2023-02-16 16:45:19 +00:00
Dylan K. Taylor
c2f6d8139a
Added interface RuntimeDataDescriber 2023-02-16 16:23:32 +00:00
ipad54
75f74454c6
Implemented reinforced deepslate (#5553) 2023-02-15 15:15:04 +00:00
Dylan K. Taylor
c0f3dbdd70
Regenerate constants for block and item data handling 2023-02-15 15:12:53 +00:00
Dylan K. Taylor
41ab698f93
wrong filename 2023-02-06 12:29:54 +00:00
Dylan K. Taylor
433b0ca6cc
Fix PHPStan 2023-02-02 16:23:21 +00:00
Dylan K. Taylor
da5302ca86
BlockStateData: introduce and use current() 2023-02-02 16:21:50 +00:00
Dylan K. Taylor
6b7a4e2c41
Split up ItemDataUpgrader (preparing for code backport) 2023-02-02 16:08:49 +00:00
Dylan K. Taylor
e9b994cbc3
Allow limiting max schema ID loaded for item ID upgrading 2023-02-02 15:29:45 +00:00
Dylan K. Taylor
3c46bf01c6
Begin removing dependence on obsolete files from BedrockData
these files were only kept for backwards compatibility, and aren't actively maintained. They are only needed for legacy conversions in the modern day era.
2023-02-02 14:47:38 +00:00
Dylan K. Taylor
0e15a8698a
BlockStateUpgrader: do not use blockstate version to manage internal schemas
these are no longer reliable.
2023-02-01 22:35:59 +00:00
Dylan K. Taylor
d3fff4e0b2
Updated to newer BedrockBlockUpgradeSchema 2023-02-01 21:21:55 +00:00
Dylan K. Taylor
0a3ecfdae9
Clean up terminology around block state IDs and their handling 2023-01-25 19:01:15 +00:00
Dylan K. Taylor
2f469ef4a0
Added mangrove, azalea and flowering azalea leaves 2023-01-25 18:50:14 +00:00
Dylan K. Taylor
ecd8f151f1
Merge branch 'next-minor' into next-major 2023-01-12 22:08:25 +00:00
Dylan K. Taylor
ca1f1bf09f
Fixed glowing item frames
due to technical limitations, this requires separating them back into two different block types. However, this isn't too egregious since it's just one flag, and actually simplifies some code.

closes #5478
2023-01-12 21:52:52 +00:00
ipad54
85231215e7
Implemented Sculk (#5489) 2023-01-04 20:10:46 +00:00
Dylan K. Taylor
8fd4918429
Use Filesystem::fileGetContents() in more places 2022-12-25 18:26:53 +00:00
Dylan K. Taylor
c89df7eb1c
Merge remote-tracking branch 'origin/next-minor' into next-major 2022-12-25 18:22:13 +00:00
Dylan K. Taylor
0d169b4e80
Filesystem: added fileGetContents to reduce ErrorToExceptionHandler boilerplate code 2022-12-25 17:13:51 +00:00
zSALLAZAR
b4c7d33388
Implement Medicine (from Education Edition) (#5450) 2022-12-24 17:38:12 +00:00
ipad54
b3473960b4
Implemented chain (#5454) 2022-12-22 15:22:04 +00:00
Dylan K. Taylor
16f90f4120
EntityFactory: remove legacy save IDs
this can be more cleanly handled using BedrockData.
2022-12-19 16:04:32 +00:00
Dylan K. Taylor
ec59dc1c80
SuspiciousStewTypeIdMap: fixed uninitialized fields 2022-12-19 15:58:26 +00:00
Dylan K. Taylor
973b8130db
Merge remote-tracking branch 'origin/next-minor' into next-major 2022-12-19 15:57:06 +00:00
Dylan K. Taylor
99faeb8d05
Merge remote-tracking branch 'origin/stable' into next-minor 2022-12-19 15:55:59 +00:00
Dylan K. Taylor
529700bb8b
PotionTypeIdMap: fixed uninitialized fields
I have no idea why this didn't ever cause a problem before... probably an edge-case in the typed properties implementation
2022-12-19 15:33:15 +00:00
IvanCraft623
44e288554a
Implement new records (#5433) 2022-12-18 21:15:27 +00:00
Dylan K. Taylor
4d79aced07
Merge branch 'next-minor' into next-major 2022-12-15 19:50:27 +00:00
Dylan K. Taylor
18c2e90574
fix CS 2022-12-05 14:47:44 +00:00
Dylan K. Taylor
142ccc7e87
Merge branch 'next-minor' into next-major 2022-12-05 14:14:39 +00:00
Dylan K. Taylor
ca3b5c38b7
Added internal support for tag recipe ingredients 2022-12-02 14:03:58 +00:00
Javier León
3984d220bb
Implemented the swift sneak enchantment (#5404)
Co-authored-by: Dylan T <dktapps@pmmp.io>

closes #5301
2022-12-01 20:38:41 +00:00