17924 Commits

Author SHA1 Message Date
Dylan K. Taylor
29fdc8b08d
Private constructor for EnchantmentHelper 2023-08-23 15:49:31 +01:00
Dylan K. Taylor
20a41b00ba
StringToTParser: added registerAlias() 2023-08-23 15:24:29 +01:00
Dylan K. Taylor
df96e023dc
Require pocketmine/nbt 1.0.0 2023-08-23 14:42:50 +01:00
Dylan K. Taylor
f4d5605de1
Use hasHandlers() on more warm-hot events 2023-08-23 14:35:53 +01:00
Dylan K. Taylor
d03e4d17ec
Use hasHandlers() for events in player movement processing pathway
this should offer a minor performance improvement.
2023-08-23 14:26:17 +01:00
Dylan K. Taylor
4cc858829f
5.4.4 is next 2023-08-21 18:31:45 +01:00
Dylan K. Taylor
e852a43821
Release 5.4.3 5.4.3 2023-08-21 18:31:45 +01:00
Dylan K. Taylor
05f40b1315
Merge branch 'legacy/pm4' into stable 2023-08-21 18:27:18 +01:00
Dylan K. Taylor
7aaef8cb89
4.23.7 is next 2023-08-21 18:26:50 +01:00
Dylan K. Taylor
9d4c37fc3a
Release 4.23.6 4.23.6 2023-08-21 18:26:47 +01:00
Dylan K. Taylor
cd6abbe0bb
BaseSign: remove redundant condition 2023-08-21 16:30:16 +01:00
Dylan K. Taylor
22778583cf
Sign: implement waxing using honeycomb 2023-08-21 16:28:17 +01:00
Dylan K. Taylor
d44e0e87d0
BaseSign: implement sign editing
this was originally submitted by #6000, but considering the overcomplicated PR and the triviality of the feature, I figured it would be quicker to do it myself instead of having a bunch of back-and-forth bikeshedding over it.
2023-08-21 16:14:43 +01:00
Dylan K. Taylor
47b448965d
Merge branch 'stable' into minor-next 2023-08-21 16:08:27 +01:00
Dylan K. Taylor
cfa2df82eb
Merge branch 'legacy/pm4' into stable 2023-08-21 16:07:56 +01:00
Dylan K. Taylor
7f78ec0a32
Include PHP binary URLs in GitHub releases and build info 2023-08-21 16:05:59 +01:00
Dylan K. Taylor
8572311bf4
Remove dead PHPStan stub
closes #6003
2023-08-21 14:57:26 +01:00
Dylan K. Taylor
18ca3a37d9
CrashDump: fixed crashdump generation failure on fatal error
closes #6007
2023-08-21 14:51:54 +01:00
Dylan K. Taylor
b2414b4c29
EnchantTransaction: cleanup XP cost checking logic 2023-08-18 12:33:07 +01:00
Dylan K. Taylor
b3c740081e
Merge branch 'stable' into minor-next 2023-08-18 12:28:45 +01:00
Dylan K. Taylor
4b41fca991
Merge branch 'legacy/pm4' into stable 2023-08-18 12:28:29 +01:00
Dylan K. Taylor
9f09acc079
Workaround for slot IDs not changing client side when old item == new item
this is a really dumb bug and seems similar to the armor bug I fixed a while ago.

fixes #5987

