#pragma once #include #include #include namespace F4T::WorldStateSync { struct PendingWorldState { float gameHour{ 0.0F }; float gameDaysPassed{ 0.0F }; std::optional weatherFormId; bool hasWeatherFormId{ false }; bool applyTime{ false }; }; struct PendingServerWorldState { std::optional timeHHmm; std::optional weatherFormId; std::optional weatherConsoleArg; }; bool IsWorldStateHost(); std::optional GetWorldStateHostPlayerId(); void SetWorldStateHostPlayerId(std::uint32_t a_hostPlayerId); void Reset(); void SetPendingWorldState(PendingWorldState a_state); void SetPendingServerWorldState(PendingServerWorldState a_state); void PollHostCapture(); void ApplyPendingState(); }