mirror of
https://github.com/pmmp/PocketMine-MP.git
synced 2025-07-26 04:43:45 +00:00
Fixed a bunch of missed Position->getLevel() usages
these were not in the usage search because PhpStorm decided to refer to ChunkLoader->getLevel() for any Player references, which caused them to only show when that was searched. There's also an undetected LSP violation with ChunkLoader because it requires returning Level and Position->getLevel() returns Level|null. I don't know why PHPStan doesn't complain about that.
This commit is contained in:
parent
dc9351b024
commit
da4a2d8552
@ -521,7 +521,7 @@ class Player extends Human implements CommandSender, ChunkLoader, IPlayer{
|
|||||||
}
|
}
|
||||||
|
|
||||||
public function spawnTo(Player $player) : void{
|
public function spawnTo(Player $player) : void{
|
||||||
if($this->spawned and $player->spawned and $this->isAlive() and $player->isAlive() and $player->getLevel() === $this->level and $player->canSee($this) and !$this->isSpectator()){
|
if($this->spawned and $player->spawned and $this->isAlive() and $player->isAlive() and $player->getLevelNonNull() === $this->level and $player->canSee($this) and !$this->isSpectator()){
|
||||||
parent::spawnTo($player);
|
parent::spawnTo($player);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -91,7 +91,7 @@ class ParticleCommand extends VanillaCommand{
|
|||||||
}
|
}
|
||||||
|
|
||||||
if($sender instanceof Player){
|
if($sender instanceof Player){
|
||||||
$level = $sender->getLevel();
|
$level = $sender->getLevelNonNull();
|
||||||
$pos = new Vector3(
|
$pos = new Vector3(
|
||||||
$this->getRelativeDouble($sender->getX(), $sender, $args[1]),
|
$this->getRelativeDouble($sender->getX(), $sender, $args[1]),
|
||||||
$this->getRelativeDouble($sender->getY(), $sender, $args[2], 0, Level::Y_MAX),
|
$this->getRelativeDouble($sender->getY(), $sender, $args[2], 0, Level::Y_MAX),
|
||||||
|
@ -44,7 +44,7 @@ class SeedCommand extends VanillaCommand{
|
|||||||
}
|
}
|
||||||
|
|
||||||
if($sender instanceof Player){
|
if($sender instanceof Player){
|
||||||
$seed = $sender->getLevel()->getSeed();
|
$seed = $sender->getLevelNonNull()->getSeed();
|
||||||
}else{
|
}else{
|
||||||
$seed = $sender->getServer()->getDefaultLevel()->getSeed();
|
$seed = $sender->getServer()->getDefaultLevel()->getSeed();
|
||||||
}
|
}
|
||||||
|
@ -51,7 +51,7 @@ class SetWorldSpawnCommand extends VanillaCommand{
|
|||||||
|
|
||||||
if(count($args) === 0){
|
if(count($args) === 0){
|
||||||
if($sender instanceof Player){
|
if($sender instanceof Player){
|
||||||
$level = $sender->getLevel();
|
$level = $sender->getLevelNonNull();
|
||||||
$pos = (new Vector3($sender->x, $sender->y, $sender->z))->round();
|
$pos = (new Vector3($sender->x, $sender->y, $sender->z))->round();
|
||||||
}else{
|
}else{
|
||||||
$sender->sendMessage(TextFormat::RED . "You can only perform this command as a player");
|
$sender->sendMessage(TextFormat::RED . "You can only perform this command as a player");
|
||||||
|
@ -71,7 +71,7 @@ class SpawnpointCommand extends VanillaCommand{
|
|||||||
|
|
||||||
if(count($args) === 4){
|
if(count($args) === 4){
|
||||||
if($target->isValid()){
|
if($target->isValid()){
|
||||||
$level = $target->getLevel();
|
$level = $target->getLevelNonNull();
|
||||||
$pos = $sender instanceof Player ? $sender->getPosition() : $level->getSpawnLocation();
|
$pos = $sender instanceof Player ? $sender->getPosition() : $level->getSpawnLocation();
|
||||||
$x = $this->getRelativeDouble($pos->x, $sender, $args[1]);
|
$x = $this->getRelativeDouble($pos->x, $sender, $args[1]);
|
||||||
$y = $this->getRelativeDouble($pos->y, $sender, $args[2], 0, Level::Y_MAX);
|
$y = $this->getRelativeDouble($pos->y, $sender, $args[2], 0, Level::Y_MAX);
|
||||||
@ -84,7 +84,7 @@ class SpawnpointCommand extends VanillaCommand{
|
|||||||
}
|
}
|
||||||
}elseif(count($args) <= 1){
|
}elseif(count($args) <= 1){
|
||||||
if($sender instanceof Player){
|
if($sender instanceof Player){
|
||||||
$pos = new Position($sender->getFloorX(), $sender->getFloorY(), $sender->getFloorZ(), $sender->getLevel());
|
$pos = new Position($sender->getFloorX(), $sender->getFloorY(), $sender->getFloorZ(), $sender->getLevelNonNull());
|
||||||
$target->setSpawn($pos);
|
$target->setSpawn($pos);
|
||||||
|
|
||||||
Command::broadcastCommandMessage($sender, new TranslationContainer("commands.spawnpoint.success", [$target->getName(), round($pos->x, 2), round($pos->y, 2), round($pos->z, 2)]));
|
Command::broadcastCommandMessage($sender, new TranslationContainer("commands.spawnpoint.success", [$target->getName(), round($pos->x, 2), round($pos->y, 2), round($pos->z, 2)]));
|
||||||
|
@ -77,7 +77,7 @@ class TimeCommand extends VanillaCommand{
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
if($sender instanceof Player){
|
if($sender instanceof Player){
|
||||||
$level = $sender->getLevel();
|
$level = $sender->getLevelNonNull();
|
||||||
}else{
|
}else{
|
||||||
$level = $sender->getServer()->getDefaultLevel();
|
$level = $sender->getServer()->getDefaultLevel();
|
||||||
}
|
}
|
||||||
|
@ -64,7 +64,7 @@ class Bow extends Tool{
|
|||||||
$p = $diff / 20;
|
$p = $diff / 20;
|
||||||
$baseForce = min((($p ** 2) + $p * 2) / 3, 1);
|
$baseForce = min((($p ** 2) + $p * 2) / 3, 1);
|
||||||
|
|
||||||
$entity = Entity::createEntity("Arrow", $player->getLevel(), $nbt, $player, $baseForce >= 1);
|
$entity = Entity::createEntity("Arrow", $player->getLevelNonNull(), $nbt, $player, $baseForce >= 1);
|
||||||
if($entity instanceof Projectile){
|
if($entity instanceof Projectile){
|
||||||
$infinity = $this->hasEnchantment(Enchantment::INFINITY);
|
$infinity = $this->hasEnchantment(Enchantment::INFINITY);
|
||||||
if($entity instanceof ArrowEntity){
|
if($entity instanceof ArrowEntity){
|
||||||
@ -110,7 +110,7 @@ class Bow extends Tool{
|
|||||||
$ev->getProjectile()->flagForDespawn();
|
$ev->getProjectile()->flagForDespawn();
|
||||||
}else{
|
}else{
|
||||||
$ev->getProjectile()->spawnToAll();
|
$ev->getProjectile()->spawnToAll();
|
||||||
$player->getLevel()->broadcastLevelSoundEvent($player, LevelSoundEventPacket::SOUND_BOW);
|
$player->getLevelNonNull()->broadcastLevelSoundEvent($player, LevelSoundEventPacket::SOUND_BOW);
|
||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
$entity->spawnToAll();
|
$entity->spawnToAll();
|
||||||
|
@ -62,8 +62,8 @@ class Bucket extends Item implements MaybeConsumable{
|
|||||||
$ev = new PlayerBucketFillEvent($player, $blockReplace, $face, $this, $resultItem);
|
$ev = new PlayerBucketFillEvent($player, $blockReplace, $face, $this, $resultItem);
|
||||||
$ev->call();
|
$ev->call();
|
||||||
if(!$ev->isCancelled()){
|
if(!$ev->isCancelled()){
|
||||||
$player->getLevel()->setBlock($blockClicked, BlockFactory::get(Block::AIR), true, true);
|
$player->getLevelNonNull()->setBlock($blockClicked, BlockFactory::get(Block::AIR), true, true);
|
||||||
$player->getLevel()->broadcastLevelSoundEvent($blockClicked->add(0.5, 0.5, 0.5), $blockClicked->getBucketFillSound());
|
$player->getLevelNonNull()->broadcastLevelSoundEvent($blockClicked->add(0.5, 0.5, 0.5), $blockClicked->getBucketFillSound());
|
||||||
if($player->isSurvival()){
|
if($player->isSurvival()){
|
||||||
if($stack->getCount() === 0){
|
if($stack->getCount() === 0){
|
||||||
$player->getInventory()->setItemInHand($ev->getItem());
|
$player->getInventory()->setItemInHand($ev->getItem());
|
||||||
@ -84,8 +84,8 @@ class Bucket extends Item implements MaybeConsumable{
|
|||||||
$ev = new PlayerBucketEmptyEvent($player, $blockReplace, $face, $this, ItemFactory::get(Item::BUCKET));
|
$ev = new PlayerBucketEmptyEvent($player, $blockReplace, $face, $this, ItemFactory::get(Item::BUCKET));
|
||||||
$ev->call();
|
$ev->call();
|
||||||
if(!$ev->isCancelled()){
|
if(!$ev->isCancelled()){
|
||||||
$player->getLevel()->setBlock($blockReplace, $resultBlock->getFlowingForm(), true, true);
|
$player->getLevelNonNull()->setBlock($blockReplace, $resultBlock->getFlowingForm(), true, true);
|
||||||
$player->getLevel()->broadcastLevelSoundEvent($blockReplace->add(0.5, 0.5, 0.5), $resultBlock->getBucketEmptySound());
|
$player->getLevelNonNull()->broadcastLevelSoundEvent($blockReplace->add(0.5, 0.5, 0.5), $resultBlock->getBucketEmptySound());
|
||||||
|
|
||||||
if($player->isSurvival()){
|
if($player->isSurvival()){
|
||||||
$player->getInventory()->setItemInHand($ev->getItem());
|
$player->getInventory()->setItemInHand($ev->getItem());
|
||||||
|
@ -28,7 +28,6 @@ use pocketmine\block\BlockFactory;
|
|||||||
use pocketmine\math\Vector3;
|
use pocketmine\math\Vector3;
|
||||||
use pocketmine\network\mcpe\protocol\LevelSoundEventPacket;
|
use pocketmine\network\mcpe\protocol\LevelSoundEventPacket;
|
||||||
use pocketmine\Player;
|
use pocketmine\Player;
|
||||||
use function assert;
|
|
||||||
|
|
||||||
class FlintSteel extends Tool{
|
class FlintSteel extends Tool{
|
||||||
public function __construct(int $meta = 0){
|
public function __construct(int $meta = 0){
|
||||||
@ -37,8 +36,7 @@ class FlintSteel extends Tool{
|
|||||||
|
|
||||||
public function onActivate(Player $player, Block $blockReplace, Block $blockClicked, int $face, Vector3 $clickVector) : bool{
|
public function onActivate(Player $player, Block $blockReplace, Block $blockClicked, int $face, Vector3 $clickVector) : bool{
|
||||||
if($blockReplace->getId() === self::AIR){
|
if($blockReplace->getId() === self::AIR){
|
||||||
$level = $player->getLevel();
|
$level = $player->getLevelNonNull();
|
||||||
assert($level !== null);
|
|
||||||
$level->setBlock($blockReplace, BlockFactory::get(Block::FIRE), true);
|
$level->setBlock($blockReplace, BlockFactory::get(Block::FIRE), true);
|
||||||
$level->broadcastLevelSoundEvent($blockReplace->add(0.5, 0.5, 0.5), LevelSoundEventPacket::SOUND_IGNITE);
|
$level->broadcastLevelSoundEvent($blockReplace->add(0.5, 0.5, 0.5), LevelSoundEventPacket::SOUND_IGNITE);
|
||||||
|
|
||||||
|
@ -99,7 +99,7 @@ class PaintingItem extends Item{
|
|||||||
$this->pop();
|
$this->pop();
|
||||||
$entity->spawnToAll();
|
$entity->spawnToAll();
|
||||||
|
|
||||||
$player->getLevel()->broadcastLevelEvent($blockReplace->add(0.5, 0.5, 0.5), LevelEventPacket::EVENT_SOUND_ITEMFRAME_PLACE); //item frame and painting have the same sound
|
$player->getLevelNonNull()->broadcastLevelEvent($blockReplace->add(0.5, 0.5, 0.5), LevelEventPacket::EVENT_SOUND_ITEMFRAME_PLACE); //item frame and painting have the same sound
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -49,7 +49,7 @@ abstract class ProjectileItem extends Item{
|
|||||||
$nbt = Entity::createBaseNBT($player->add(0, $player->getEyeHeight(), 0), $directionVector, $player->yaw, $player->pitch);
|
$nbt = Entity::createBaseNBT($player->add(0, $player->getEyeHeight(), 0), $directionVector, $player->yaw, $player->pitch);
|
||||||
$this->addExtraTags($nbt);
|
$this->addExtraTags($nbt);
|
||||||
|
|
||||||
$projectile = Entity::createEntity($this->getProjectileEntityType(), $player->getLevel(), $nbt, $player);
|
$projectile = Entity::createEntity($this->getProjectileEntityType(), $player->getLevelNonNull(), $nbt, $player);
|
||||||
if($projectile !== null){
|
if($projectile !== null){
|
||||||
$projectile->setMotion($projectile->getMotion()->multiply($this->getThrowForce()));
|
$projectile->setMotion($projectile->getMotion()->multiply($this->getThrowForce()));
|
||||||
}
|
}
|
||||||
@ -64,7 +64,7 @@ abstract class ProjectileItem extends Item{
|
|||||||
}else{
|
}else{
|
||||||
$projectile->spawnToAll();
|
$projectile->spawnToAll();
|
||||||
|
|
||||||
$player->getLevel()->broadcastLevelSoundEvent($player, LevelSoundEventPacket::SOUND_THROW, 0, EntityIds::PLAYER);
|
$player->getLevelNonNull()->broadcastLevelSoundEvent($player, LevelSoundEventPacket::SOUND_THROW, 0, EntityIds::PLAYER);
|
||||||
}
|
}
|
||||||
}elseif($projectile !== null){
|
}elseif($projectile !== null){
|
||||||
$projectile->spawnToAll();
|
$projectile->spawnToAll();
|
||||||
|
@ -41,7 +41,7 @@ class SpawnEgg extends Item{
|
|||||||
$nbt->setString("CustomName", $this->getCustomName());
|
$nbt->setString("CustomName", $this->getCustomName());
|
||||||
}
|
}
|
||||||
|
|
||||||
$entity = Entity::createEntity($this->meta, $player->getLevel(), $nbt);
|
$entity = Entity::createEntity($this->meta, $player->getLevelNonNull(), $nbt);
|
||||||
|
|
||||||
if($entity instanceof Entity){
|
if($entity instanceof Entity){
|
||||||
$this->pop();
|
$this->pop();
|
||||||
|
@ -597,7 +597,7 @@ parameters:
|
|||||||
|
|
||||||
-
|
-
|
||||||
message: "#^Cannot call method getSeed\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#"
|
message: "#^Cannot call method getSeed\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#"
|
||||||
count: 2
|
count: 1
|
||||||
path: ../../../src/pocketmine/command/defaults/SeedCommand.php
|
path: ../../../src/pocketmine/command/defaults/SeedCommand.php
|
||||||
|
|
||||||
-
|
-
|
||||||
@ -605,11 +605,6 @@ parameters:
|
|||||||
count: 1
|
count: 1
|
||||||
path: ../../../src/pocketmine/command/defaults/SetWorldSpawnCommand.php
|
path: ../../../src/pocketmine/command/defaults/SetWorldSpawnCommand.php
|
||||||
|
|
||||||
-
|
|
||||||
message: "#^Cannot call method getSpawnLocation\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#"
|
|
||||||
count: 1
|
|
||||||
path: ../../../src/pocketmine/command/defaults/SpawnpointCommand.php
|
|
||||||
|
|
||||||
-
|
-
|
||||||
message: "#^Parameter \\#1 \\$name of method pocketmine\\\\Server\\:\\:getPlayer\\(\\) expects string, string\\|null given\\.$#"
|
message: "#^Parameter \\#1 \\$name of method pocketmine\\\\Server\\:\\:getPlayer\\(\\) expects string, string\\|null given\\.$#"
|
||||||
count: 1
|
count: 1
|
||||||
@ -845,11 +840,6 @@ parameters:
|
|||||||
count: 1
|
count: 1
|
||||||
path: ../../../src/pocketmine/entity/Living.php
|
path: ../../../src/pocketmine/entity/Living.php
|
||||||
|
|
||||||
-
|
|
||||||
message: "#^Cannot call method getDifficulty\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#"
|
|
||||||
count: 1
|
|
||||||
path: ../../../src/pocketmine/entity/Living.php
|
|
||||||
|
|
||||||
-
|
-
|
||||||
message: "#^Cannot call method dropExperience\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#"
|
message: "#^Cannot call method dropExperience\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#"
|
||||||
count: 1
|
count: 1
|
||||||
@ -1030,31 +1020,11 @@ parameters:
|
|||||||
count: 1
|
count: 1
|
||||||
path: ../../../src/pocketmine/item/Banner.php
|
path: ../../../src/pocketmine/item/Banner.php
|
||||||
|
|
||||||
-
|
|
||||||
message: "#^Parameter \\#2 \\$level of static method pocketmine\\\\entity\\\\Entity\\:\\:createEntity\\(\\) expects pocketmine\\\\level\\\\Level, pocketmine\\\\level\\\\Level\\|null given\\.$#"
|
|
||||||
count: 1
|
|
||||||
path: ../../../src/pocketmine/item/Bow.php
|
|
||||||
|
|
||||||
-
|
|
||||||
message: "#^Cannot call method broadcastLevelSoundEvent\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#"
|
|
||||||
count: 1
|
|
||||||
path: ../../../src/pocketmine/item/Bow.php
|
|
||||||
|
|
||||||
-
|
-
|
||||||
message: "#^Cannot call method spawnToAll\\(\\) on pocketmine\\\\entity\\\\Entity\\|null\\.$#"
|
message: "#^Cannot call method spawnToAll\\(\\) on pocketmine\\\\entity\\\\Entity\\|null\\.$#"
|
||||||
count: 1
|
count: 1
|
||||||
path: ../../../src/pocketmine/item/Bow.php
|
path: ../../../src/pocketmine/item/Bow.php
|
||||||
|
|
||||||
-
|
|
||||||
message: "#^Cannot call method setBlock\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#"
|
|
||||||
count: 2
|
|
||||||
path: ../../../src/pocketmine/item/Bucket.php
|
|
||||||
|
|
||||||
-
|
|
||||||
message: "#^Cannot call method broadcastLevelSoundEvent\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#"
|
|
||||||
count: 2
|
|
||||||
path: ../../../src/pocketmine/item/Bucket.php
|
|
||||||
|
|
||||||
-
|
-
|
||||||
message: "#^Parameter \\#1 \\$effectType of class pocketmine\\\\entity\\\\EffectInstance constructor expects pocketmine\\\\entity\\\\Effect, pocketmine\\\\entity\\\\Effect\\|null given\\.$#"
|
message: "#^Parameter \\#1 \\$effectType of class pocketmine\\\\entity\\\\EffectInstance constructor expects pocketmine\\\\entity\\\\Effect, pocketmine\\\\entity\\\\Effect\\|null given\\.$#"
|
||||||
count: 2
|
count: 2
|
||||||
@ -1075,11 +1045,6 @@ parameters:
|
|||||||
count: 1
|
count: 1
|
||||||
path: ../../../src/pocketmine/item/PaintingItem.php
|
path: ../../../src/pocketmine/item/PaintingItem.php
|
||||||
|
|
||||||
-
|
|
||||||
message: "#^Cannot call method broadcastLevelEvent\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#"
|
|
||||||
count: 1
|
|
||||||
path: ../../../src/pocketmine/item/PaintingItem.php
|
|
||||||
|
|
||||||
-
|
-
|
||||||
message: "#^Parameter \\#1 \\$effectType of class pocketmine\\\\entity\\\\EffectInstance constructor expects pocketmine\\\\entity\\\\Effect, pocketmine\\\\entity\\\\Effect\\|null given\\.$#"
|
message: "#^Parameter \\#1 \\$effectType of class pocketmine\\\\entity\\\\EffectInstance constructor expects pocketmine\\\\entity\\\\Effect, pocketmine\\\\entity\\\\Effect\\|null given\\.$#"
|
||||||
count: 1
|
count: 1
|
||||||
@ -1090,16 +1055,6 @@ parameters:
|
|||||||
count: 32
|
count: 32
|
||||||
path: ../../../src/pocketmine/item/Potion.php
|
path: ../../../src/pocketmine/item/Potion.php
|
||||||
|
|
||||||
-
|
|
||||||
message: "#^Parameter \\#2 \\$level of static method pocketmine\\\\entity\\\\Entity\\:\\:createEntity\\(\\) expects pocketmine\\\\level\\\\Level, pocketmine\\\\level\\\\Level\\|null given\\.$#"
|
|
||||||
count: 1
|
|
||||||
path: ../../../src/pocketmine/item/ProjectileItem.php
|
|
||||||
|
|
||||||
-
|
|
||||||
message: "#^Cannot call method broadcastLevelSoundEvent\\(\\) on pocketmine\\\\level\\\\Level\\|null\\.$#"
|
|
||||||
count: 1
|
|
||||||
path: ../../../src/pocketmine/item/ProjectileItem.php
|
|
||||||
|
|
||||||
-
|
-
|
||||||
message: "#^Parameter \\#1 \\$effectType of class pocketmine\\\\entity\\\\EffectInstance constructor expects pocketmine\\\\entity\\\\Effect, pocketmine\\\\entity\\\\Effect\\|null given\\.$#"
|
message: "#^Parameter \\#1 \\$effectType of class pocketmine\\\\entity\\\\EffectInstance constructor expects pocketmine\\\\entity\\\\Effect, pocketmine\\\\entity\\\\Effect\\|null given\\.$#"
|
||||||
count: 3
|
count: 3
|
||||||
@ -1115,11 +1070,6 @@ parameters:
|
|||||||
count: 1
|
count: 1
|
||||||
path: ../../../src/pocketmine/item/RottenFlesh.php
|
path: ../../../src/pocketmine/item/RottenFlesh.php
|
||||||
|
|
||||||
-
|
|
||||||
message: "#^Parameter \\#2 \\$level of static method pocketmine\\\\entity\\\\Entity\\:\\:createEntity\\(\\) expects pocketmine\\\\level\\\\Level, pocketmine\\\\level\\\\Level\\|null given\\.$#"
|
|
||||||
count: 1
|
|
||||||
path: ../../../src/pocketmine/item/SpawnEgg.php
|
|
||||||
|
|
||||||
-
|
-
|
||||||
message: "#^Parameter \\#1 \\$effectType of class pocketmine\\\\entity\\\\EffectInstance constructor expects pocketmine\\\\entity\\\\Effect, pocketmine\\\\entity\\\\Effect\\|null given\\.$#"
|
message: "#^Parameter \\#1 \\$effectType of class pocketmine\\\\entity\\\\EffectInstance constructor expects pocketmine\\\\entity\\\\Effect, pocketmine\\\\entity\\\\Effect\\|null given\\.$#"
|
||||||
count: 1
|
count: 1
|
||||||
|
Loading…
x
Reference in New Issue
Block a user