69e23998f4
Merge branch 'stable'
2019-08-16 19:06:36 +01:00
a19143cae7
3.9.5 is next
2019-08-16 17:58:02 +01:00
1be6783c34
Release 3.9.4
3.9.4
2019-08-16 17:58:01 +01:00
092edc9d43
avoid breaking concrete powder
2019-08-16 17:41:50 +01:00
2ba8eac27f
FallingBlock: fix endless falling on top of fences
...
this is a shitty fix, but I don't think there's a better way to do it on 3.x. This also fixes dropping on cactus.
close #2449 , close #2895
2019-08-16 17:27:41 +01:00
9321eef683
Merge branch 'stable'
2019-08-16 16:49:24 +01:00
25ff90b2c6
PluginManager: fix chained softdepend plugins load order
...
Test case:
- plugin2 depends on nonexistent plugin1
- plugin3 depends on plugin2
At random occasions, plugin3 would be loaded before plugin2, because plugin2 load would be deferred in the expectation of plugin1 being loaded. This would result in the assumption that plugin3's softdepend plugins would not be loaded, so they were ignored.
We fix this problem by removing missing plugins from softdepend if they were not present on a scan of the directory. This way, we don't ignore any unresolved deferred dependency resolutions.
2019-08-16 16:46:59 +01:00
4898a35613
cleanup block dual bounding box clusterfuck
...
"bounding box" serves no tangible purpose, only collision boxes do right now.
2019-08-15 17:23:55 +01:00
d58339b2fd
fix doors being considered 3 blocks tall by collision detection in some cases
2019-08-15 16:54:14 +01:00
73b2669712
remove World->isFullBlock(), add Block->isFullCube(), clean up some BB mess
2019-08-15 16:22:54 +01:00
e29ac514d7
Block->getBoundingBox() and Block->getCollisionBoxes() are now final
...
Force usage of Block->recalculateBoundingBox() and Block->recalculateCollisionBoxes()
2019-08-15 16:16:08 +01:00
6dd1cdc413
sync php submodule version
2019-08-14 18:22:08 +01:00
b912ae78bc
Merge branch 'stable' of https://github.com/pmmp/PocketMine-MP into stable
2019-08-14 18:21:24 +01:00
200bcb485e
Merge branch 'stable'
2019-08-14 18:20:55 +01:00
677d43028a
add php-build-scripts as a submodule
2019-08-14 18:08:26 +01:00
d04793145c
Remove usages of AxisAlignedBB->setBounds() and AxisAlignedBB->setBB()
...
these usages make no sense in the contexts they are used in, because their uses require another BB to be created anyway. It makes more sense to simply destroy the old one instead of having it mutable.
2019-08-14 17:28:06 +01:00
e9ed46a9c7
Entity: avoid bad hack on high load which causes bugs on entity move
2019-08-13 18:08:56 +01:00
47b905007e
add more legacy metadata constants
2019-08-13 18:01:24 +01:00
7bfb55ec9a
Fixed some errors in support.yml ( #3095 )
...
[ci skip]
2019-08-13 14:09:03 +01:00
2b38098243
Explosion: fix pos refactor mess
2019-08-12 19:05:21 +01:00
2f61d42518
backport d23eeff832
: FallingBlock: remove useless check
2019-08-11 19:38:12 +01:00
dbb669b156
Entity: add some deprecation warnings to despawnFrom() and despawnFromAll()
2019-08-11 19:34:57 +01:00
4d0e8741fe
Added a deprecation notice to Entity->getBlocksAround()
2019-08-11 19:32:21 +01:00
53dc6e2050
fix TallGrass and Tree random/base amounts never being initialized, closes #2996
2019-08-11 19:06:20 +01:00
807b860cfe
protocol: fixup data type changes, closes #3072
2019-08-11 19:02:16 +01:00
514f395280
SubChunk: reduce visibility of blockLight and skyLight fields
2019-08-10 19:47:41 +01:00
399f9242e0
InventoryManager: avoid use of PlayerHotbarPacket
...
it doesn't work so well when the selected slot is empty.
2019-08-10 18:09:38 +01:00
85ad78dda8
DataPacketSendEvent: remove setters
...
these create unnecessary complexities in the internals.
2019-08-10 18:00:46 +01:00
d1775030c3
Remove DataPacketBroadcastEvent, DataPacketSendEvent now supports multiple recipients & packets in one swoop
...
this makes it simpler to consistently process outbound packets from a plugin. Previously it was necessary to handle 2 events to do 1 job.
2019-08-10 17:59:02 +01:00
4c694c57f4
DaylightSensor: Avoid triggering useless block updates if calculated power is unchanged
2019-08-10 17:49:31 +01:00
774e6fe8a3
Make chemistry textures always enabled
2019-08-10 17:38:00 +01:00
fae6289eb8
protocol: move resource-pack related types to their own subnamespace
2019-08-08 19:58:24 +01:00
d87b6f9ff7
Remove resource pack packets dependency on ResourcePack, now supports decoding
2019-08-08 19:36:54 +01:00
a52e4f0392
AsyncPool: Return whether there are tasks left to be collected from collectTasks()
...
this allows a while($pool->collectTasks()); style code.
2019-08-08 18:48:58 +01:00
bce126b6d0
fix BB of daylight sensor
2019-08-07 19:51:52 +01:00
c533f6a0bd
Implemented partial chunk saving on LevelDB ( #3078 )
2019-08-07 17:39:36 +01:00
d756500928
Also updated Discord link in suppor template and README
2019-08-08 00:03:10 +08:00
7ef27a1a21
support.yml Discord link should point to #rules
2019-08-07 14:54:01 +08:00
9598af7683
commands: remove some nonsensical isValid() checks
...
a player who doesn't have a valid world has no business sending commands anyway.
2019-08-06 15:42:17 +01:00
dec6f73f2f
Remove unnecessary BannerPattern copying on block clone
2019-08-06 10:18:02 +01:00
9671b4d5cb
fix improper cloning of some blocks, closes #3079
2019-08-06 10:07:16 +01:00
4e5b296c8c
Tiles now encapsulate positions instead of extending them
2019-08-05 19:33:34 +01:00
d355d5b5b5
Remove hack to break cyclic dependency on double chests
...
Since these now reference positions instead of tiles, the cyclic dependency is removed.
2019-08-05 19:01:21 +01:00
f0505c0284
Remove dead comments from PlayerInventory and PlayerCursorInventory
...
these aren't overrides anymore.
2019-08-05 18:53:46 +01:00
9353f616a2
All BlockInventory descendents now have a Position as holder
...
this allows multiple problems to be solved:
1) Cycle between tile and inventory is now removed.
2) BlockInventory now provides a consistent API for plugins to get the block holding an inventory.
2019-08-05 18:50:29 +01:00
358fea9645
Move Location to Entity namespace
2019-08-05 17:20:48 +01:00
927e05d038
[ci skip] update changelog
2019-08-05 17:15:10 +01:00
53ab860db5
first shot making Block not extend Position
...
this makes some stuff a lot less pretty, but this seems to be the bare minimum necessary to do this task. It can be enhanced later.
2019-08-05 16:44:09 +01:00
cf271dab2b
Entity: fixed undefined variable in getTargetEntity()
2019-08-05 16:19:49 +01:00
1fcec87b98
Block: remove unused function
2019-08-03 17:13:02 +01:00