Dylan K. Taylor
444d902990
Fix CS
2021-06-21 20:45:31 +01:00
Dylan K. Taylor
5d6146a01f
Register missing potion types
2021-06-19 21:53:08 +01:00
Dylan K. Taylor
5387456e44
Move potion types to enum
2021-06-19 21:39:23 +01:00
Dylan K. Taylor
c07f3f5e12
fix CS
2021-06-19 19:48:30 +01:00
Dylan K. Taylor
6fea09ded4
SplashPotion: Require potionId in constructor
2021-06-19 19:47:44 +01:00
Dylan K. Taylor
fc70b625b3
ExperienceOrb: Require providing XP value in constructor
2021-06-19 19:42:13 +01:00
Dylan K. Taylor
11b483f2dc
Inline EntityDataHelper::createBaseNBT()
...
this is only used for saving entity data now, and its presence here is allowing plugin devs to keep abusing it.
2021-06-19 18:45:21 +01:00
Dylan K. Taylor
cc00b3e19b
Merge remote-tracking branch 'origin/stable'
2021-06-13 15:27:29 +01:00
Jason
532d57eec7
Arrow: Save and load critical state ( #4241 )
...
Fixes #3596
2021-06-09 14:00:36 +01:00
Dylan K. Taylor
10391be615
Remove useless class
2021-05-17 20:06:28 +01:00
Dylan K. Taylor
5a14c1cb89
Entity: don't rebuild metadata every tick unless an associated property changed
...
this should improve performance back to PM3 levels.
2021-05-17 20:05:52 +01:00
Dylan K. Taylor
b2e806e2fa
World: Harden chunk loading against bad data in entity/tile NBT
2021-05-12 12:26:41 +01:00
Dylan K. Taylor
094c949e86
Entity: fixed extremely stupid bug with player respawning after ragequit
2021-05-11 19:08:56 +01:00
Dylan K. Taylor
742f86e022
Rename DestroyBlockParticle -> BlockBreakParticle
...
closes #3461
literally every other particle/sound has the subject first, followed by the (optional) verb, and finally Particle (or Sound).
In addition, we refer to breaking blocks as 'break' everywhere except here, where we refer to it as 'destroy'.
2021-05-06 18:33:18 +01:00
Dylan K. Taylor
652de2632a
Rough OffHand implementation
...
this doesn't do stuff like taking arrows from offhand yet.
2021-05-05 14:46:51 +01:00
Dylan K. Taylor
176ca3fd2f
shut
2021-05-02 14:56:56 +01:00
Dylan K. Taylor
b8645f5c15
Clean up EnderChestInventory implementation
...
now, EnderChestInventory is just a temporary window, much like anvil/enchanting windows. It provides a gateway to the player's PlayerEnderInventory.
This removes one of the remaining obstacles to disallowing null World in Position constructor.
2021-05-02 14:26:27 +01:00
Dylan K. Taylor
1e6d97a157
Merge branch 'stable'
2021-04-07 21:25:39 +01:00
Dylan K. Taylor
90161f24e3
Added script to update registry/enum docblocks
2021-03-22 16:00:09 +00:00
Dylan K. Taylor
69cb0ba1bb
Entity: don't flag as closed until just before cycle destruction
...
this allows stuff that requires a non-cycle-destroyed state to still operate during onDispose().
2021-03-19 01:00:49 +00:00
Dylan K. Taylor
72de45f0e9
Drop pocketmine/uuid for ramsey/uuid
2021-03-16 23:03:00 +00:00
Dylan K. Taylor
c61f66d973
Removed ext-ds dependency
2021-02-11 15:40:37 +00:00
Dylan K. Taylor
fd2ebd84b4
Recognize underwater TNT
2021-02-06 23:37:05 +00:00
Dylan K. Taylor
ae75d73f48
Extract MainLoggerThread unit from MainLogger
...
MainLogger is no longer a Thread, as per the recent changes to pocketmine/log-pthreads.
2021-02-04 16:28:49 +00:00
Dylan K. Taylor
c70c0b55df
Separate held item index change listener logic from PlayerInventory
2021-01-12 16:44:25 +00:00
Dylan K. Taylor
01c867b608
Human: make held item sync on inventory content change more consistent
...
before this change, setContents() wouldn't trigger a held item sync, nor would setItem(heldItemIndex, someItem).
2021-01-10 20:30:39 +00:00
Dylan K. Taylor
053a7a1a61
Entity: split getSyncedNetworkData() into two functions
...
to avoid opaque boolean parameters
2021-01-08 13:59:52 +00:00
Dylan K. Taylor
e53b57732b
Entity: replace separate height/width/eyeHeight fields with an EntitySizeInfo structure
...
this will make it easier to implement stuff like sleeping (properly), swimming and gliding without needing to duplicate all the fields.
2021-01-08 00:11:01 +00:00
Mohamed
5392ddf0b9
Fixed TNT broadcasting ignition sound ( #3996 )
...
closes #3952
2021-01-07 21:18:18 +00:00
Dylan K. Taylor
d76883a5f8
Merge branch 'stable'
2020-12-29 18:00:09 +00:00
Dylan K. Taylor
793081d803
Entity: assume that position has a valid World during setPosition()
2020-12-27 19:20:37 +00:00
Dylan K. Taylor
bcc3e87730
Timings: rename core timers to remove 'timer' from the names
...
this makes them shorter and more consistent.
2020-12-23 17:52:25 +00:00
Dylan K. Taylor
dd58a95ae5
Move last-known-position tracking to World instead of Entity
2020-12-10 18:28:40 +00:00
Dylan K. Taylor
e925423749
Entity: fix chunk tracking consistency issues, fixed attempted chunk loading in origin world when teleporting to a different position in a different world
2020-12-10 18:13:18 +00:00
Dylan K. Taylor
d728160a77
Removed the cycle between Entity and Chunk
...
it's now the World's responsibility to manage adding/removing entities from appropriate chunks. Entities no longer know or care that chunks exist.
Entity->checkChunks() remains as-is for backwards compatibility - now it just calls the world to sync its position.
2020-12-05 00:59:16 +00:00
Dylan K. Taylor
37b9694845
ConsumingItemAnimation: fixed itemID translation for 1.16.100
2020-12-04 20:44:03 +00:00
Dylan K. Taylor
999defd20d
World: remove create params from loadChunk() and loadChunkAtPosition()
2020-12-03 18:49:14 +00:00
Dylan K. Taylor
1e7f9214cc
Entity: flag for despawn if entering ungenerated terrain
...
previously this created an empty chunk for the entity to hang around in until the terrain was generated, but that's problematic for several reasons, most importantly the fact that non-generated chunks are not saved.
2020-12-03 18:36:54 +00:00
Dylan K. Taylor
10067c1043
Improve painting performance
...
these really shouldn't hit the CPU at all considering they are simply static objects ...
2020-12-01 23:31:38 +00:00
Dylan K. Taylor
341d8747b7
Living: wipe out effect add/remove hooks onDispose()
2020-12-01 18:27:10 +00:00
Dylan K. Taylor
8e0cba56b8
Merge remote-tracking branch 'origin/stable'
...
# Conflicts:
# resources/vanilla
# src/pocketmine/entity/Entity.php
# src/pocketmine/tile/Tile.php
# tests/phpstan/configs/check-explicit-mixed-baseline.neon
# tests/phpstan/configs/l7-baseline.neon
2020-11-12 22:10:47 +00:00
Dylan K. Taylor
66955d4b99
World: make loadChunk() more useful, drop useless proxy function getOrLoadChunk()
2020-11-09 13:41:46 +00:00
Dylan K. Taylor
e6348bbd34
Entity: do not assume that save IDs are always strings
...
this is only the first of many changes needed to make entity savedata fully format-agnostic, but it's a start.
2020-11-06 13:05:17 +00:00
Dylan K. Taylor
a05f67bc77
Position::fromObject() world parameter is now mandatory (although still nullable)
2020-11-03 14:33:26 +00:00
Dylan K. Taylor
5cc2a9c3dd
World: rename getChunkAtPosition() to getOrLoadChunkAtPosition()
...
this more accurately reflects what it does.
2020-11-03 14:12:47 +00:00
Dylan K. Taylor
12e185e3f6
Relocate EntityLegacyIds to pocketmine\data\bedrock package
2020-11-01 17:07:34 +00:00
Dylan K. Taylor
8be0c0da0d
Implemented a silent property on entities and Entity->broadcastSound()
...
fixes #3516
2020-10-31 16:07:18 +00:00
Dylan K. Taylor
4c0c2ebd24
CS cleanup
2020-10-26 15:56:30 +00:00
Dylan K. Taylor
3f254bd49c
Separated effects' MCPE ID registration from VanillaEffects
2020-10-24 18:52:20 +01:00
Dylan K. Taylor
a01c086481
Introduced VanillaEnchantments registry
2020-10-23 20:48:19 +01:00