2940547026
Eliminate repeated calls to Position->getWorld()
...
as well as improving readability, it also improves performance in some areas.
2022-07-20 20:44:05 +01:00
24e72ec109
ContainerTrait: improve performance of block destroy hook
...
this was creating useless vector3s for every iteration, as well as repeatedly invoking Position->getWorld() for no reason.
2022-07-20 20:39:37 +01:00
67682cbf27
Added chorus plant and flower
2022-07-20 20:19:36 +01:00
c1acf44337
Implement cauldrons ( #5163 )
...
the following things are currently not implemented:
- particle/sound effects when an entity extinguishes itself
- particle/sound effects when mixing different stuff in a cauldron
- powder snow cauldron
both of these things are contingent on #5169 , but for the time being, the PR is functionally complete and I want to move on to something else without being stalled by the particle+sound problem (which I haven't yet decided how to solve).
2022-07-20 16:12:58 +01:00
44c4118080
fix CS again
2022-07-20 15:22:47 +01:00
fa201b081c
Added spore blossoms
...
I got tired of the flood of warning messages every time someone joined the dev server...
2022-07-19 20:28:12 +01:00
de3bbb71fa
Merge branch 'next-minor' into next-major
2022-07-19 20:20:30 +01:00
87b840ff97
Added a hack to allow tiles to trigger client-side render updates on blocks without actually changing the block
...
Bedrock block entity updates don't directly trigger block rendering
updates. This is a problem when the block entity data affects the
block's appearance directly (e.g. cauldron water colour, flower pot
contents), because it means changing them won't directly result in a
client-side render update.
This hack allows tiles to spoof block updates without actually changing
the server-side block, keeping the internals and API clean of random
shitbox workarounds.
fixes #5174
fixes #4944
2022-07-19 17:47:46 +01:00
6d4279671e
A giant hack to cut down code needed for runtime block serialization by 50%
...
this also avoids repeated information and inconsistencies.
2022-07-18 18:25:41 +01:00
cf34f88a67
Make Block::decodeState() and encodeState() more codegen-friendly
2022-07-18 15:48:03 +01:00
8660dfe576
Generate traits for runtime enum serialization instead of helper classes
2022-07-18 15:16:33 +01:00
012b668537
Avoid bogus assumptions about block and item NBT on tiles
2022-07-17 21:23:41 +01:00
fec89b7803
Lava burns entities for only 8 seconds in Bedrock ( #5173 )
2022-07-17 20:50:15 +01:00
4f2f9b4352
Block::readStateFromWorld() now returns the block object that should be used for the target position
...
this enables changing the block type completely if the situation calls for it.
2022-07-16 20:04:08 +01:00
d0ff6d2e36
Enable various types of interaction to return items to the player, without needing to have a bunch of boilerplate creative mode and held item checks
...
it became glaringly obvious that this was needed because of #4827 and #4868 .
this is further needed with the addition of cauldrons.
2022-07-16 19:50:33 +01:00
ba2baba7cc
Added netherite blocks and items
2022-07-14 20:39:09 +01:00
eb8fb63409
Added cartography and smithing tables
...
these have working inventories, and their crafting menus will 'just work' once the items for the associated recipes have been implemented (maps, netherite).
2022-07-14 18:01:47 +01:00
d321094081
Added hanging roots
2022-07-14 16:47:55 +01:00
323d31005f
Added glowing item frames
2022-07-14 16:24:20 +01:00
0c7370e564
Added wither rose
2022-07-14 16:07:16 +01:00
7dd8876515
TNT: remove the old unreliable way of ignition on burning arrow collide
2022-07-14 00:23:12 +01:00
d0067cfac5
TNT now ignites when hit by a burning projectile
2022-07-14 00:12:02 +01:00
eafc23c756
Added candles and cakes with candles
2022-07-13 23:54:41 +01:00
20cb67461f
Block: add the current class to the exception messages for block runtime data serialization
2022-07-13 19:50:35 +01:00
8b2d941502
Offset integer ranges in runtime block data serialization
...
this is useful for stuff like snow layers where the range doesn't start at 0.
2022-07-13 19:49:30 +01:00
14933a731b
Implement copper waxing, unwaxing and scraping, minus particles
...
there is a LevelEvent for the particles, but it's both particle and sound, which doesn't integrate well with the existing API.
2022-07-10 01:00:13 +01:00
a22276e679
there's always one ...
2022-07-10 00:19:27 +01:00
260e54e4b1
Skeleton for copper blocks, stairs and slabs
2022-07-10 00:18:35 +01:00
a44c089f98
REEEEEEEEEEEEEE
2022-07-09 20:40:18 +01:00
5e70ae2066
Added lightning rods
2022-07-09 20:18:22 +01:00
ad7528e3f3
Added warped wart blocks, gilded blackstone and crying obsidian
2022-07-09 20:00:10 +01:00
c67e42a723
Add a hook to enable blocks to react to projectiles colliding with them
...
this enables implementing blocks such as the target block.
2022-07-07 01:44:13 +01:00
3e4f01d85e
VanillaBlocks: fixed case of some names
2022-07-07 01:27:30 +01:00
e4d24e1edd
Invert dependency between VanillaBlocks and BlockFactory
2022-07-07 00:22:08 +01:00
ae70c63798
Added tinted glass
2022-07-06 23:01:17 +01:00
88a5a95479
Block: mark new functions as @internal
2022-07-06 17:26:15 +01:00
00db73a5b2
Merge branch 'next-minor' into next-major
2022-07-06 16:20:06 +01:00
269b6ed16a
FallableTrait: fixed logic for block replacement
...
closes #5126
I don't know why it wasn't done this way to begin with. FallingBlock always used canBeReplaced()...
2022-07-06 16:16:49 +01:00
a377795db9
Fixed SoulFire damage ( #5138 )
2022-07-06 14:57:07 +01:00
5c4288de01
block/Light: fixed placement when clicking on another light block
...
closes #5132
2022-07-06 14:23:32 +01:00
494cb580f3
Add sound after wood stripping ( #5124 )
2022-07-06 14:06:52 +01:00
fe93609c8d
Added mud bricks and related blocks
2022-07-06 00:02:51 +01:00
ebe6782295
Remove TODO comment
2022-07-05 23:37:55 +01:00
638d03846c
Added blast resistance for cobbled and polished deepslate
2022-07-05 23:11:12 +01:00
f57cd95ad5
Added blast resistances to some blocks
...
following values extracted from BDS
2022-07-05 23:02:04 +01:00
d725ded7b6
Added new ores
2022-07-05 21:43:47 +01:00
e5b038ebcd
Lava: implement basalt generators
2022-07-05 20:50:11 +01:00
a42bb9626d
Added another handful of blocks
...
clearing out my workspace...
2022-07-05 20:42:22 +01:00
412dcaa744
Implemented crimson, warped and mangrove signs
2022-07-05 16:18:54 +01:00
6be92ea6f7
fix CS
2022-07-05 14:14:27 +01:00