mirror of
https://github.com/pmmp/PocketMine-MP.git
synced 2025-04-19 23:44:17 +00:00
Merge branch 'stable'
# Conflicts: # changelogs/3.14.md # resources/vanilla # src/VersionInfo.php # src/entity/Attribute.php
This commit is contained in:
commit
da798817b5
25
changelogs/3.14.md
Normal file
25
changelogs/3.14.md
Normal file
@ -0,0 +1,25 @@
|
||||
**For Minecraft: Bedrock Edition 1.16.0**
|
||||
|
||||
### Note about API versions
|
||||
Plugins which don't touch the protocol and compatible with any previous 3.x.y version will also run on these releases and do not need API bumps.
|
||||
Plugin developers should **only** update their required API to this version if you need the changes in this build.
|
||||
|
||||
**WARNING: If your plugin uses the protocol, you're not shielded by API change constraints.** You should consider using the `mcpe-protocol` directive in `plugin.yml` as a constraint if you do.
|
||||
|
||||
# 3.14.0
|
||||
- Added support for Minecraft: Bedrock Edition 1.16.0.
|
||||
- Removed compatibility with 1.14.60.
|
||||
|
||||
## Known issues (please don't open issues for these)
|
||||
- Walls don't connect to each other
|
||||
- Pumpkin and melon stems may not connect to their corresponding pumpkin/melon
|
||||
- New blocks, items & mobs aren't implemented
|
||||
- Nether doesn't exist
|
||||
|
||||
# 3.14.1
|
||||
- All skins are now trusted, bypassing the client-side trusted skin setting. Note that this means that NSFW skin filtering will **not** apply.
|
||||
- Fixed projectile motion being altered by ladders.
|
||||
- Fixed client-sided crashes when pressing E repeatedly very quickly on a high-latency connection.
|
||||
- `/plugins`, `/whitelist list`, `/banlist` and `/list` now show output in alphabetical order.
|
||||
- Some `pocketmine\event` APIs which accept arrays now have more robust type checking, fixing type errors caused by plugin input occurring in core code.
|
||||
- `Attribute::getAttributeByName()` is now aware of the `minecraft:lava_movement` attribute.
|
@ -46,6 +46,7 @@ class Attribute{
|
||||
public const FALL_DAMAGE = self::MC_PREFIX . "fall_damage";
|
||||
public const HORSE_JUMP_STRENGTH = self::MC_PREFIX . "horse.jump_strength";
|
||||
public const ZOMBIE_SPAWN_REINFORCEMENTS = self::MC_PREFIX . "zombie.spawn_reinforcements";
|
||||
public const LAVA_MOVEMENT = self::MC_PREFIX . "lava_movement";
|
||||
|
||||
/** @var string */
|
||||
protected $id;
|
||||
|
@ -48,6 +48,7 @@ final class AttributeFactory{
|
||||
$this->register(Attribute::FALL_DAMAGE, 0.0, 340282346638528859811704183484516925440.0, 1.0);
|
||||
$this->register(Attribute::HORSE_JUMP_STRENGTH, 0.0, 2.0, 0.7);
|
||||
$this->register(Attribute::ZOMBIE_SPAWN_REINFORCEMENTS, 0.0, 1.0, 0.0);
|
||||
$this->register(Attribute::LAVA_MOVEMENT, 0.0, 340282346638528859811704183484516925440.0, 0.02);
|
||||
}
|
||||
|
||||
public function get(string $id) : ?Attribute{
|
||||
|
@ -55,6 +55,9 @@ class TaskHandler{
|
||||
private $ownerName;
|
||||
|
||||
public function __construct(Task $task, int $taskId, int $delay = -1, int $period = -1, ?string $ownerName = null){
|
||||
if($task->getHandler() !== null){
|
||||
throw new \InvalidArgumentException("Cannot assign multiple handlers to the same task");
|
||||
}
|
||||
$this->task = $task;
|
||||
$this->taskId = $taskId;
|
||||
$this->delay = $delay;
|
||||
|
@ -153,12 +153,12 @@ class MainLogger extends \AttachableThreadedLogger implements \BufferedLogger{
|
||||
$this->buffer(function() use ($e, $trace) : void{
|
||||
$this->critical(self::printExceptionMessage($e));
|
||||
foreach(Utils::printableTrace($trace) as $line){
|
||||
$this->debug($line, true);
|
||||
$this->critical($line);
|
||||
}
|
||||
for($prev = $e->getPrevious(); $prev !== null; $prev = $prev->getPrevious()){
|
||||
$this->debug("Previous: " . self::printExceptionMessage($prev), true);
|
||||
$this->critical("Previous: " . self::printExceptionMessage($prev));
|
||||
foreach(Utils::printableTrace($prev->getTrace()) as $line){
|
||||
$this->debug(" " . $line, true);
|
||||
$this->critical(" " . $line);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
@ -38,7 +38,7 @@ class CheckTestCompletionTask extends Task{
|
||||
$test = $this->plugin->getCurrentTest();
|
||||
if($test === null){
|
||||
if(!$this->plugin->startNextTest()){
|
||||
$this->plugin->getScheduler()->cancelTask($this->getHandler()->getTaskId());
|
||||
$this->getHandler()->cancel();
|
||||
$this->plugin->onAllTestsCompleted();
|
||||
}
|
||||
}elseif($test->isFinished() or $test->isTimedOut()){
|
||||
|
Loading…
x
Reference in New Issue
Block a user