18 class BGSTerrainManager;
62 constexpr
CellID(std::int16_t a_y, std::int16_t a_x) noexcept :
69 return a_lhs[0] == a_rhs[0] && a_lhs[1] == a_rhs[1];
72 [[nodiscard]] constexpr std::int16_t&
operator[](std::size_t a_idx) noexcept
75 return std::addressof(
y)[a_idx];
78 [[nodiscard]] constexpr
const std::int16_t&
operator[](std::size_t a_idx)
const noexcept
81 return std::addressof(
y)[a_idx];
88 static_assert(
sizeof(
CellID) == 0x4);
Definition: BGSEncounterZone.h:43
Definition: TESWorldSpace.h:101
BSTHashMap< FormID, CellID > formIDCellMap
Definition: TESWorldSpace.h:106
BSTHashMap< CellID, FormID * > cellFormIDMap
Definition: TESWorldSpace.h:105
BSTHashMap< CellID, FormID * > cellFormIDMapFiltered
Definition: TESWorldSpace.h:110
Definition: BGSLightingTemplate.h:11
Definition: BGSLocation.h:68
Definition: BGSMusicType.h:13
Definition: BGSTerrainManager.h:6
Definition: BSTArray.h:377
Definition: BSTHashMap.h:21
Definition: NiSmartPointer.h:9
Definition: NiTPointerMap.h:10
Definition: TESClimate.h:13
Definition: TESFullName.h:9
Definition: TESModel.h:16
Definition: TESObjectCELL.h:116
Definition: TESTexture.h:10
Definition: TESWorldSpace.h:118
std::uint8_t unk0A1
Definition: TESWorldSpace.h:192
bool FindInFileFast(TESFile *a_mod) override
void * unk138
Definition: TESWorldSpace.h:201
TESObjectCELL * persistentCell
Definition: TESWorldSpace.h:188
BGSLargeRefData largeRefData
Definition: TESWorldSpace.h:228
BSTHashMap< UnkKey, UnkValue > unk1D0
Definition: TESWorldSpace.h:218
ShortPoint fixedCenter
Definition: TESWorldSpace.h:194
std::uint32_t pad21C
Definition: TESWorldSpace.h:223
TESForm * CreateDuplicateForm(bool a_createEditorID, void *a_arg2) override
TESTexture canopyShadowTexture
Definition: TESWorldSpace.h:226
NiTPointerMap< std::uint32_t, BSSimpleList< TESObjectREFR * > * > * overlappedMultiboundMap
Definition: TESWorldSpace.h:197
TESTexture waterEnvMap
Definition: TESWorldSpace.h:227
TESWorldSpace * parentWorld
Definition: TESWorldSpace.h:205
void * unk140
Definition: TESWorldSpace.h:202
BGSLightingTemplate * lightingTemplate
Definition: TESWorldSpace.h:206
WORLD_MAP_OFFSET_DATA worldMapOffsetData
Definition: TESWorldSpace.h:213
NiPoint2 maximumCoords
Definition: TESWorldSpace.h:217
BSTHashMap< CellID, TESObjectCELL * > cellMap
Definition: TESWorldSpace.h:187
static constexpr auto FORMTYPE
Definition: TESWorldSpace.h:122
BSTHashMap< FormID, BGSLocation * > locationMap
Definition: TESWorldSpace.h:199
std::uint32_t pad1B4
Definition: TESWorldSpace.h:214
float defaultWaterHeight
Definition: TESWorldSpace.h:221
NiPointer< NiNode > portalSharedNode
Definition: TESWorldSpace.h:204
TESWaterForm * worldWater
Definition: TESWorldSpace.h:207
TESObjectCELL * skyCell
Definition: TESWorldSpace.h:198
Flag
Definition: TESWorldSpace.h:125
static constexpr auto VTABLE
Definition: TESWorldSpace.h:121
BGSMusicType * musicType
Definition: TESWorldSpace.h:215
NiPoint2 minimumCoords
Definition: TESWorldSpace.h:216
BSTHashMap< UnkKey, UnkValue > unk318
Definition: TESWorldSpace.h:231
BSString editorID
Definition: TESWorldSpace.h:219
ParentUseFlag
Definition: TESWorldSpace.h:137
bool HasMaxHeightData() const
BGSTerrainManager * terrainManager
Definition: TESWorldSpace.h:189
WORLD_MAP_DATA worldMapData
Definition: TESWorldSpace.h:212
bool IsFormTypeChild(FormType a_type) override
BSTArray< NiPointer< TESObjectREFR > > mobilePersistentRefs
Definition: TESWorldSpace.h:196
bool SetFormEditorID(const char *a_str) override
stl::enumeration< Flag, std::uint8_t > flags
Definition: TESWorldSpace.h:191
bool IsParentForm() override
float defaultLandHeight
Definition: TESWorldSpace.h:220
std::uint64_t unk180
Definition: TESWorldSpace.h:211
float distantLODMult
Definition: TESWorldSpace.h:222
BSTHashMap< UnkKey, UnkValue > unk2E8
Definition: TESWorldSpace.h:230
std::int8_t * maxHeightData
Definition: TESWorldSpace.h:234
float lodWaterHeight
Definition: TESWorldSpace.h:209
const char * GetFormEditorID() const override
NiPointer< BSPortalGraph > portalGraph
Definition: TESWorldSpace.h:200
bool LoadPartial(TESFile *a_mod) override
BGSEncounterZone * encounterZone
Definition: TESWorldSpace.h:224
~TESWorldSpace() override
BSTHashMap< std::uint32_t, BSTArray< NiPointer< TESObjectREFR > > > fixedPersistentRefMap
Definition: TESWorldSpace.h:195
TESWaterForm * lodWater
Definition: TESWorldSpace.h:208
BGSLocation * location
Definition: TESWorldSpace.h:225
float northRotation
Definition: TESWorldSpace.h:232
stl::enumeration< ParentUseFlag, std::uint16_t > parentUseFlags
Definition: TESWorldSpace.h:193
std::uint32_t pad17C
Definition: TESWorldSpace.h:210
float GetDefaultWaterHeight() const
static constexpr auto RTTI
Definition: TESWorldSpace.h:120
NiPointer< NiNode > multiBoundNode
Definition: TESWorldSpace.h:203
std::uint32_t pad34C
Definition: TESWorldSpace.h:233
void ClearData() override
bool Load(TESFile *a_mod) override
void InitializeData() override
TESObjectCELL * GetSkyCell()
void InitItemImpl() override
std::uint64_t unk2E0
Definition: TESWorldSpace.h:229
TESClimate * climate
Definition: TESWorldSpace.h:190
Definition: AbsorbEffect.h:6
FormType
Definition: FormTypes.h:139
constexpr REL::VariantID RTTI_TESWorldSpace(513891, 392429, 0x1ed9578)
constexpr std::array< REL::VariantID, 3 > VTABLE_TESWorldSpace
Definition: Offsets_VTABLE.h:689
std::uint32_t operator()(CellID a_key) const noexcept
Definition: TESWorldSpace.h:94
Definition: TESWorldSpace.h:56
constexpr friend bool operator==(const CellID &a_lhs, const CellID &a_rhs) noexcept
Definition: TESWorldSpace.h:67
std::int16_t x
Definition: TESWorldSpace.h:86
constexpr const std::int16_t & operator[](std::size_t a_idx) const noexcept
Definition: TESWorldSpace.h:78
constexpr CellID() noexcept
Definition: TESWorldSpace.h:58
constexpr std::int16_t & operator[](std::size_t a_idx) noexcept
Definition: TESWorldSpace.h:72
std::int16_t y
Definition: TESWorldSpace.h:85
constexpr CellID(std::int16_t a_y, std::int16_t a_x) noexcept
Definition: TESWorldSpace.h:62
Definition: TESWorldSpace.h:149
RecordFlag
Definition: TESWorldSpace.h:151
@ kDeleted
Definition: TESWorldSpace.h:152
@ kIgnored
Definition: TESWorldSpace.h:153
@ kCantWait
Definition: TESWorldSpace.h:154
Definition: TESWorldSpace.h:159
std::int16_t x
Definition: TESWorldSpace.h:162
std::int16_t y
Definition: TESWorldSpace.h:163
Definition: TESWorldSpace.h:26
float minHeight
Definition: TESWorldSpace.h:27
float maxHeight
Definition: TESWorldSpace.h:28
float initialPitch
Definition: TESWorldSpace.h:29
Definition: TESWorldSpace.h:23
std::int16_t nwCellX
Definition: TESWorldSpace.h:36
std::uint32_t usableWidth
Definition: TESWorldSpace.h:31
std::int16_t seCellX
Definition: TESWorldSpace.h:38
CameraData cameraData
Definition: TESWorldSpace.h:40
std::uint32_t usableHeight
Definition: TESWorldSpace.h:35
std::int16_t seCellY
Definition: TESWorldSpace.h:39
std::int16_t nwCellY
Definition: TESWorldSpace.h:37
Definition: TESWorldSpace.h:45
float mapOffsetZ
Definition: TESWorldSpace.h:51
float mapOffsetX
Definition: TESWorldSpace.h:49
float mapOffsetY
Definition: TESWorldSpace.h:50
float mapScale
Definition: TESWorldSpace.h:48