2026-03-01 12:16:08 +08:00
|
|
|
#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;
|
|
|
|
|
|
2026-03-02 17:37:16 +07:00
|
|
|
class PlayerIO
|
2026-03-01 12:16:08 +08:00
|
|
|
{
|
|
|
|
|
public:
|
2026-03-02 17:37:16 +07:00
|
|
|
virtual void save(shared_ptr<Player> player) = 0;
|
2026-03-03 03:04:10 +08:00
|
|
|
virtual CompoundTag *load(shared_ptr<Player> player) = 0;
|
2026-03-01 12:16:08 +08:00
|
|
|
virtual CompoundTag *loadPlayerDataTag(PlayerUID xuid) = 0; // 4J Changed from string name to xuid
|
|
|
|
|
|
|
|
|
|
// 4J Added
|
|
|
|
|
virtual void clearOldPlayerFiles() = 0;
|
|
|
|
|
virtual void saveMapIdLookup() = 0;
|
2026-03-02 17:37:16 +07:00
|
|
|
virtual void deleteMapFilesForPlayer(shared_ptr<Player> player) = 0;
|
2026-03-01 12:16:08 +08:00
|
|
|
virtual void saveAllCachedData() = 0;
|
|
|
|
|
};
|