Refactored Server::broadcastPacket() to be non-static

Why the hell was this static at all? Seriously Shoghi?
This commit is contained in:
Dylan K. Taylor 2017-01-02 21:36:26 +00:00
parent 55791e0819
commit 0bd7ea211d
8 changed files with 23 additions and 23 deletions

View File

@ -1289,7 +1289,7 @@ class Player extends Human implements CommandSender, InventoryHolder, ChunkLoade
$pk = new TakeItemEntityPacket(); $pk = new TakeItemEntityPacket();
$pk->eid = $this->getId(); $pk->eid = $this->getId();
$pk->target = $entity->getId(); $pk->target = $entity->getId();
Server::broadcastPacket($entity->getViewers(), $pk); $this->server->broadcastPacket($entity->getViewers(), $pk);
$pk = new TakeItemEntityPacket(); $pk = new TakeItemEntityPacket();
$pk->eid = 0; $pk->eid = 0;
@ -1324,7 +1324,7 @@ class Player extends Human implements CommandSender, InventoryHolder, ChunkLoade
$pk = new TakeItemEntityPacket(); $pk = new TakeItemEntityPacket();
$pk->eid = $this->getId(); $pk->eid = $this->getId();
$pk->target = $entity->getId(); $pk->target = $entity->getId();
Server::broadcastPacket($entity->getViewers(), $pk); $this->server->broadcastPacket($entity->getViewers(), $pk);
$pk = new TakeItemEntityPacket(); $pk = new TakeItemEntityPacket();
$pk->eid = 0; $pk->eid = 0;
@ -2221,7 +2221,7 @@ class Player extends Human implements CommandSender, InventoryHolder, ChunkLoade
$pk->eid = $this->getId(); $pk->eid = $this->getId();
$pk->event = EntityEventPacket::USE_ITEM; $pk->event = EntityEventPacket::USE_ITEM;
$this->dataPacket($pk); $this->dataPacket($pk);
Server::broadcastPacket($this->getViewers(), $pk); $this->server->broadcastPacket($this->getViewers(), $pk);
if($this->isSurvival()){ if($this->isSurvival()){
$slot = $this->inventory->getItemInHand(); $slot = $this->inventory->getItemInHand();
@ -2506,7 +2506,7 @@ class Player extends Human implements CommandSender, InventoryHolder, ChunkLoade
$pk = new AnimatePacket(); $pk = new AnimatePacket();
$pk->eid = $this->getId(); $pk->eid = $this->getId();
$pk->action = $ev->getAnimationType(); $pk->action = $ev->getAnimationType();
Server::broadcastPacket($this->getViewers(), $pk); $this->server->broadcastPacket($this->getViewers(), $pk);
break; break;
case ProtocolInfo::SET_HEALTH_PACKET: //Not used case ProtocolInfo::SET_HEALTH_PACKET: //Not used
break; break;
@ -3389,7 +3389,7 @@ class Player extends Human implements CommandSender, InventoryHolder, ChunkLoade
$pk->mode = $mode; $pk->mode = $mode;
if($targets !== null){ if($targets !== null){
Server::broadcastPacket($targets, $pk); $this->server->broadcastPacket($targets, $pk);
}else{ }else{
$pk->eid = 0; $pk->eid = 0;
$this->dataPacket($pk); $this->dataPacket($pk);

View File

@ -1700,11 +1700,11 @@ class Server{
* @param Player[] $players * @param Player[] $players
* @param DataPacket $packet * @param DataPacket $packet
*/ */
public static function broadcastPacket(array $players, DataPacket $packet){ public function broadcastPacket(array $players, DataPacket $packet){
$packet->encode(); $packet->encode();
$packet->isEncoded = true; $packet->isEncoded = true;
if(Network::$BATCH_THRESHOLD >= 0 and strlen($packet->buffer) >= Network::$BATCH_THRESHOLD){ if(Network::$BATCH_THRESHOLD >= 0 and strlen($packet->buffer) >= Network::$BATCH_THRESHOLD){
Server::getInstance()->batchPackets($players, [$packet->buffer], false); $this->batchPackets($players, [$packet->buffer], false);
return; return;
} }
@ -2129,7 +2129,7 @@ class Server{
$pk = new PlayerListPacket(); $pk = new PlayerListPacket();
$pk->type = PlayerListPacket::TYPE_REMOVE; $pk->type = PlayerListPacket::TYPE_REMOVE;
$pk->entries[] = [$player->getUniqueId()]; $pk->entries[] = [$player->getUniqueId()];
Server::broadcastPacket($this->playerList, $pk); $this->broadcastPacket($this->playerList, $pk);
} }
} }
@ -2137,14 +2137,14 @@ class Server{
$pk = new PlayerListPacket(); $pk = new PlayerListPacket();
$pk->type = PlayerListPacket::TYPE_ADD; $pk->type = PlayerListPacket::TYPE_ADD;
$pk->entries[] = [$uuid, $entityId, $name, $skinId, $skinData]; $pk->entries[] = [$uuid, $entityId, $name, $skinId, $skinData];
Server::broadcastPacket($players === null ? $this->playerList : $players, $pk); $this->broadcastPacket($players === null ? $this->playerList : $players, $pk);
} }
public function removePlayerListData(UUID $uuid, array $players = null){ public function removePlayerListData(UUID $uuid, array $players = null){
$pk = new PlayerListPacket(); $pk = new PlayerListPacket();
$pk->type = PlayerListPacket::TYPE_REMOVE; $pk->type = PlayerListPacket::TYPE_REMOVE;
$pk->entries[] = [$uuid]; $pk->entries[] = [$uuid];
Server::broadcastPacket($players === null ? $this->playerList : $players, $pk); $this->broadcastPacket($players === null ? $this->playerList : $players, $pk);
} }
public function sendFullPlayerListData(Player $p){ public function sendFullPlayerListData(Player $p){

View File

@ -60,7 +60,7 @@ class DifficultyCommand extends VanillaCommand{
$pk = new SetDifficultyPacket(); $pk = new SetDifficultyPacket();
$pk->difficulty = $sender->getServer()->getDifficulty(); $pk->difficulty = $sender->getServer()->getDifficulty();
Server::broadcastPacket($sender->getServer()->getOnlinePlayers(), $pk); $sender->getServer()->broadcastPacket($sender->getServer()->getOnlinePlayers(), $pk);
Command::broadcastCommandMessage($sender, new TranslationContainer("commands.difficulty.success", [$difficulty])); Command::broadcastCommandMessage($sender, new TranslationContainer("commands.difficulty.success", [$difficulty]));
}else{ }else{

View File

@ -74,7 +74,7 @@ abstract class Living extends Entity implements Damageable{
$pk = new EntityEventPacket(); $pk = new EntityEventPacket();
$pk->eid = $this->getId(); $pk->eid = $this->getId();
$pk->event = EntityEventPacket::RESPAWN; $pk->event = EntityEventPacket::RESPAWN;
Server::broadcastPacket($this->hasSpawned, $pk); $this->server->broadcastPacket($this->hasSpawned, $pk);
} }
} }
@ -136,7 +136,7 @@ abstract class Living extends Entity implements Damageable{
$pk = new EntityEventPacket(); $pk = new EntityEventPacket();
$pk->eid = $this->getId(); $pk->eid = $this->getId();
$pk->event = $this->getHealth() <= 0 ? EntityEventPacket::DEATH_ANIMATION : EntityEventPacket::HURT_ANIMATION; //Ouch! $pk->event = $this->getHealth() <= 0 ? EntityEventPacket::DEATH_ANIMATION : EntityEventPacket::HURT_ANIMATION; //Ouch!
Server::broadcastPacket($this->hasSpawned, $pk); $this->server->broadcastPacket($this->hasSpawned, $pk);
$this->attackTime = 10; //0.5 seconds cooldown $this->attackTime = 10; //0.5 seconds cooldown
} }

View File

@ -66,7 +66,7 @@ class Squid extends WaterAnimal implements Ageable{
$pk = new EntityEventPacket(); $pk = new EntityEventPacket();
$pk->eid = $this->getId(); $pk->eid = $this->getId();
$pk->event = EntityEventPacket::SQUID_INK_CLOUD; $pk->event = EntityEventPacket::SQUID_INK_CLOUD;
Server::broadcastPacket($this->hasSpawned, $pk); $this->server->broadcastPacket($this->hasSpawned, $pk);
} }
} }

