Added PlayerDataSaveEvent, resolved #487 (#920)

* Added PlayerDataSaveEvent, resolved #487

* Added getPlayer() to PlayerDataSaveEvent
may return an IPlayer

* Fixed quit messages
This TranslationContainer vs. string mess... >_<
This commit is contained in:
Dylan K. Taylor
2017-05-29 18:50:45 +01:00
committed by GitHub
parent 645d744e05
commit 0ad16c1919
4 changed files with 101 additions and 20 deletions

View File

@ -3604,7 +3604,6 @@ class Player extends Human implements CommandSender, InventoryHolder, ChunkLoade
$this->server->getPluginManager()->unsubscribeFromPermission(Server::BROADCAST_CHANNEL_ADMINISTRATIVE, $this);
if($this->joined){
//TODO: add events for player data saving
$this->save();
$this->server->getPluginManager()->callEvent($ev = new PlayerQuitEvent($this, $message));
@ -3705,7 +3704,7 @@ class Player extends Human implements CommandSender, InventoryHolder, ChunkLoade
}
$this->namedtag["playerGameType"] = $this->gamemode;
$this->namedtag["lastPlayed"] = new LongTag("lastPlayed", floor(microtime(true) * 1000));
$this->namedtag["lastPlayed"] = floor(microtime(true) * 1000);
if($this->username != "" and $this->namedtag instanceof CompoundTag){
$this->server->saveOfflinePlayerData($this->username, $this->namedtag, $async);