18 class BGSTerrainManager;
60 constexpr CellID(std::int16_t a_y, std::int16_t a_x) noexcept :
67 return a_lhs[0] == a_rhs[0] && a_lhs[1] == a_rhs[1];
70 [[nodiscard]]
constexpr std::int16_t&
operator[](std::size_t a_idx)
noexcept
73 return std::addressof(
y)[a_idx];
76 [[nodiscard]]
constexpr const std::int16_t&
operator[](std::size_t a_idx)
const noexcept
79 return std::addressof(
y)[a_idx];
86 static_assert(
sizeof(
CellID) == 0x4);
Definition: BGSEncounterZone.h:43
Definition: TESWorldSpace.h:99
BSTHashMap< FormID, CellID > formIDCellMap
Definition: TESWorldSpace.h:104
BSTHashMap< CellID, FormID * > cellFormIDMap
Definition: TESWorldSpace.h:103
BSTHashMap< CellID, FormID * > cellFormIDMapFiltered
Definition: TESWorldSpace.h:108
Definition: BGSLightingTemplate.h:11
Definition: BGSLocation.h:68
Definition: BGSMusicType.h:13
Definition: BSTArray.h:377
Definition: BSTHashMap.h:21
Definition: NiTPointerMap.h:10
Definition: TESClimate.h:13
Definition: TESFullName.h:9
Definition: TESModel.h:16
Definition: TESObjectCELL.h:102
Definition: TESTexture.h:10
Definition: TESWorldSpace.h:116
std::uint8_t unk0A1
Definition: TESWorldSpace.h:187
TESForm * CreateDuplicateForm(bool a_createEditorID, void *a_arg2) override
void * unk150
Definition: TESWorldSpace.h:199
bool FindInFileFast(TESFile *a_mod) override
void * unk138
Definition: TESWorldSpace.h:196
void * unk130
Definition: TESWorldSpace.h:195
TESObjectCELL * persistentCell
Definition: TESWorldSpace.h:183
BGSLargeRefData largeRefData
Definition: TESWorldSpace.h:223
BSTHashMap< UnkKey, UnkValue > unk1D0
Definition: TESWorldSpace.h:213
ShortPoint fixedCenter
Definition: TESWorldSpace.h:189
std::uint32_t pad21C
Definition: TESWorldSpace.h:218
TESTexture canopyShadowTexture
Definition: TESWorldSpace.h:221
void * unk148
Definition: TESWorldSpace.h:198
NiTPointerMap< std::uint32_t, BSSimpleList< TESObjectREFR * > * > * overlappedMultiboundMap
Definition: TESWorldSpace.h:192
TESTexture waterEnvMap
Definition: TESWorldSpace.h:222
TESWorldSpace * parentWorld
Definition: TESWorldSpace.h:200
void * unk140
Definition: TESWorldSpace.h:197
BGSLightingTemplate * lightingTemplate
Definition: TESWorldSpace.h:201
WORLD_MAP_OFFSET_DATA worldMapOffsetData
Definition: TESWorldSpace.h:208
NiPoint2 maximumCoords
Definition: TESWorldSpace.h:212
BSTHashMap< CellID, TESObjectCELL * > cellMap
Definition: TESWorldSpace.h:182
static constexpr auto FORMTYPE
Definition: TESWorldSpace.h:119
BSTHashMap< FormID, BGSLocation * > locationMap
Definition: TESWorldSpace.h:194
std::uint32_t pad1B4
Definition: TESWorldSpace.h:209
float defaultWaterHeight
Definition: TESWorldSpace.h:216
TESWaterForm * worldWater
Definition: TESWorldSpace.h:202
TESObjectCELL * skyCell
Definition: TESWorldSpace.h:193
Flag
Definition: TESWorldSpace.h:122
const char * GetFormEditorID() const override
BGSMusicType * musicType
Definition: TESWorldSpace.h:210
NiPoint2 minimumCoords
Definition: TESWorldSpace.h:211
BSTHashMap< UnkKey, UnkValue > unk318
Definition: TESWorldSpace.h:226
BSString editorID
Definition: TESWorldSpace.h:214
ParentUseFlag
Definition: TESWorldSpace.h:134
bool HasMaxHeightData() const
BGSTerrainManager * terrainManager
Definition: TESWorldSpace.h:184
WORLD_MAP_DATA worldMapData
Definition: TESWorldSpace.h:207
bool IsFormTypeChild(FormType a_type) override
BSTArray< NiPointer< TESObjectREFR > > mobilePersistentRefs
Definition: TESWorldSpace.h:191
bool SetFormEditorID(const char *a_str) override
stl::enumeration< Flag, std::uint8_t > flags
Definition: TESWorldSpace.h:186
bool IsParentForm() override
float defaultLandHeight
Definition: TESWorldSpace.h:215
std::uint64_t unk180
Definition: TESWorldSpace.h:206
float distantLODMult
Definition: TESWorldSpace.h:217
BSTHashMap< UnkKey, UnkValue > unk2E8
Definition: TESWorldSpace.h:225
std::int8_t * maxHeightData
Definition: TESWorldSpace.h:229
float lodWaterHeight
Definition: TESWorldSpace.h:204
bool LoadPartial(TESFile *a_mod) override
BGSEncounterZone * encounterZone
Definition: TESWorldSpace.h:219
~TESWorldSpace() override
BSTHashMap< std::uint32_t, BSTArray< NiPointer< TESObjectREFR > > > fixedPersistentRefMap
Definition: TESWorldSpace.h:190
TESWaterForm * lodWater
Definition: TESWorldSpace.h:203
BGSLocation * location
Definition: TESWorldSpace.h:220
float northRotation
Definition: TESWorldSpace.h:227
stl::enumeration< ParentUseFlag, std::uint16_t > parentUseFlags
Definition: TESWorldSpace.h:188
std::uint32_t pad17C
Definition: TESWorldSpace.h:205
static constexpr auto RTTI
Definition: TESWorldSpace.h:118
std::uint32_t pad34C
Definition: TESWorldSpace.h:228
void ClearData() override
bool Load(TESFile *a_mod) override
void InitializeData() override
void InitItemImpl() override
std::uint64_t unk2E0
Definition: TESWorldSpace.h:224
TESClimate * climate
Definition: TESWorldSpace.h:185
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_TESWorldSpace
Definition: Offsets_RTTI.h:6094
FormType
Definition: FormTypes.h:139
std::uint32_t operator()(CellID a_key) const noexcept
Definition: TESWorldSpace.h:92
Definition: TESWorldSpace.h:54
friend constexpr bool operator==(const CellID &a_lhs, const CellID &a_rhs) noexcept
Definition: TESWorldSpace.h:65
constexpr std::int16_t & operator[](std::size_t a_idx) noexcept
Definition: TESWorldSpace.h:70
std::int16_t x
Definition: TESWorldSpace.h:84
constexpr const std::int16_t & operator[](std::size_t a_idx) const noexcept
Definition: TESWorldSpace.h:76
constexpr CellID() noexcept
Definition: TESWorldSpace.h:56
std::int16_t y
Definition: TESWorldSpace.h:83
constexpr CellID(std::int16_t a_y, std::int16_t a_x) noexcept
Definition: TESWorldSpace.h:60
Definition: TESWorldSpace.h:146
RecordFlag
Definition: TESWorldSpace.h:148
@ kDeleted
Definition: TESWorldSpace.h:149
@ kIgnored
Definition: TESWorldSpace.h:150
@ kCantWait
Definition: TESWorldSpace.h:151
Definition: TESWorldSpace.h:156
std::int16_t x
Definition: TESWorldSpace.h:159
std::int16_t y
Definition: TESWorldSpace.h:160
Definition: TESWorldSpace.h:24
float minHeight
Definition: TESWorldSpace.h:25
float maxHeight
Definition: TESWorldSpace.h:26
float initialPitch
Definition: TESWorldSpace.h:27
Definition: TESWorldSpace.h:21
std::int16_t nwCellX
Definition: TESWorldSpace.h:34
std::uint32_t usableWidth
Definition: TESWorldSpace.h:32
std::int16_t seCellX
Definition: TESWorldSpace.h:36
CameraData cameraData
Definition: TESWorldSpace.h:38
std::uint32_t usableHeight
Definition: TESWorldSpace.h:33
std::int16_t seCellY
Definition: TESWorldSpace.h:37
std::int16_t nwCellY
Definition: TESWorldSpace.h:35
Definition: TESWorldSpace.h:43
float mapOffsetZ
Definition: TESWorldSpace.h:49
float mapOffsetX
Definition: TESWorldSpace.h:47
float mapOffsetY
Definition: TESWorldSpace.h:48
float mapScale
Definition: TESWorldSpace.h:46