class
#include <Spore/Simulator/cPlanetRecord.h>
cPlanetRecord Keeps all the information related to a planet.
Contents
This does not represent the planet visually (that is the Simulator::
Planet records are uniquely identified with a PlanetID, which can be retrieved using GetID(). You can get the record from an ID using cStarManager::
Base classes
Public static variables
- static const uint32_t TYPE
Public static functions
- static auto GenerateTerrainKey() -> ResourceKey
- Generates a
.prop
file ResourceKey that is currently unused in game packages, so that the planet terrain can be saved there. - static auto GetPerihelion(cPlanetRecord* pRecord, MoonPerihelionType moonType) -> float
- Returns the distance of the perihelion, which is the planet's closest point to the parent object in its orbit (the parent object is either a sun, or another planet if this planet is a moon).
- static void Create(PlanetID planetId, cPlanetRecordPtr& dst)
Public functions
- auto GetStarRecord() const -> cStarRecord*
- auto GetStarID() const -> StarID
- auto GetID() const -> PlanetID
- auto GetTechLevel() const -> TechLevel
- void SetGeneratedTerrainKey(const ResourceKey& key)
- auto GetGeneratedTerrainKey() -> ResourceKey&
Public variables
- eastl::string16 mName
- PlanetType mType
- The type of the planet, which determines whether it is a gas giant, asteroid belt, or regular rocky planet.
- int mFlags
- cEllipticalOrbit mOrbit
- The orbit this planet follows around its star.
- bool mbRotationIsNull
- If true, the planet does not rotate around itself (i.e. there are no "days").
-
Math::
Vector3 mRotationAxis - Axis of rotation for planet days, that is, in which axis the planet spins around itself.
- float mRotationPeriod
- How much time, in real seconds, the planet takes to make a full spin around itself (that is, how long an astronomical day is for this planet).
- int8_t mPlanetRing
- char field_AD
- float mAtmosphereScore
- float mTemperatureScore
- float mWaterScore
- eastl::vector<ResourceKey> mPlantSpecies
- IDs of the plant species that inhabit this planet.
- eastl::vector<ResourceKey> mAnimalSpecies
- IDs of the animal species that inhabit this planet.
- eastl::vector<cCommodityNodeData*> mCommodityNodes
- eastl::vector<int> field_F8
- int field_10C
- eastl::vector<int> field_110
- int mNumDefenderUFOs
- float mTimeLastBuiltUFOs
- float mTimeCalledReinforcements
- bool mbHomeWorld
- eastl::vector<cPlanetObjectData> mPlanetObjects
- eastl::vector<uint32_t> mTerrainStampsToRemove
- eastl::vector<cCivData*> mCivData
- eastl::vector<cTribeData*> mTribeData
- PlanetID mKey
- ResourceKey field_188
- TechLevel mTechLevel
- ResourceKey mSpiceGen
- ResourceKey mGeneratedTerrainKey
Function documentation
static float Simulator:: cPlanetRecord:: GetPerihelion(cPlanetRecord* pRecord,
MoonPerihelionType moonType)
Returns the distance of the perihelion, which is the planet's closest point to the parent object in its orbit (the parent object is either a sun, or another planet if this planet is a moon).
Parameters | |
---|---|
pRecord | The planet |
moonType | Only used for moons (planets orbiting other planets), determines how the perihelion is calculated |