Files
MinecraftConsoles/Minecraft.World/PlayerIO.h
void_17 7074f35e4b shared_ptr -> std::shared_ptr
This is one of the first commits in a plan to remove all `using namespace std;` lines in the entire codebase as it is considered anti-pattern today.
2026-03-02 15:58:20 +07:00

22 lines
807 B
C++

#pragma once
using namespace std;
// If we have more than MAX_PLAYER_DATA_SAVES player.dat's then we delete the oldest ones
// This value can be no higher than MAXIMUM_MAP_SAVE_DATA/3 (3 being the number of dimensions in future versions)
#define MAX_PLAYER_DATA_SAVES 80
class Player;
class PlayerIO
{
public:
virtual void save(std::shared_ptr<Player> player) = 0;
virtual bool load(std::shared_ptr<Player> player) = 0; // 4J Changed return val to bool to check if new player or loaded player
virtual CompoundTag *loadPlayerDataTag(PlayerUID xuid) = 0; // 4J Changed from string name to xuid
// 4J Added
virtual void clearOldPlayerFiles() = 0;
virtual void saveMapIdLookup() = 0;
virtual void deleteMapFilesForPlayer(std::shared_ptr<Player> player) = 0;
virtual void saveAllCachedData() = 0;
};