mirror of
https://github.com/pmmp/PocketMine-MP.git
synced 2025-04-21 08:17:34 +00:00
phpstan: make EntityEvent generic, fix a bunch of 'actual-problems' ignored errors
This commit is contained in:
parent
c523595e85
commit
49d3a42120
@ -29,6 +29,7 @@ use pocketmine\event\Cancellable;
|
||||
|
||||
/**
|
||||
* Called when an Entity, excluding players, changes a block directly
|
||||
* @phpstan-extends EntityEvent<Entity>
|
||||
*/
|
||||
class EntityBlockChangeEvent extends EntityEvent implements Cancellable{
|
||||
/** @var Block */
|
||||
|
@ -26,6 +26,9 @@ namespace pocketmine\event\entity;
|
||||
use pocketmine\entity\Entity;
|
||||
use pocketmine\event\Cancellable;
|
||||
|
||||
/**
|
||||
* @phpstan-extends EntityEvent<Entity>
|
||||
*/
|
||||
class EntityCombustEvent extends EntityEvent implements Cancellable{
|
||||
/** @var int */
|
||||
protected $duration;
|
||||
|
@ -30,6 +30,7 @@ use function max;
|
||||
|
||||
/**
|
||||
* Called when an entity takes damage.
|
||||
* @phpstan-extends EntityEvent<Entity>
|
||||
*/
|
||||
class EntityDamageEvent extends EntityEvent implements Cancellable{
|
||||
public const MODIFIER_ARMOR = 1;
|
||||
|
@ -26,6 +26,9 @@ namespace pocketmine\event\entity;
|
||||
use pocketmine\entity\Living;
|
||||
use pocketmine\item\Item;
|
||||
|
||||
/**
|
||||
* @phpstan-extends EntityEvent<Living>
|
||||
*/
|
||||
class EntityDeathEvent extends EntityEvent{
|
||||
/** @var Item[] */
|
||||
private $drops = [];
|
||||
|
@ -32,6 +32,7 @@ use pocketmine\entity\Vehicle;
|
||||
|
||||
/**
|
||||
* Called when a entity is despawned
|
||||
* @phpstan-extends EntityEvent<Entity>
|
||||
*/
|
||||
class EntityDespawnEvent extends EntityEvent{
|
||||
/** @var int */
|
||||
|
@ -27,6 +27,9 @@ use pocketmine\entity\EffectInstance;
|
||||
use pocketmine\entity\Entity;
|
||||
use pocketmine\event\Cancellable;
|
||||
|
||||
/**
|
||||
* @phpstan-extends EntityEvent<Entity>
|
||||
*/
|
||||
class EntityEffectEvent extends EntityEvent implements Cancellable{
|
||||
/** @var EffectInstance */
|
||||
private $effect;
|
||||
|
@ -29,12 +29,19 @@ namespace pocketmine\event\entity;
|
||||
use pocketmine\entity\Entity;
|
||||
use pocketmine\event\Event;
|
||||
|
||||
/**
|
||||
* @phpstan-template TEntity of Entity
|
||||
*/
|
||||
abstract class EntityEvent extends Event{
|
||||
/** @var Entity */
|
||||
/**
|
||||
* @var Entity
|
||||
* @phpstan-var TEntity
|
||||
*/
|
||||
protected $entity;
|
||||
|
||||
/**
|
||||
* @return Entity
|
||||
* @phpstan-return TEntity
|
||||
*/
|
||||
public function getEntity(){
|
||||
return $this->entity;
|
||||
|
@ -30,6 +30,7 @@ use pocketmine\level\Position;
|
||||
|
||||
/**
|
||||
* Called when a entity explodes
|
||||
* @phpstan-extends EntityEvent<Entity>
|
||||
*/
|
||||
class EntityExplodeEvent extends EntityEvent implements Cancellable{
|
||||
/** @var Position */
|
||||
|
@ -29,6 +29,7 @@ use pocketmine\item\Item;
|
||||
|
||||
/**
|
||||
* Called before a slot in an entity's inventory changes.
|
||||
* @phpstan-extends EntityEvent<Entity>
|
||||
*/
|
||||
class EntityInventoryChangeEvent extends EntityEvent implements Cancellable{
|
||||
/** @var Item */
|
||||
|
@ -27,6 +27,9 @@ use pocketmine\entity\Entity;
|
||||
use pocketmine\event\Cancellable;
|
||||
use pocketmine\level\Level;
|
||||
|
||||
/**
|
||||
* @phpstan-extends EntityEvent<Entity>
|
||||
*/
|
||||
class EntityLevelChangeEvent extends EntityEvent implements Cancellable{
|
||||
/** @var Level */
|
||||
private $originLevel;
|
||||
|
@ -27,6 +27,9 @@ use pocketmine\entity\Entity;
|
||||
use pocketmine\event\Cancellable;
|
||||
use pocketmine\math\Vector3;
|
||||
|
||||
/**
|
||||
* @phpstan-extends EntityEvent<Entity>
|
||||
*/
|
||||
class EntityMotionEvent extends EntityEvent implements Cancellable{
|
||||
/** @var Vector3 */
|
||||
private $mot;
|
||||
|
@ -26,6 +26,9 @@ namespace pocketmine\event\entity;
|
||||
use pocketmine\entity\Entity;
|
||||
use pocketmine\event\Cancellable;
|
||||
|
||||
/**
|
||||
* @phpstan-extends EntityEvent<Entity>
|
||||
*/
|
||||
class EntityRegainHealthEvent extends EntityEvent implements Cancellable{
|
||||
public const CAUSE_REGEN = 0;
|
||||
public const CAUSE_EATING = 1;
|
||||
|
@ -30,6 +30,9 @@ use pocketmine\event\Cancellable;
|
||||
use pocketmine\item\Item;
|
||||
use function count;
|
||||
|
||||
/**
|
||||
* @phpstan-extends EntityEvent<Living>
|
||||
*/
|
||||
class EntityShootBowEvent extends EntityEvent implements Cancellable{
|
||||
/** @var Item */
|
||||
private $bow;
|
||||
|
@ -33,6 +33,7 @@ use pocketmine\level\Position;
|
||||
|
||||
/**
|
||||
* Called when a entity is spawned
|
||||
* @phpstan-extends EntityEvent<Entity>
|
||||
*/
|
||||
class EntitySpawnEvent extends EntityEvent{
|
||||
/** @var int */
|
||||
|
@ -27,6 +27,9 @@ use pocketmine\entity\Entity;
|
||||
use pocketmine\event\Cancellable;
|
||||
use pocketmine\level\Position;
|
||||
|
||||
/**
|
||||
* @phpstan-extends EntityEvent<Entity>
|
||||
*/
|
||||
class EntityTeleportEvent extends EntityEvent implements Cancellable{
|
||||
/** @var Position */
|
||||
private $from;
|
||||
|
@ -28,6 +28,7 @@ use pocketmine\event\Cancellable;
|
||||
|
||||
/**
|
||||
* Called when a entity decides to explode
|
||||
* @phpstan-extends EntityEvent<Entity>
|
||||
*/
|
||||
class ExplosionPrimeEvent extends EntityEvent implements Cancellable{
|
||||
/** @var float */
|
||||
|
@ -26,6 +26,9 @@ namespace pocketmine\event\entity;
|
||||
use pocketmine\entity\object\ItemEntity;
|
||||
use pocketmine\event\Cancellable;
|
||||
|
||||
/**
|
||||
* @phpstan-extends EntityEvent<ItemEntity>
|
||||
*/
|
||||
class ItemDespawnEvent extends EntityEvent implements Cancellable{
|
||||
|
||||
public function __construct(ItemEntity $item){
|
||||
|
@ -25,6 +25,9 @@ namespace pocketmine\event\entity;
|
||||
|
||||
use pocketmine\entity\object\ItemEntity;
|
||||
|
||||
/**
|
||||
* @phpstan-extends EntityEvent<ItemEntity>
|
||||
*/
|
||||
class ItemSpawnEvent extends EntityEvent{
|
||||
|
||||
public function __construct(ItemEntity $item){
|
||||
|
@ -28,6 +28,7 @@ use pocketmine\math\RayTraceResult;
|
||||
|
||||
/**
|
||||
* @allowHandle
|
||||
* @phpstan-extends EntityEvent<Projectile>
|
||||
*/
|
||||
abstract class ProjectileHitEvent extends EntityEvent{
|
||||
/** @var RayTraceResult */
|
||||
|
@ -26,6 +26,9 @@ namespace pocketmine\event\entity;
|
||||
use pocketmine\entity\projectile\Projectile;
|
||||
use pocketmine\event\Cancellable;
|
||||
|
||||
/**
|
||||
* @phpstan-extends EntityEvent<Projectile>
|
||||
*/
|
||||
class ProjectileLaunchEvent extends EntityEvent implements Cancellable{
|
||||
public function __construct(Projectile $entity){
|
||||
$this->entity = $entity;
|
||||
|
@ -27,6 +27,9 @@ use pocketmine\entity\Human;
|
||||
use pocketmine\event\Cancellable;
|
||||
use pocketmine\event\entity\EntityEvent;
|
||||
|
||||
/**
|
||||
* @phpstan-extends EntityEvent<Human>
|
||||
*/
|
||||
class PlayerExhaustEvent extends EntityEvent implements Cancellable{
|
||||
public const CAUSE_ATTACK = 1;
|
||||
public const CAUSE_DAMAGE = 2;
|
||||
|
@ -29,6 +29,7 @@ use pocketmine\event\entity\EntityEvent;
|
||||
|
||||
/**
|
||||
* Called when a player gains or loses XP levels and/or progress.
|
||||
* @phpstan-extends EntityEvent<Human>
|
||||
*/
|
||||
class PlayerExperienceChangeEvent extends EntityEvent implements Cancellable{
|
||||
/** @var Human */
|
||||
|
@ -705,41 +705,11 @@ parameters:
|
||||
count: 1
|
||||
path: ../../../src/pocketmine/block/Wool.php
|
||||
|
||||
-
|
||||
message: "#^Method pocketmine\\\\event\\\\entity\\\\EntityDeathEvent\\:\\:getEntity\\(\\) should return pocketmine\\\\entity\\\\Living but returns pocketmine\\\\entity\\\\Entity\\.$#"
|
||||
count: 1
|
||||
path: ../../../src/pocketmine/event/entity/EntityDeathEvent.php
|
||||
|
||||
-
|
||||
message: "#^Method pocketmine\\\\event\\\\entity\\\\EntityShootBowEvent\\:\\:getEntity\\(\\) should return pocketmine\\\\entity\\\\Living but returns pocketmine\\\\entity\\\\Entity\\.$#"
|
||||
count: 1
|
||||
path: ../../../src/pocketmine/event/entity/EntityShootBowEvent.php
|
||||
|
||||
-
|
||||
message: "#^Property pocketmine\\\\event\\\\entity\\\\EntityShootBowEvent\\:\\:\\$projectile \\(pocketmine\\\\entity\\\\projectile\\\\Projectile\\) does not accept pocketmine\\\\entity\\\\Entity\\.$#"
|
||||
count: 1
|
||||
path: ../../../src/pocketmine/event/entity/EntityShootBowEvent.php
|
||||
|
||||
-
|
||||
message: "#^Method pocketmine\\\\event\\\\entity\\\\ItemDespawnEvent\\:\\:getEntity\\(\\) should return pocketmine\\\\entity\\\\object\\\\ItemEntity but returns pocketmine\\\\entity\\\\Entity\\.$#"
|
||||
count: 1
|
||||
path: ../../../src/pocketmine/event/entity/ItemDespawnEvent.php
|
||||
|
||||
-
|
||||
message: "#^Method pocketmine\\\\event\\\\entity\\\\ItemSpawnEvent\\:\\:getEntity\\(\\) should return pocketmine\\\\entity\\\\object\\\\ItemEntity but returns pocketmine\\\\entity\\\\Entity\\.$#"
|
||||
count: 1
|
||||
path: ../../../src/pocketmine/event/entity/ItemSpawnEvent.php
|
||||
|
||||
-
|
||||
message: "#^Method pocketmine\\\\event\\\\entity\\\\ProjectileHitEvent\\:\\:getEntity\\(\\) should return pocketmine\\\\entity\\\\projectile\\\\Projectile but returns pocketmine\\\\entity\\\\Entity\\.$#"
|
||||
count: 1
|
||||
path: ../../../src/pocketmine/event/entity/ProjectileHitEvent.php
|
||||
|
||||
-
|
||||
message: "#^Method pocketmine\\\\event\\\\entity\\\\ProjectileLaunchEvent\\:\\:getEntity\\(\\) should return pocketmine\\\\entity\\\\projectile\\\\Projectile but returns pocketmine\\\\entity\\\\Entity\\.$#"
|
||||
count: 1
|
||||
path: ../../../src/pocketmine/event/entity/ProjectileLaunchEvent.php
|
||||
|
||||
-
|
||||
message: "#^pocketmine\\\\inventory\\\\DoubleChestInventory\\:\\:__construct\\(\\) does not call parent constructor from pocketmine\\\\inventory\\\\ChestInventory\\.$#"
|
||||
count: 1
|
||||
|
Loading…
x
Reference in New Issue
Block a user