power_play/src/pp/pp_transcode.h
2026-02-10 21:56:08 -06:00

37 lines
695 B
C

////////////////////////////////////////////////////////////
//~ Transcode types
Enum(P_Tv)
{
P_Tv_None = 0,
P_Tv_Initial = 1,
P_Tv_COUNT
};
#define P_Tv_Latest (P_Tv_COUNT - 1)
Struct(P_UnpackedWorld)
{
P_Tv version;
u64 seed;
i64 time_ns;
i64 tick;
P_EntList ents;
u8 *tiles;
};
////////////////////////////////////////////////////////////
//~ World
String P_PackWorld(Arena *arena, P_World *src_world);
P_UnpackedWorld P_UnpackWorld(Arena *arena, String packed);
////////////////////////////////////////////////////////////
//~ Message
String P_PackMessages(BB_Writer *bbw, P_MsgList msgs);
P_MsgList P_UnpackMessages(Arena *arena, String packed, NET_Key sender);