Commit Graph

10829 Commits

Author SHA1 Message Date
e95b9fa432 Block: use isSameType() in some places 2019-07-22 19:23:28 +01:00
72c0af2e82 Merge branch 'stable' 2019-07-22 17:39:44 +01:00
04c0cd142d 3.9.3 is next 2019-07-22 17:28:33 +01:00
7a747d6f93 Release 3.9.2 3.9.2 2019-07-22 17:28:33 +01:00
e93d034a4e fix bucket empty sound position, close #3051 2019-07-22 17:17:15 +01:00
5a08a10448 update dependency requirements 2019-07-22 17:15:18 +01:00
622f93df45 remove usages of deprecated {} string access, closes #3035 2019-07-22 16:39:33 +01:00
80d277f1b5 removed return value of ChunkManager->setBlockAt() and World->setBlock() 2019-07-21 18:55:22 +01:00
703ae3a172 Merge branch 'master' of https://github.com/pmmp/PocketMine-MP 2019-07-21 18:53:25 +01:00
6fdcb09891 fix PhpStorm's screwup with World->setBlock() doc comment
it's not the first time i've seen it do this, and i still have no idea why it does this.
2019-07-21 18:52:33 +01:00
a9c6489e08 updated consistency check for e388ac9c8b 2019-07-21 13:11:59 +01:00
e388ac9c8b implemented lantern 2019-07-20 17:48:09 +01:00
08a654760c Allow PlayerInfo to contain additional metadata 2019-07-20 15:19:17 +01:00
b788982d60 Item: fixed setCustomName() not removing display NBT tag with empty name (#3049) 2019-07-19 20:07:53 +01:00
1e057394c0 Utils: added cloneCallback() and cloneObjectArray() to reduce list copying boilerplate 2019-07-19 19:19:04 +01:00
47b120fa0e crafting: avoid unnecessary recipe mutability 2019-07-19 19:11:36 +01:00
556beacdbf make PlayerAchievementAwardedEvent less useless 2019-07-19 18:59:06 +01:00
b4df1ac547 Remove Achievement::broadcast(), remove cyclic dependency, inline code in Player 2019-07-19 18:47:18 +01:00
3965c9419d Merge branch 'stable' 2019-07-19 18:20:38 +01:00
26faf4a952 Player: fixed sendTranslation() passing parent parameters to translate parameters 2019-07-19 18:15:35 +01:00
14d79c205b TranslationContainer: remove redundant setters
i'd like to make this completely immutable, but there are some problems to solve first.
2019-07-19 18:09:00 +01:00
99bba66f13 Block no longer implements BlockLegacyIds 2019-07-19 17:49:59 +01:00
1fee70abfb Item no longer implements ItemIds 2019-07-19 17:43:06 +01:00
ac12911561 move network entity IDs to network namespace
we're going to need a dedicated data package, because this stuff isn't just network-specific.
2019-07-19 15:33:30 +01:00
0ebd3e6ca2 fix /effect crash 2019-07-19 14:10:19 +01:00
5a5ce84ebc yucky fix for crash on invalid keychain 2019-07-19 14:01:21 +01:00
a4c7744188 [ci skip] changelog updates 2019-07-19 13:53:44 +01:00
c5ebc12f1a Merge remote-tracking branch 'origin/stable' 2019-07-19 13:45:53 +01:00
5e8c92b1da Fix test failure #3047 2019-07-19 13:42:03 +01:00
a8fa3ba434 Add test for whether item retains it's display properties after deserialization (#3047) 2019-07-19 13:06:07 +01:00
670bf2b9d1 doxygen: sort more things, for our sanity (#3045) 2019-07-19 10:52:32 +01:00
f5491346ce doxygen: set HIDE_IN_BODY_DOCS = yes (#3044)
fixes #3043
2019-07-19 10:34:41 +01:00
b5b4133c5d Item: fixed always-false null checks on getNamedTag() result 2019-07-18 19:45:59 +01:00
e22986f065 EffectCommand: Remove support for internal MCPE effect IDs 2019-07-18 19:30:20 +01:00
3632e07cdb EffectCommand: Remove internal ID from translated message 2019-07-18 19:29:43 +01:00
64948f38d0 Separate effect registry from base Effect class 2019-07-18 15:49:58 +01:00
728aa8aae7 RegistryTrait: Alias internal methods by default
it's always necessary to wrap these methods with the appropriate typehints.
2019-07-17 19:59:28 +01:00
1a1feefd3e Pull tier info out of TieredTool, create ToolTier enum 2019-07-17 18:06:49 +01:00
7954a81602 fixing finality and constructor visibility on some enums 2019-07-17 18:04:15 +01:00
73d3f9f7f7 Fix loadbefore sometimes not working (#3040)
loadbefore operates by injecting self into the target plugin's soft-dependencies. The problem is that these soft-dependency lists are overwritten if the target plugin's soft-dependencies are resolved after the loadbefore of the origin plugin.
2019-07-17 16:52:29 +01:00
ccf165b107 mark some assumed-immutable classes as final 2019-07-17 16:24:29 +01:00
6aba9fadfc Encapsulate Item enchantment handling parts within a trait for scope isolation
as a happy side effect, this makes the Item class smaller, makes the code easier to read, and also makes the code more easily testable.
2019-07-17 16:12:13 +01:00
af73c5f2b1 Make EnchantmentInstance immutable, remove enchantment clone from Item
it doesn't make sense to set the level of an existing enchantment instance because under the old API it would have no effect anyway (if it was returned from an itemstack) or you had access to the constructor (if applying a new enchantment). Allowing this to be mutable creates needless complexity and performance headaches.
2019-07-17 16:03:08 +01:00
fec8c75fd8 [ci skip] changelog: document more misc API changes 2019-07-17 15:55:28 +01:00
74572fde08 [ci skip] changelog: add some information about NBT handling changes 2019-07-17 15:52:52 +01:00
ad4ed1c95c [ci skip] expand changelog on item changes 2019-07-17 14:46:43 +01:00
382d97a178 Merge branch 'stable' 2019-07-17 13:58:43 +01:00
b57dcebb6f Living: tighten validity checks on health NBT, don't use generic getValue() (it could return anything) 2019-07-16 19:59:15 +01:00
711ea3185d update composer dependencies 2019-07-16 19:53:47 +01:00
ff21977461 Item: simplify equals()
getNamedTag() can't return null anymore.
2019-07-16 18:11:09 +01:00