CommonLibSSE (Parapets fork)
GridCellArray.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/G/GridArray.h"
4 #include "RE/N/NiPoint3.h"
5 
6 namespace RE
7 {
8  class TESObjectCELL;
9 
10  class GridCellArray : public GridArray
11  {
12  public:
13  inline static constexpr auto RTTI = RTTI_GridCellArray;
14 
15  ~GridCellArray() override; // 00
16 
17  // override (GridArray)
18  void Unk_02(void) override; // 02
19  void Unk_03(void) override; // 03
20  void Unk_05(void) override; // 05
21  void Unk_06(void) override; // 06
22  void Unk_07(void) override; // 07
23  void Unk_08(void) override; // 08
24 
25  [[nodiscard]] TESObjectCELL* GetCell(std::uint32_t a_x, std::uint32_t a_y) const noexcept
26  {
27  return (a_x < length && a_y < length) ?
28  cells[(a_x * length) + a_y] :
29  nullptr;
30  };
31 
32  // members
33  TESObjectCELL** cells; // 18 - (memory allocated using 0x8 * numGrids * numGrids)
34  NiPoint3 unk20; // 20
35  bool unk2C; // 2C
36  };
37  static_assert(sizeof(GridCellArray) == 0x30);
38 };
Definition: GridArray.h:6
std::uint32_t length
Definition: GridArray.h:25
Definition: GridCellArray.h:11
void Unk_08(void) override
void Unk_02(void) override
NiPoint3 unk20
Definition: GridCellArray.h:34
void Unk_07(void) override
bool unk2C
Definition: GridCellArray.h:35
void Unk_06(void) override
void Unk_05(void) override
void Unk_03(void) override
~GridCellArray() override
TESObjectCELL * GetCell(std::uint32_t a_x, std::uint32_t a_y) const noexcept
Definition: GridCellArray.h:25
static constexpr auto RTTI
Definition: GridCellArray.h:13
TESObjectCELL ** cells
Definition: GridCellArray.h:30
Definition: NiPoint3.h:6
Definition: TESObjectCELL.h:102
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_GridCellArray
Definition: Offsets_RTTI.h:4872