25 namespace BGSWaterCollisionManager
27 class BGSWaterUpdateI;
173 static_assert(
sizeof(
CellData) == 0x8);
247#ifndef SKYRIM_SUPPORT_AE
Definition BGSEncounterZone.h:43
Definition BGSLightingTemplate.h:11
Definition BGSLocation.h:68
Definition TESObjectCELL.h:37
BSBitField * visData
Definition TESObjectCELL.h:40
Definition BSBitField.h:15
Definition BSPortalGraph.h:18
Definition BSTArray.h:378
Definition BSTHashMap.h:21
Definition BSTempEffectParticle.h:19
Definition TESObjectCELL.h:71
BSTArray< BSTSmartPointer< NavMesh > > navMeshes
Definition TESObjectCELL.h:74
Definition NiSmartPointer.h:9
Definition TESFaction.h:120
Definition TESFullName.h:9
Definition TESObjectCELL.h:115
bool BelongsInGroup(FORM *a_form, bool a_allowParentGroups, bool a_currentOnly) override
BGSLightingTemplate * lightingTemplate
Definition TESObjectCELL.h:244
bool IsExteriorCell() const
bool SetFormEditorID(const char *a_str) override
bool Load(TESFile *a_mod) override
void SetFogColor(Color a_near, Color a_far)
BGSLocation * GetLocation() const
CellData cellData
Definition TESObjectCELL.h:231
void SetOwner(TESForm *a_owner)
TESWorldSpace * worldSpace
Definition TESObjectCELL.h:242
EXTERIOR_DATA * GetCoordinates()
BSSpinLock grassCreateLock
Definition TESObjectCELL.h:222
TESForm * unk0B0
Definition TESObjectCELL.h:236
INTERIOR_DATA * GetLighting()
bool cellDetached
Definition TESObjectCELL.h:228
void LoadGame(BGSLoadFormBuffer *a_buf) override
void SetFogPower(float a_power)
void ForEachReferenceInRange(const NiPoint3 &a_origin, float a_radius, std::function< BSContainer::ForEachResult(TESObjectREFR *)> a_callback) const
void SetAltered(bool a_set) override
std::uint8_t pad047
Definition TESObjectCELL.h:229
bool IsFormTypeChild(FormType a_type) override
const char * GetFormEditorID() const override
void SetHandChanged(bool a_changed)
bool IsParentForm() override
bool IsInteriorCell() const
CellState
Definition TESObjectCELL.h:137
void InitItemImpl() override
std::uint64_t unk138
Definition TESObjectCELL.h:245
NavMeshArray * navMeshes
Definition TESObjectCELL.h:234
BSTSet< NiPointer< TESObjectREFR > > references
Definition TESObjectCELL.h:235
BSSpinLock grassTaskLock
Definition TESObjectCELL.h:223
void ClearData() override
float GetExteriorWaterHeight() const
BSSpinLock spinLock
Definition TESObjectCELL.h:241
TESRegionList * GetRegionList(bool a_createIfMissing)
void SetActorOwner(TESNPC *a_owner)
bool GetWaterHeight(const NiPoint3 &a_pos, float &a_waterHeight)
Flag
Definition TESObjectCELL.h:122
LOADED_CELL_DATA * loadedData
Definition TESObjectCELL.h:243
static constexpr auto RTTI
Definition TESObjectCELL.h:117
TESFaction * GetFactionOwner()
BSTArray< void * > unk0D0
Definition TESObjectCELL.h:238
static constexpr auto FORMTYPE
Definition TESObjectCELL.h:119
REX::EnumSet< CellState, std::uint8_t > cellState
Definition TESObjectCELL.h:226
void ForEachReference(std::function< BSContainer::ForEachResult(TESObjectREFR *)> a_callback) const
std::uint16_t cellGameFlags
Definition TESObjectCELL.h:225
void GetFormDetailedString(char *a_buf, std::uint32_t a_bufLen) override
void CreateGroupData(FORM *a_form, FORM_GROUP *a_group) override
~TESObjectCELL() override
void Revert(BGSLoadFormBuffer *a_buf) override
bhkWorld * GetbhkWorld() const
void SaveGame(BGSSaveFormBuffer *a_buf) override
REX::EnumSet< Flag, std::uint16_t > cellFlags
Definition TESObjectCELL.h:224
void SetFactionOwner(TESFaction *a_owner)
bool autoWaterLoaded
Definition TESObjectCELL.h:227
BSTArray< TESObjectREFR * > objectList
Definition TESObjectCELL.h:237
void SetPublic(bool a_public)
float waterHeight
Definition TESObjectCELL.h:233
bool FindInFileFast(TESFile *a_mod) override
void SetFogPlanes(float a_near, float a_far)
TESObjectLAND * cellLand
Definition TESObjectCELL.h:232
BSTArray< BGSWaterCollisionManager::BGSWaterUpdateI * > waterObjects
Definition TESObjectCELL.h:239
TESForm * CreateDuplicateForm(bool a_createEditorID, void *a_arg2) override
static constexpr auto VTABLE
Definition TESObjectCELL.h:118
bool UsesSkyLighting() const
BSTArray< void * > unk100
Definition TESObjectCELL.h:240
ExtraDataList extraList
Definition TESObjectCELL.h:230
Definition TESObjectLAND.h:46
Definition TESObjectREFR.h:114
Definition TESRegionList.h:10
Definition TESWorldSpace.h:118
ForEachResult
Definition BSContainer.h:6
Definition AbsorbEffect.h:6
constexpr REL::ID RTTI_TESObjectCELL(static_cast< std::uint64_t >(513892))
constexpr std::array< REL::ID, 2 > VTABLE_TESObjectCELL
Definition Offsets_VTABLE.h:12861
FormType
Definition FormTypes.h:139
Definition TESObjectCELL.h:45
std::int32_t cellY
Definition TESObjectCELL.h:58
BGSTerrainVisibilityData * lodVisData
Definition TESObjectCELL.h:60
std::uint32_t pad24
Definition TESObjectCELL.h:66
std::int32_t cellX
Definition TESObjectCELL.h:57
LandHideFlag
Definition TESObjectCELL.h:48
char * maxHeightData
Definition TESObjectCELL.h:59
float worldY
Definition TESObjectCELL.h:62
std::uint16_t pad22
Definition TESObjectCELL.h:65
REX::EnumSet< LandHideFlag, std::uint8_t > landHideFlags
Definition TESObjectCELL.h:63
std::uint8_t pad21
Definition TESObjectCELL.h:64
float worldX
Definition TESObjectCELL.h:61
Definition InteriorData.h:9
Definition TESObjectCELL.h:79
BSTArray< ObjectRefHandle > unk040
Definition TESObjectCELL.h:90
NiTMap< ObjectRefHandle, NiNode * > emittanceLightRefMap
Definition TESObjectCELL.h:93
volatile std::int32_t queuedDistantRefCount
Definition TESObjectCELL.h:106
NiPointer< NiNode > multiBoundNode
Definition TESObjectCELL.h:86
NiTMap< TESForm *, ObjectRefHandle > emittanceSourceRefMap
Definition TESObjectCELL.h:92
BSTArray< ObjectRefHandle > decalRefs
Definition TESObjectCELL.h:100
NiPointer< NiNode > lightMarkerNode
Definition TESObjectCELL.h:84
std::uint64_t unk028
Definition TESObjectCELL.h:87
std::int32_t unk178
Definition TESObjectCELL.h:107
BSSimpleList< ObjectRefHandle > unk100
Definition TESObjectCELL.h:97
volatile std::int32_t queuedRefCount
Definition TESObjectCELL.h:105
NiTMap< ObjectRefHandle, NiPointer< BSMultiBoundNode > > multiboundRefMap
Definition TESObjectCELL.h:94
volatile std::int32_t criticalQueuedRefCount
Definition TESObjectCELL.h:104
std::uint64_t unk038
Definition TESObjectCELL.h:89
std::uint64_t unk030
Definition TESObjectCELL.h:88
bool refsFullyLoaded
Definition TESObjectCELL.h:108
BSTArray< void * > unk118
Definition TESObjectCELL.h:99
NiTMap< BSMultiBoundNode *, ObjectRefHandle > refMultiboundMap
Definition TESObjectCELL.h:95
NiPointer< BSPortalGraph > portalGraph
Definition TESObjectCELL.h:82
NiPointer< NiNode > cell3D
Definition TESObjectCELL.h:83
BSTArray< ObjectRefHandle > skyActors
Definition TESObjectCELL.h:101
BGSEncounterZone * encounterZone
Definition TESObjectCELL.h:102
NiPointer< NiNode > soundMarkerNode
Definition TESObjectCELL.h:85
BSSimpleList< ObjectRefHandle > activatingRefs
Definition TESObjectCELL.h:96
BSTArray< ObjectRefHandle > flickeringLights
Definition TESObjectCELL.h:91
bool decalsQueued
Definition TESObjectCELL.h:103
std::uint64_t unk110
Definition TESObjectCELL.h:98
Definition TESObjectCELL.h:142
ChangeFlag
Definition TESObjectCELL.h:144
@ kFullName
Definition TESObjectCELL.h:146
@ kExteriorShort
Definition TESObjectCELL.h:148
@ kSeendData
Definition TESObjectCELL.h:151
@ kFlags
Definition TESObjectCELL.h:145
@ kDetachTime
Definition TESObjectCELL.h:150
@ kExteriorChar
Definition TESObjectCELL.h:149
@ kOwnership
Definition TESObjectCELL.h:147
Definition TESObjectCELL.h:156
RecordFlag
Definition TESObjectCELL.h:158
@ kIgnored
Definition TESObjectCELL.h:161
@ kOffLimits
Definition TESObjectCELL.h:162
@ kPersistent
Definition TESObjectCELL.h:160
@ kCompressed
Definition TESObjectCELL.h:163
@ kDeleted
Definition TESObjectCELL.h:159
@ kCantWait
Definition TESObjectCELL.h:164
Definition TESObjectCELL.h:169
EXTERIOR_DATA * exterior
Definition TESObjectCELL.h:170
INTERIOR_DATA * interior
Definition TESObjectCELL.h:171