t7x/src/client/component/profile_infos.hpp

27 lines
675 B
C++
Raw Normal View History

2023-04-02 03:10:18 -04:00
#pragma once
2023-04-07 03:01:36 -04:00
#include <game/game.hpp>
2023-04-06 16:04:20 -04:00
#include <utils/byte_buffer.hpp>
2023-04-02 03:10:18 -04:00
namespace profile_infos
{
struct profile_info
{
2023-04-06 16:04:20 -04:00
int32_t version{3};
std::string ddl{};
profile_info() = default;
profile_info(utils::byte_buffer& buffer);
void serialize(utils::byte_buffer& buffer) const;
2023-04-02 03:10:18 -04:00
};
2023-04-07 03:01:36 -04:00
void add_profile_info(uint64_t user_id, const profile_info& info);
void add_and_distribute_profile_info(const game::netadr_t& addr, uint64_t user_id, const profile_info& info);
void clear_profile_infos();
2023-04-06 16:04:20 -04:00
2023-04-07 04:46:09 -04:00
std::optional<profile_info> get_profile_info();
2023-04-02 03:10:18 -04:00
std::optional<profile_info> get_profile_info(uint64_t user_id);
void update_profile_info(const profile_info& info);
}