Skip to content

Instantly share code, notes, and snippets.

@yuyaprgrm
Last active December 5, 2021 09:14
Show Gist options
  • Select an option

  • Save yuyaprgrm/e96aa9b2f2704259e5d3ac383e36c014 to your computer and use it in GitHub Desktop.

Select an option

Save yuyaprgrm/e96aa9b2f2704259e5d3ac383e36c014 to your computer and use it in GitHub Desktop.
Delay PlayerLogin
<?php
private array $packet_list = [];
public function onSendPacket(DataPacketSendEvent $event)
{
$pk = $event->getPacket();
$player = $event->getPlayer();
if($pk instanceof PlayStatusPacket)
{
if(($key = array_search($pk, $this->packet_list) === false))
{
$event->setCancelled();
$this->packet_list[] = $pk;
$this->plugin->getScheduler()->scheduleDelayedTask(new ClosureTask(function (int $currentTick)use($pk, $player):void{
$player->sendDataPacket($pk);
}), 20*15);
}else{
unset($this->packet_list[$key]);
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment