17 return std::unexpected(
Error::NotReady(
"no game rules: is a map running?"));
24 return std::unexpected(
Error::Unsupported(
"the CCSGameRules::TerminateRound signature did not bind"));
63 return rules.RoundStartTime() +
static_cast<float>(
rules.RoundTime()) - _clock.
Time();
runtime.Entities: finds and creates entities. Everything it returns is valid for this frame only; see...
A live entity, valid for this frame only.
Status SetTime(int seconds) const
Status End(RoundEndReason reason, float delaySeconds) const
std::optional< float > TimeLeft() const
CCSGameRules GameRules() const
static std::string ReadFile(const std::filesystem::path &path)
static Schema::CCSGameRules GameRules(EntitySystem &entities)
static Status NoGameRules()
std::expected< void, Error > Status
Fn< void(void *, float, uint32_t, void *)> TerminateRound
static Error Unsupported(std::string detail)
static Error NotReady(std::string detail)