You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
openmw/components/esm3/weatherstate.hpp

38 lines
759 B
C++

#ifndef OPENMW_ESM_WEATHERSTATE_H
#define OPENMW_ESM_WEATHERSTATE_H
#include <components/esm/refid.hpp>
#include <map>
#include <string>
#include <vector>
namespace ESM
{
class ESMReader;
class ESMWriter;
struct RegionWeatherState
{
int32_t mWeather;
std::vector<uint8_t> mChances;
};
struct WeatherState
{
ESM::RefId mCurrentRegion;
float mTimePassed;
bool mFastForward;
float mWeatherUpdateTime;
float mTransitionFactor;
int32_t mCurrentWeather;
int32_t mNextWeather;
int32_t mQueuedWeather;
std::map<ESM::RefId, RegionWeatherState> mRegions;
void load(ESMReader& esm);
void save(ESMWriter& esm) const;
};
}
#endif