it's unlikely that #5727 will be solved by this, but one can hope...
2023-08-18 12:27:27 +01:00
Dylan K. Taylor
beaca8bb6d
EnchantTransaction: fixed XP level costs when minimum level is less than the XP cost
this can happen and happens in vanilla too. In these cases, as much of the XP cost as possible is deducted.
2023-08-16 14:51:47 +01:00
Dylan T
e323c5dd76
Implement pressure plate activation logic and events (#5991)
closes #5936

This implements all of the basic activation logic for pressure plates.
It also introduces a PressurePlateUpdateEvent, which is called in pulses when entities are standing on top of the plate and when it deactivates. Deactivation can be detected by checking if the list of activating entities is empty.

---------

Co-authored-by: Javier León <58715544+JavierLeon9966@users.noreply.github.com>
2023-08-16 13:00:23 +01:00
dependabot[bot]
b65b7a7f74
Bump tests/plugins/DevTools from 83f0db3 to 411fd5b (#5998)
Bumps [tests/plugins/DevTools](https://github.com/pmmp/DevTools) from `83f0db3` to `411fd5b`.
- [Release notes](https://github.com/pmmp/DevTools/releases)
- [Commits](83f0db3f9e...411fd5bdc0)

---
updated-dependencies:
- dependency-name: tests/plugins/DevTools
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-16 09:38:16 +01:00
Dylan K. Taylor
f516c3c502
EnchantCommand: ensure that books are turned into enchanted book items 2023-08-15 19:10:48 +01:00
Dylan K. Taylor
5afbb9d807
Allow enchanted books to be enchanted
if an enchanted book is obtained via /give without enchantments, it should be able to receive enchantments in an enchanting table, exactly the same as regular books.
2023-08-15 19:10:03 +01:00
Dylan K. Taylor
b330cbe8e2
Merge remote-tracking branch 'origin/stable' into minor-next 2023-08-15 17:41:41 +01:00
S3v3Nice
39867b97c5
Implement enchanting using enchanting tables (#5953)
Co-authored-by: Dylan K. Taylor <dktapps@pmmp.io>
2023-08-15 17:28:26 +01:00
dependabot[bot]
4c25d38b44
Bump phpunit/phpunit from 10.3.1 to 10.3.2 (#5995)
Bumps [phpunit/phpunit](https://github.com/sebastianbergmann/phpunit) from 10.3.1 to 10.3.2.
- [Changelog](https://github.com/sebastianbergmann/phpunit/blob/10.3.2/ChangeLog-10.3.md)
- [Commits](https://github.com/sebastianbergmann/phpunit/compare/10.3.1...10.3.2)

---
updated-dependencies:
- dependency-name: phpunit/phpunit
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-15 12:05:23 +01:00
dependabot[bot]
983aa79a0b
Bump build/php from ed0bc4d to a053f65 (#5993)
Bumps [build/php](https://github.com/pmmp/php-build-scripts) from `ed0bc4d` to `a053f65`.
- [Release notes](https://github.com/pmmp/php-build-scripts/releases)
- [Commits](ed0bc4d2af...a053f65e18)

---
updated-dependencies:
- dependency-name: build/php
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-15 09:30:51 +01:00
ipad54
af9ae445fc
Fix cake drops (#5985)
closes #5984
2023-08-10 17:42:32 +01:00
Dylan K. Taylor
91d5a3ddfe
PotionCauldron: fixed setPotionItem() not validating the given item
we should probably remove this API and have enums for potion container and type tbh... this API was a mistake
2023-08-10 16:06:41 +01:00
Dylan K. Taylor
e48b5b2ec0
GeneratorManager: allow aliasing existing generators 2023-08-10 13:07:03 +01:00
Hugo_
f03e708f64
Fix chorus not working if the destination would be below y=0 (#5979) 2023-08-10 09:42:58 +01:00
Dylan K. Taylor
37f2dafae1
PluginBase: make saveResource() use copy() instead of overengineered streams garbage 2023-08-09 16:16:11 +01:00
Dylan K. Taylor
7826e0a11e
Merge branch 'stable' into minor-next 2023-08-09 16:14:05 +01:00
Dylan T
97700636c6
PluginBase: added getResourceFolder() and getResourcePath(), deprecate getResource() (#5961)
This is a step towards #5958.

While it's not actually necessary to add these functions (since people could just use getFile() . "/resources/whatever.yml" instead), this helps preserve the convention of using the `resources` folder, which might be helpful for external tools.

As an example:
stream_get_contents($this->getResource("lang/eng.ini"));
(which is actually incorrect, since it leaks a resource)
can now be replaced by
file_get_contents($this->getResourcePath("lang/eng.ini"));
quite trivially.

getResourceFolder() can be used with scandir() to enumerate resources instead of using getResources(), although getResources() still provides utility in the relativized resource paths.
2023-08-09 16:09:16 +01:00
Dylan K. Taylor
447f061566
Use Event::hasHandlers() for a few more hot events 2023-08-09 15:46:20 +01:00
Dylan K. Taylor
b86b389fc5
changelog: fix link
[ci skip]
this is not technically wrong, but it's inconsistent with other changelogs
2023-08-09 15:33:02 +01:00
Dylan K. Taylor
e27121a437
5.4.3 is next 2023-08-09 14:04:57 +01:00
Dylan K. Taylor
2d5c9e64ce
Release 5.4.2 5.4.2 2023-08-09 14:04:57 +01:00
Dylan K. Taylor
78f5fbddf3
Merge branch 'legacy/pm4' into stable 2023-08-09 13:58:14 +01:00
Dylan K. Taylor
aa3f4f2545
4.23.6 is next 2023-08-09 13:56:19 +01:00
Dylan K. Taylor
f7279b6672
Release 4.23.5 4.23.5 2023-08-09 13:56:19 +01:00
Dylan K. Taylor
2711ab4f00
Update composer dependencies 2023-08-09 13:49:19 +01:00
Dylan K. Taylor
b4c5f5d58d
PluginBase: fixed resource leak
all this time we've been harping at plugin devs to fix their own leaks, and here's one right under our noses that no one spotted for 10 years ...

this leak is rather common, since it will occur whenever a plugin attempts to save a resource which already exists in the data folder.

This bug was introduced in 2014 by commit 63288346814b7b827f1f7cc7a16419af43bd0bfa.
2023-08-09 13:28:05 +01:00
Hugo_
a5d8ef7a6c
Add FarmlandHydrationChangeEvent (#5916) 2023-08-09 12:33:25 +01:00
Dylan K. Taylor
59c88fe7f7
Added WorldDifficultyChangeEvent 2023-08-09 12:22:03 +01:00
Dylan K. Taylor
735d9a5bf4
CandleTrait: allow candle to be lit by fire charges 2023-08-09 12:04:02 +01:00