View File

@ -137,7 +137,7 @@ class PlayerInventory extends BaseInventory{
$this->sendSlot($this->getHeldItemSlot(), $target); $this->sendSlot($this->getHeldItemSlot(), $target);
} }
}else{ }else{
Server::broadcastPacket($target, $pk); $this->holder->getServer()->broadcastPacket($target, $pk);
foreach($target as $player){ foreach($target as $player){
if($player === $this->getHolder()){ if($player === $this->getHolder()){
$this->sendSlot($this->getHeldItemSlot(), $player); $this->sendSlot($this->getHeldItemSlot(), $player);

View File

@ -58,7 +58,7 @@ abstract class Food extends Item implements FoodSource{
if($human instanceof Player){ if($human instanceof Player){
$human->dataPacket($pk); $human->dataPacket($pk);
} }
Server::broadcastPacket($human->getViewers(), $pk); $human->getServer()->broadcastPacket($human->getViewers(), $pk);
$ev = new EntityEatItemEvent($human, $this); $ev = new EntityEatItemEvent($human, $this);

View File

@ -439,7 +439,7 @@ class Level implements ChunkManager, Metadatable{
}else{ }else{
if($pk !== null){ if($pk !== null){
if(!is_array($pk)){ if(!is_array($pk)){
Server::broadcastPacket($players, $pk); $this->server->broadcastPacket($players, $pk);
}else{ }else{
$this->server->batchPackets($players, $pk, false); $this->server->batchPackets($players, $pk, false);
} }
@ -463,7 +463,7 @@ class Level implements ChunkManager, Metadatable{
}else{ }else{
if($pk !== null){ if($pk !== null){
if(!is_array($pk)){ if(!is_array($pk)){
Server::broadcastPacket($players, $pk); $this->server->broadcastPacket($players, $pk);
}else{ }else{
$this->server->batchPackets($players, $pk, false); $this->server->batchPackets($players, $pk, false);
} }
@ -618,7 +618,7 @@ class Level implements ChunkManager, Metadatable{
$pk->time = (int) $this->time; $pk->time = (int) $this->time;
$pk->started = $this->stopTime == false; $pk->started = $this->stopTime == false;
Server::broadcastPacket($this->players, $pk); $this->server->broadcastPacket($this->players, $pk);
} }
/** /**
@ -735,7 +735,7 @@ class Level implements ChunkManager, Metadatable{
$chunkPlayers = $this->getChunkPlayers($chunkX, $chunkZ); $chunkPlayers = $this->getChunkPlayers($chunkX, $chunkZ);
if(count($chunkPlayers) > 0){ if(count($chunkPlayers) > 0){
foreach($entries as $pk){ foreach($entries as $pk){
Server::broadcastPacket($chunkPlayers, $pk); $this->server->broadcastPacket($chunkPlayers, $pk);
} }
} }
} }
@ -779,7 +779,7 @@ class Level implements ChunkManager, Metadatable{
$pk->z = $z + 0.5; $pk->z = $z + 0.5;
$pk->data = ($data << 8) | $id; $pk->data = ($data << 8) | $id;
Server::broadcastPacket($targets === null ? $this->getChunkPlayers($x >> 4, $z >> 4) : $targets, $pk); $this->server->broadcastPacket($targets === null ? $this->getChunkPlayers($x >> 4, $z >> 4) : $targets, $pk);
} }
/** /**
@ -819,7 +819,7 @@ class Level implements ChunkManager, Metadatable{
$pk->blockData = $fullBlock & 0xf; $pk->blockData = $fullBlock & 0xf;
$pk->flags = $first ? $flags : UpdateBlockPacket::FLAG_NONE; $pk->flags = $first ? $flags : UpdateBlockPacket::FLAG_NONE;
} }
Server::broadcastPacket($target, $pk); $this->server->broadcastPacket($target, $pk);
} }
}else{ }else{
foreach($blocks as $b){ foreach($blocks as $b){
@ -843,7 +843,7 @@ class Level implements ChunkManager, Metadatable{
$pk->blockData = $fullBlock & 0xf; $pk->blockData = $fullBlock & 0xf;
$pk->flags = $flags; $pk->flags = $flags;
} }
Server::broadcastPacket($target, $pk); $this->server->broadcastPacket($target, $pk);
} }
} }
} }