diff --git a/src/world/particle/AngryVillagerParticle.php b/src/world/particle/AngryVillagerParticle.php index c265c34f1..5ea0ea204 100644 --- a/src/world/particle/AngryVillagerParticle.php +++ b/src/world/particle/AngryVillagerParticle.php @@ -23,10 +23,13 @@ declare(strict_types=1); namespace pocketmine\world\particle; +use pocketmine\math\Vector3; +use pocketmine\network\mcpe\protocol\LevelEventPacket; use pocketmine\network\mcpe\protocol\types\ParticleIds; -class AngryVillagerParticle extends GenericParticle{ - public function __construct(){ - parent::__construct(ParticleIds::VILLAGER_ANGRY); +class AngryVillagerParticle implements Particle{ + + public function encode(Vector3 $pos){ + return LevelEventPacket::standardParticle(ParticleIds::VILLAGER_ANGRY, 0, $pos); } } diff --git a/src/world/particle/BlockForceFieldParticle.php b/src/world/particle/BlockForceFieldParticle.php index 2ea6e5e18..24d07d30f 100644 --- a/src/world/particle/BlockForceFieldParticle.php +++ b/src/world/particle/BlockForceFieldParticle.php @@ -23,10 +23,20 @@ declare(strict_types=1); namespace pocketmine\world\particle; +use pocketmine\math\Vector3; +use pocketmine\network\mcpe\protocol\LevelEventPacket; use pocketmine\network\mcpe\protocol\types\ParticleIds; -class BlockForceFieldParticle extends GenericParticle{ +class BlockForceFieldParticle implements Particle{ + + /** @var int */ + private $data; + public function __construct(int $data = 0){ - parent::__construct(ParticleIds::BLOCK_FORCE_FIELD, $data); //TODO: proper encode/decode of data + $this->data = $data; //TODO: proper encode/decode of data + } + + public function encode(Vector3 $pos){ + return LevelEventPacket::standardParticle(ParticleIds::BLOCK_FORCE_FIELD, $this->data, $pos); } } diff --git a/src/world/particle/BubbleParticle.php b/src/world/particle/BubbleParticle.php index 47e9618ad..62deede8a 100644 --- a/src/world/particle/BubbleParticle.php +++ b/src/world/particle/BubbleParticle.php @@ -23,10 +23,13 @@ declare(strict_types=1); namespace pocketmine\world\particle; +use pocketmine\math\Vector3; +use pocketmine\network\mcpe\protocol\LevelEventPacket; use pocketmine\network\mcpe\protocol\types\ParticleIds; -class BubbleParticle extends GenericParticle{ - public function __construct(){ - parent::__construct(ParticleIds::BUBBLE); +class BubbleParticle implements Particle{ + + public function encode(Vector3 $pos){ + return LevelEventPacket::standardParticle(ParticleIds::BUBBLE, 0, $pos); } } diff --git a/src/world/particle/CriticalParticle.php b/src/world/particle/CriticalParticle.php index b35ca5075..970564585 100644 --- a/src/world/particle/CriticalParticle.php +++ b/src/world/particle/CriticalParticle.php @@ -23,10 +23,19 @@ declare(strict_types=1); namespace pocketmine\world\particle; +use pocketmine\math\Vector3; +use pocketmine\network\mcpe\protocol\LevelEventPacket; use pocketmine\network\mcpe\protocol\types\ParticleIds; -class CriticalParticle extends GenericParticle{ +class CriticalParticle implements Particle{ + /** @var int */ + private $scale; + public function __construct(int $scale = 2){ - parent::__construct(ParticleIds::CRITICAL, $scale); + $this->scale = $scale; + } + + public function encode(Vector3 $pos){ + return LevelEventPacket::standardParticle(ParticleIds::CRITICAL, $this->scale, $pos); } } diff --git a/src/world/particle/DustParticle.php b/src/world/particle/DustParticle.php index c69806239..de9aa1335 100644 --- a/src/world/particle/DustParticle.php +++ b/src/world/particle/DustParticle.php @@ -23,11 +23,20 @@ declare(strict_types=1); namespace pocketmine\world\particle; +use pocketmine\math\Vector3; +use pocketmine\network\mcpe\protocol\LevelEventPacket; use pocketmine\network\mcpe\protocol\types\ParticleIds; use pocketmine\utils\Color; -class DustParticle extends GenericParticle{ +class DustParticle implements Particle{ + /** @var Color */ + private $color; + public function __construct(Color $color){ - parent::__construct(ParticleIds::DUST, $color->toARGB()); + $this->color = $color; + } + + public function encode(Vector3 $pos){ + return LevelEventPacket::standardParticle(ParticleIds::DUST, $this->color->toARGB(), $pos); } } diff --git a/src/world/particle/EnchantParticle.php b/src/world/particle/EnchantParticle.php index abe6a151c..8925f7a08 100644 --- a/src/world/particle/EnchantParticle.php +++ b/src/world/particle/EnchantParticle.php @@ -23,10 +23,13 @@ declare(strict_types=1); namespace pocketmine\world\particle; +use pocketmine\math\Vector3; +use pocketmine\network\mcpe\protocol\LevelEventPacket; use pocketmine\network\mcpe\protocol\types\ParticleIds; -class EnchantParticle extends GenericParticle{ - public function __construct(){ - parent::__construct(ParticleIds::MOB_SPELL); +class EnchantParticle implements Particle{ + + public function encode(Vector3 $pos){ + return LevelEventPacket::standardParticle(ParticleIds::MOB_SPELL, 0, $pos); } } diff --git a/src/world/particle/EnchantmentTableParticle.php b/src/world/particle/EnchantmentTableParticle.php index 2ccf22166..15ac7d14b 100644 --- a/src/world/particle/EnchantmentTableParticle.php +++ b/src/world/particle/EnchantmentTableParticle.php @@ -23,10 +23,13 @@ declare(strict_types=1); namespace pocketmine\world\particle; +use pocketmine\math\Vector3; +use pocketmine\network\mcpe\protocol\LevelEventPacket; use pocketmine\network\mcpe\protocol\types\ParticleIds; -class EnchantmentTableParticle extends GenericParticle{ - public function __construct(){ - parent::__construct(ParticleIds::ENCHANTMENT_TABLE); +class EnchantmentTableParticle implements Particle{ + + public function encode(Vector3 $pos){ + return LevelEventPacket::standardParticle(ParticleIds::ENCHANTMENT_TABLE, 0, $pos); } } diff --git a/src/world/particle/EntityFlameParticle.php b/src/world/particle/EntityFlameParticle.php index 7274a7376..66c4ba4c2 100644 --- a/src/world/particle/EntityFlameParticle.php +++ b/src/world/particle/EntityFlameParticle.php @@ -23,10 +23,13 @@ declare(strict_types=1); namespace pocketmine\world\particle; +use pocketmine\math\Vector3; +use pocketmine\network\mcpe\protocol\LevelEventPacket; use pocketmine\network\mcpe\protocol\types\ParticleIds; -class EntityFlameParticle extends GenericParticle{ - public function __construct(){ - parent::__construct(ParticleIds::MOB_FLAME); +class EntityFlameParticle implements Particle{ + + public function encode(Vector3 $pos){ + return LevelEventPacket::standardParticle(ParticleIds::MOB_FLAME, 0, $pos); } } diff --git a/src/world/particle/ExplodeParticle.php b/src/world/particle/ExplodeParticle.php index 239459f72..8a51a13de 100644 --- a/src/world/particle/ExplodeParticle.php +++ b/src/world/particle/ExplodeParticle.php @@ -23,10 +23,13 @@ declare(strict_types=1); namespace pocketmine\world\particle; +use pocketmine\math\Vector3; +use pocketmine\network\mcpe\protocol\LevelEventPacket; use pocketmine\network\mcpe\protocol\types\ParticleIds; -class ExplodeParticle extends GenericParticle{ - public function __construct(){ - parent::__construct(ParticleIds::EXPLODE); +class ExplodeParticle implements Particle{ + + public function encode(Vector3 $pos){ + return LevelEventPacket::standardParticle(ParticleIds::EXPLODE, 0, $pos); } } diff --git a/src/world/particle/FlameParticle.php b/src/world/particle/FlameParticle.php index e117192f3..f78681c8e 100644 --- a/src/world/particle/FlameParticle.php +++ b/src/world/particle/FlameParticle.php @@ -23,10 +23,13 @@ declare(strict_types=1); namespace pocketmine\world\particle; +use pocketmine\math\Vector3; +use pocketmine\network\mcpe\protocol\LevelEventPacket; use pocketmine\network\mcpe\protocol\types\ParticleIds; -class FlameParticle extends GenericParticle{ - public function __construct(){ - parent::__construct(ParticleIds::FLAME); +class FlameParticle implements Particle{ + + public function encode(Vector3 $pos){ + return LevelEventPacket::standardParticle(ParticleIds::FLAME, 0, $pos); } } diff --git a/src/world/particle/GenericParticle.php b/src/world/particle/GenericParticle.php deleted file mode 100644 index 570292ddd..000000000 --- a/src/world/particle/GenericParticle.php +++ /dev/null @@ -1,43 +0,0 @@ -id = $id & 0xFFF; - $this->data = $data; - } - - public function encode(Vector3 $pos){ - return LevelEventPacket::standardParticle($this->id, $this->data, $pos); - } -} diff --git a/src/world/particle/HappyVillagerParticle.php b/src/world/particle/HappyVillagerParticle.php index bb452744e..d6e03881b 100644 --- a/src/world/particle/HappyVillagerParticle.php +++ b/src/world/particle/HappyVillagerParticle.php @@ -23,10 +23,13 @@ declare(strict_types=1); namespace pocketmine\world\particle; +use pocketmine\math\Vector3; +use pocketmine\network\mcpe\protocol\LevelEventPacket; use pocketmine\network\mcpe\protocol\types\ParticleIds; -class HappyVillagerParticle extends GenericParticle{ - public function __construct(){ - parent::__construct(ParticleIds::VILLAGER_HAPPY); +class HappyVillagerParticle implements Particle{ + + public function encode(Vector3 $pos){ + return LevelEventPacket::standardParticle(ParticleIds::VILLAGER_HAPPY, 0, $pos); } } diff --git a/src/world/particle/HeartParticle.php b/src/world/particle/HeartParticle.php index e115976d4..b3a76baa5 100644 --- a/src/world/particle/HeartParticle.php +++ b/src/world/particle/HeartParticle.php @@ -23,10 +23,19 @@ declare(strict_types=1); namespace pocketmine\world\particle; +use pocketmine\math\Vector3; +use pocketmine\network\mcpe\protocol\LevelEventPacket; use pocketmine\network\mcpe\protocol\types\ParticleIds; -class HeartParticle extends GenericParticle{ +class HeartParticle implements Particle{ + /** @var int */ + private $scale; + public function __construct(int $scale = 0){ - parent::__construct(ParticleIds::HEART, $scale); + $this->scale = $scale; + } + + public function encode(Vector3 $pos){ + return LevelEventPacket::standardParticle(ParticleIds::HEART, $this->scale, $pos); } } diff --git a/src/world/particle/HugeExplodeParticle.php b/src/world/particle/HugeExplodeParticle.php index fe0d67ecc..5f9b0c6e7 100644 --- a/src/world/particle/HugeExplodeParticle.php +++ b/src/world/particle/HugeExplodeParticle.php @@ -23,10 +23,13 @@ declare(strict_types=1); namespace pocketmine\world\particle; +use pocketmine\math\Vector3; +use pocketmine\network\mcpe\protocol\LevelEventPacket; use pocketmine\network\mcpe\protocol\types\ParticleIds; -class HugeExplodeParticle extends GenericParticle{ - public function __construct(){ - parent::__construct(ParticleIds::HUGE_EXPLODE); +class HugeExplodeParticle implements Particle{ + + public function encode(Vector3 $pos){ + return LevelEventPacket::standardParticle(ParticleIds::HUGE_EXPLODE, 0, $pos); } } diff --git a/src/world/particle/HugeExplodeSeedParticle.php b/src/world/particle/HugeExplodeSeedParticle.php index 153d05f73..d27db8875 100644 --- a/src/world/particle/HugeExplodeSeedParticle.php +++ b/src/world/particle/HugeExplodeSeedParticle.php @@ -23,10 +23,13 @@ declare(strict_types=1); namespace pocketmine\world\particle; +use pocketmine\math\Vector3; +use pocketmine\network\mcpe\protocol\LevelEventPacket; use pocketmine\network\mcpe\protocol\types\ParticleIds; -class HugeExplodeSeedParticle extends GenericParticle{ - public function __construct(){ - parent::__construct(ParticleIds::HUGE_EXPLODE_SEED); +class HugeExplodeSeedParticle implements Particle{ + + public function encode(Vector3 $pos){ + return LevelEventPacket::standardParticle(ParticleIds::HUGE_EXPLODE_SEED, 0, $pos); } } diff --git a/src/world/particle/InkParticle.php b/src/world/particle/InkParticle.php index b7e88531a..c99c07ce8 100644 --- a/src/world/particle/InkParticle.php +++ b/src/world/particle/InkParticle.php @@ -23,10 +23,19 @@ declare(strict_types=1); namespace pocketmine\world\particle; +use pocketmine\math\Vector3; +use pocketmine\network\mcpe\protocol\LevelEventPacket; use pocketmine\network\mcpe\protocol\types\ParticleIds; -class InkParticle extends GenericParticle{ +class InkParticle implements Particle{ + /** @var int */ + private $scale; + public function __construct(int $scale = 0){ - parent::__construct(ParticleIds::INK, $scale); + $this->scale = $scale; + } + + public function encode(Vector3 $pos){ + return LevelEventPacket::standardParticle(ParticleIds::INK, $this->scale, $pos); } } diff --git a/src/world/particle/InstantEnchantParticle.php b/src/world/particle/InstantEnchantParticle.php index 4a49833a2..b569600c4 100644 --- a/src/world/particle/InstantEnchantParticle.php +++ b/src/world/particle/InstantEnchantParticle.php @@ -23,10 +23,13 @@ declare(strict_types=1); namespace pocketmine\world\particle; +use pocketmine\math\Vector3; +use pocketmine\network\mcpe\protocol\LevelEventPacket; use pocketmine\network\mcpe\protocol\types\ParticleIds; -class InstantEnchantParticle extends GenericParticle{ - public function __construct(){ - parent::__construct(ParticleIds::MOB_SPELL_INSTANTANEOUS); +class InstantEnchantParticle implements Particle{ + + public function encode(Vector3 $pos){ + return LevelEventPacket::standardParticle(ParticleIds::MOB_SPELL_INSTANTANEOUS, 0, $pos); } } diff --git a/src/world/particle/ItemBreakParticle.php b/src/world/particle/ItemBreakParticle.php index 574c3dcda..7ebee7b0e 100644 --- a/src/world/particle/ItemBreakParticle.php +++ b/src/world/particle/ItemBreakParticle.php @@ -24,10 +24,19 @@ declare(strict_types=1); namespace pocketmine\world\particle; use pocketmine\item\Item; +use pocketmine\math\Vector3; +use pocketmine\network\mcpe\protocol\LevelEventPacket; use pocketmine\network\mcpe\protocol\types\ParticleIds; -class ItemBreakParticle extends GenericParticle{ +class ItemBreakParticle implements Particle{ + /** @var Item */ + private $item; + public function __construct(Item $item){ - parent::__construct(ParticleIds::ITEM_BREAK, ($item->getId() << 16) | $item->getMeta()); + $this->item = $item; + } + + public function encode(Vector3 $pos){ + return LevelEventPacket::standardParticle(ParticleIds::ITEM_BREAK, ($this->item->getId() << 16) | $this->item->getMeta(), $pos); } } diff --git a/src/world/particle/LavaDripParticle.php b/src/world/particle/LavaDripParticle.php index adf6d7163..485c8004b 100644 --- a/src/world/particle/LavaDripParticle.php +++ b/src/world/particle/LavaDripParticle.php @@ -23,10 +23,13 @@ declare(strict_types=1); namespace pocketmine\world\particle; +use pocketmine\math\Vector3; +use pocketmine\network\mcpe\protocol\LevelEventPacket; use pocketmine\network\mcpe\protocol\types\ParticleIds; -class LavaDripParticle extends GenericParticle{ - public function __construct(){ - parent::__construct(ParticleIds::DRIP_LAVA); +class LavaDripParticle implements Particle{ + + public function encode(Vector3 $pos){ + return LevelEventPacket::standardParticle(ParticleIds::DRIP_LAVA, 0, $pos); } } diff --git a/src/world/particle/LavaParticle.php b/src/world/particle/LavaParticle.php index c9eafc2dc..fede3825e 100644 --- a/src/world/particle/LavaParticle.php +++ b/src/world/particle/LavaParticle.php @@ -23,10 +23,13 @@ declare(strict_types=1); namespace pocketmine\world\particle; +use pocketmine\math\Vector3; +use pocketmine\network\mcpe\protocol\LevelEventPacket; use pocketmine\network\mcpe\protocol\types\ParticleIds; -class LavaParticle extends GenericParticle{ - public function __construct(){ - parent::__construct(ParticleIds::LAVA); +class LavaParticle implements Particle{ + + public function encode(Vector3 $pos){ + return LevelEventPacket::standardParticle(ParticleIds::LAVA, 0, $pos); } } diff --git a/src/world/particle/PortalParticle.php b/src/world/particle/PortalParticle.php index fa511145e..c45c8eaa3 100644 --- a/src/world/particle/PortalParticle.php +++ b/src/world/particle/PortalParticle.php @@ -23,10 +23,13 @@ declare(strict_types=1); namespace pocketmine\world\particle; +use pocketmine\math\Vector3; +use pocketmine\network\mcpe\protocol\LevelEventPacket; use pocketmine\network\mcpe\protocol\types\ParticleIds; -class PortalParticle extends GenericParticle{ - public function __construct(){ - parent::__construct(ParticleIds::PORTAL); +class PortalParticle implements Particle{ + + public function encode(Vector3 $pos){ + return LevelEventPacket::standardParticle(ParticleIds::PORTAL, 0, $pos); } } diff --git a/src/world/particle/RainSplashParticle.php b/src/world/particle/RainSplashParticle.php index cafa5b324..1178557d6 100644 --- a/src/world/particle/RainSplashParticle.php +++ b/src/world/particle/RainSplashParticle.php @@ -23,10 +23,13 @@ declare(strict_types=1); namespace pocketmine\world\particle; +use pocketmine\math\Vector3; +use pocketmine\network\mcpe\protocol\LevelEventPacket; use pocketmine\network\mcpe\protocol\types\ParticleIds; -class RainSplashParticle extends GenericParticle{ - public function __construct(){ - parent::__construct(ParticleIds::RAIN_SPLASH); +class RainSplashParticle implements Particle{ + + public function encode(Vector3 $pos){ + return LevelEventPacket::standardParticle(ParticleIds::RAIN_SPLASH, 0, $pos); } } diff --git a/src/world/particle/RedstoneParticle.php b/src/world/particle/RedstoneParticle.php index 13fbacba7..4336f01f9 100644 --- a/src/world/particle/RedstoneParticle.php +++ b/src/world/particle/RedstoneParticle.php @@ -23,10 +23,19 @@ declare(strict_types=1); namespace pocketmine\world\particle; +use pocketmine\math\Vector3; +use pocketmine\network\mcpe\protocol\LevelEventPacket; use pocketmine\network\mcpe\protocol\types\ParticleIds; -class RedstoneParticle extends GenericParticle{ +class RedstoneParticle implements Particle{ + /** @var int */ + private $lifetime; + public function __construct(int $lifetime = 1){ - parent::__construct(ParticleIds::REDSTONE, $lifetime); + $this->lifetime = $lifetime; + } + + public function encode(Vector3 $pos){ + return LevelEventPacket::standardParticle(ParticleIds::REDSTONE, $this->lifetime, $pos); } } diff --git a/src/world/particle/SmokeParticle.php b/src/world/particle/SmokeParticle.php index 501e373e1..3d9f3f9fa 100644 --- a/src/world/particle/SmokeParticle.php +++ b/src/world/particle/SmokeParticle.php @@ -23,10 +23,19 @@ declare(strict_types=1); namespace pocketmine\world\particle; +use pocketmine\math\Vector3; +use pocketmine\network\mcpe\protocol\LevelEventPacket; use pocketmine\network\mcpe\protocol\types\ParticleIds; -class SmokeParticle extends GenericParticle{ +class SmokeParticle implements Particle{ + /** @var int */ + private $scale; + public function __construct(int $scale = 0){ - parent::__construct(ParticleIds::SMOKE, $scale); + $this->scale = $scale; + } + + public function encode(Vector3 $pos){ + return LevelEventPacket::standardParticle(ParticleIds::SMOKE, $this->scale, $pos); } } diff --git a/src/world/particle/SnowballPoofParticle.php b/src/world/particle/SnowballPoofParticle.php index b5b4f1fc1..e82726d1c 100644 --- a/src/world/particle/SnowballPoofParticle.php +++ b/src/world/particle/SnowballPoofParticle.php @@ -23,10 +23,13 @@ declare(strict_types=1); namespace pocketmine\world\particle; +use pocketmine\math\Vector3; +use pocketmine\network\mcpe\protocol\LevelEventPacket; use pocketmine\network\mcpe\protocol\types\ParticleIds; -class SnowballPoofParticle extends GenericParticle{ - public function __construct(){ - parent::__construct(ParticleIds::SNOWBALL_POOF, 0); +class SnowballPoofParticle implements Particle{ + + public function encode(Vector3 $pos){ + return LevelEventPacket::standardParticle(ParticleIds::SNOWBALL_POOF, 0, $pos); } } diff --git a/src/world/particle/SplashParticle.php b/src/world/particle/SplashParticle.php index 8d9e96596..171e1b3cb 100644 --- a/src/world/particle/SplashParticle.php +++ b/src/world/particle/SplashParticle.php @@ -23,10 +23,13 @@ declare(strict_types=1); namespace pocketmine\world\particle; +use pocketmine\math\Vector3; +use pocketmine\network\mcpe\protocol\LevelEventPacket; use pocketmine\network\mcpe\protocol\types\ParticleIds; -class SplashParticle extends GenericParticle{ - public function __construct(){ - parent::__construct(ParticleIds::WATER_SPLASH); +class SplashParticle implements Particle{ + + public function encode(Vector3 $pos){ + return LevelEventPacket::standardParticle(ParticleIds::WATER_SPLASH, 0, $pos); } } diff --git a/src/world/particle/SporeParticle.php b/src/world/particle/SporeParticle.php index 23e2b3e0a..d8ef499c8 100644 --- a/src/world/particle/SporeParticle.php +++ b/src/world/particle/SporeParticle.php @@ -23,10 +23,13 @@ declare(strict_types=1); namespace pocketmine\world\particle; +use pocketmine\math\Vector3; +use pocketmine\network\mcpe\protocol\LevelEventPacket; use pocketmine\network\mcpe\protocol\types\ParticleIds; -class SporeParticle extends GenericParticle{ - public function __construct(){ - parent::__construct(ParticleIds::TOWN_AURA); +class SporeParticle implements Particle{ + + public function encode(Vector3 $pos){ + return LevelEventPacket::standardParticle(ParticleIds::TOWN_AURA, 0, $pos); } } diff --git a/src/world/particle/TerrainParticle.php b/src/world/particle/TerrainParticle.php index 2514cc66a..997c2e76b 100644 --- a/src/world/particle/TerrainParticle.php +++ b/src/world/particle/TerrainParticle.php @@ -24,10 +24,19 @@ declare(strict_types=1); namespace pocketmine\world\particle; use pocketmine\block\Block; +use pocketmine\math\Vector3; +use pocketmine\network\mcpe\protocol\LevelEventPacket; use pocketmine\network\mcpe\protocol\types\ParticleIds; -class TerrainParticle extends GenericParticle{ +class TerrainParticle implements Particle{ + /** @var Block */ + private $block; + public function __construct(Block $b){ - parent::__construct(ParticleIds::TERRAIN, $b->getRuntimeId()); + $this->block = $b; + } + + public function encode(Vector3 $pos){ + return LevelEventPacket::standardParticle(ParticleIds::TERRAIN, $this->block->getRuntimeId(), $pos); } } diff --git a/src/world/particle/WaterDripParticle.php b/src/world/particle/WaterDripParticle.php index 65b2f12e2..71677252a 100644 --- a/src/world/particle/WaterDripParticle.php +++ b/src/world/particle/WaterDripParticle.php @@ -23,10 +23,13 @@ declare(strict_types=1); namespace pocketmine\world\particle; +use pocketmine\math\Vector3; +use pocketmine\network\mcpe\protocol\LevelEventPacket; use pocketmine\network\mcpe\protocol\types\ParticleIds; -class WaterDripParticle extends GenericParticle{ - public function __construct(){ - parent::__construct(ParticleIds::DRIP_WATER); +class WaterDripParticle implements Particle{ + + public function encode(Vector3 $pos){ + return LevelEventPacket::standardParticle(ParticleIds::DRIP_WATER, 0, $pos); } } diff --git a/src/world/particle/WaterParticle.php b/src/world/particle/WaterParticle.php index 473a226e0..71beaaab3 100644 --- a/src/world/particle/WaterParticle.php +++ b/src/world/particle/WaterParticle.php @@ -23,10 +23,13 @@ declare(strict_types=1); namespace pocketmine\world\particle; +use pocketmine\math\Vector3; +use pocketmine\network\mcpe\protocol\LevelEventPacket; use pocketmine\network\mcpe\protocol\types\ParticleIds; -class WaterParticle extends GenericParticle{ - public function __construct(){ - parent::__construct(ParticleIds::WATER_WAKE); +class WaterParticle implements Particle{ + + public function encode(Vector3 $pos){ + return LevelEventPacket::standardParticle(ParticleIds::WATER_WAKE, 0, $pos); } }