Skip to content
This repository was archived by the owner on Jul 11, 2018. It is now read-only.

Commit cd8435f

Browse files
committed
Support for v1.5
1 parent 3ac04e6 commit cd8435f

File tree

1 file changed

+22
-10
lines changed

1 file changed

+22
-10
lines changed

ToyBox/src/aliuly/toybox/MagicCarpet.php

+22-10
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
use pocketmine\event\player\PlayerKickEvent;
1818
use pocketmine\event\player\PlayerQuitEvent;
1919
use pocketmine\event\entity\EntityTeleportEvent;
20+
use pocketmine\network\Network;
2021

2122
class MagicCarpet extends BaseCommand implements Listener {
2223
protected $block;
@@ -63,16 +64,27 @@ public function onCommand(CommandSender $sender,Command $cmd,$label, array $args
6364
}
6465
private function deSpawn(Player $pl,array &$blocks) {
6566
$l = $pl->getLevel();
66-
foreach($blocks as $i=>$block){
67-
list($x,$y,$z)=array_map("intval", explode(".", $i));
68-
$pk = new UpdateBlockPacket();
69-
$pk->x = $x;
70-
$pk->y = $y;
71-
$pk->z = $z;
72-
$pk->block = $block->getId();
73-
$pk->meta = $block->getDamage();
74-
Server::broadcastPacket($l->getUsingChunk($pk->x >> 4,$pk->z >> 4),
75-
$pk);
67+
if (version_compare($this->owner->getServer()->getApiVersion(),"1.12.0") >= 0) {
68+
$sndblks = [];
69+
foreach($blocks as $i=>$block){
70+
list($x,$y,$z)=array_map("intval", explode(".", $i));
71+
$sndblks[] = Block::get($block->getId(),$block->getDamage(),
72+
new Position($x,$y,$z,$l));
73+
}
74+
$l->sendBlocks($l->getChunkPlayers($pl->getX()>>4,$pl->getZ()>>4),
75+
$sndblks, UpdateBlockPacket::FLAG_ALL_PRIORITY);
76+
} else {
77+
foreach($blocks as $i=>$block){
78+
list($x,$y,$z)=array_map("intval", explode(".", $i));
79+
$pk = new UpdateBlockPacket();
80+
$pk->x = $x;
81+
$pk->y = $y;
82+
$pk->z = $z;
83+
$pk->block = $block->getId();
84+
$pk->meta = $block->getDamage();
85+
Server::broadcastPacket($l->getUsingChunk($pk->x >> 4,$pk->z >> 4),
86+
$pk);
87+
}
7688
}
7789
}
7890
private function carpet(Player $pl) {

0 commit comments

Comments
 (0)