Commit Graph

287 Commits

Author SHA1 Message Date
b1021315b0 World: remove protocol-specialized broadcastLevelEvent() 2020-05-04 02:28:34 +01:00
8682ea35f7 Introduce some (not great) API for entity animations
while this API is a bit yucky, it's a step forward for protocol isolation and offers the possibility of controlling animations by adding events.
2020-05-01 13:57:26 +01:00
9615186afd rename PunchBlockParticle -> BlockPunchParticle 2020-05-01 12:36:31 +01:00
2964a4be35 making BlockPunchSound server-controlled 2020-05-01 12:23:00 +01:00
d1b28ce17a NetworkSession: allow sending an arbitrary set of attributes for an entity 2020-04-29 16:45:09 +01:00
f6f714c158 NetworkSession: do not mark shared attributes as synchronized, they don't necessarily belong to us
if we decided to start sending entity attribute changes to viewers too, this would have caused some unexpected behaviour.
2020-04-29 16:38:10 +01:00
5a33dbd4c6 Player: drop isAdmin from kick(), closes #3275 2020-04-19 18:27:37 +01:00
163c3855eb Merge branch 'next-minor'
# Conflicts:
#	resources/vanilla
#	src/plugin/PluginBase.php
#	src/plugin/PluginDescription.php
#	src/pocketmine/Player.php
#	src/pocketmine/network/rcon/RCON.php
#	src/pocketmine/network/rcon/RCONInstance.php
#	src/pocketmine/scheduler/AsyncTask.php
#	src/pocketmine/tile/Spawnable.php
#	src/scheduler/AsyncPool.php
#	src/utils/Config.php
#	src/utils/Timezone.php
#	src/utils/UUID.php
#	src/utils/Utils.php
#	src/world/format/io/region/RegionLoader.php
2020-04-19 11:13:41 +01:00
86e051b7bf Merge commit 'a2543ff80d2906bccda1a4e2fdbd9d8e7d147fb3' 2020-04-18 17:33:05 +01:00
a95426c373 Merge branch 'stable' 2020-03-18 13:17:38 +00:00
ca909ebc1d Merge branch 'next-minor' 2020-03-10 13:05:37 +00:00
995309424e updated pocketmine/nbt dependency
this is going to need work on exception handling, but right now it's so inconsistent that it doesn't matter anyway.
2020-03-04 17:53:37 +00:00
4c51f1dda3 Scrap TextContainer, make TranslationContainer immutable
TextContainer provided zero real value as a base of TranslationContainer, given that it required its own logic to be handled wherever accepted. As such, it's no better than a simple string.
Removing it also allows fixing an ambiguity when embedding translations inside other translations, allowing it to be made immutable.
2020-02-08 13:38:27 +00:00
17fc49db8a Player: fix regression in disconnect caused by 66a1134ca1 2020-02-08 09:07:09 +00:00
66a1134ca1 Player: avoid another empty() usage 2020-02-07 22:13:43 +00:00
ec9ece56f5 Player: fetch world via location
this code caters for the possibility of the world being null.
2020-02-07 22:11:14 +00:00
aac7da6c96 eliminate remaining empty() usages 2020-02-07 21:51:50 +00:00
fb1126797a Merge branch 'stable' 2020-02-07 18:13:55 +00:00
ff63f6d055 fill in more iterable types (master) 2020-02-01 20:19:57 +00:00
055b13a6cf strip extra blank lines (php-cs-fixer) 2020-01-22 15:14:10 +00:00
1b33143f4f pass 2, manual removal of incorrect non-nullable phpdoc types 2020-01-22 12:06:47 +00:00
67bcc1c0fb phpdoc armageddon for master, pass 1 2020-01-22 11:55:03 +00:00
3ee6887792 populate remaining missing return types, using native returns where possible
this is done separately to stable so that stable changes can be integrated easily using an empty merge.
2020-01-19 10:26:35 +00:00
59793d4b68 Player: mark networkSession field as nullable
while we do null this to break cycles, we also null it for other purposes, and it's null-checked in a few places.
2019-12-04 22:54:04 +00:00
7276eda0e5 Moved SetTitlePacket usage to NetworkSession (#3186) 2019-11-09 19:56:06 +00:00
dbdcabcc56 Player: get rid of CID requirement from player info, CID is still available via extradata if supported by client impl
this is useless for PM and it doesn't have any fit purpose for plugin use either, so it doesn't make sense to expose it to the API.
2019-08-21 18:17:31 +01:00
122238d57e add NetworkSession->onEnterWorld() hook 2019-08-20 16:25:20 +01:00
794c7b2469 clean up imports 2019-08-20 15:59:27 +01:00
6b22f68674 Player: remove sendDataPacket() 2019-08-20 15:50:34 +01:00
2d4a32fc77 first look at separating Entity and Location 2019-08-19 17:20:34 +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
1cd955c216 Entity: added getEyePos() 2019-08-02 17:29:32 +01:00
cc4b2959a7 Player: ditch deprecated dataPacket()
it doesn't make sense to deprecate this on a major version, particularly given all the other changes that plugin devs will have to accommodate.
2019-08-02 16:43:45 +01:00
7e4236a3ec add a more flexible hook system to EffectManager 2019-08-01 19:36:13 +01:00
d09e79e682 Player: update properties when assigning game mode, fixes #3005 2019-08-01 19:02:06 +01:00
4818e04540 Player: fix possible comparison bug in setGamemode() 2019-08-01 18:57:47 +01:00
5499ac620c Removed pocketmine subdirectory, map PSR-4 style 2019-07-30 19:14:57 +01:00