CommonLibSSE NG
CombatManager.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/A/AITimeStamp.h"
4 #include "RE/A/AITimer.h"
5 #include "RE/B/BSAtomic.h"
6 #include "RE/B/BSTHashMap.h"
7 #include "RE/N/NiSmartPointer.h"
8 #include "RE/N/NiTArray.h"
9 
10 namespace RE
11 {
12  class CombatGroup;
13  class CombatThreat;
14 
16  {
18  mutable BSReadWriteLock lock; // 30
20  };
21  static_assert(sizeof(CombatThreatMap) == 0x40);
22 
24  {
25  public:
26  [[nodiscard]] static CombatManager* GetSingleton()
27  {
28  REL::Relocation<CombatManager**> singleton{ RELOCATION_ID(518706, 405246) };
29  return *singleton;
30  }
31 
32  // members
34  mutable BSReadWriteLock lock; // 18
35  std::uint64_t unk20; // 20
37  std::uint64_t unk30; // 30
38  std::uint64_t unk38; // 38
39  std::uint64_t unk40; // 40
40  float unk48; // 48
43  std::uint32_t combatCount; // 5C
44  std::uint32_t groupCount; // 60
45  std::uint32_t unk64; // 64
46  };
47  static_assert(sizeof(CombatManager) == 0x68);
48 }
#define RELOCATION_ID(a_se, a_ae)
Definition: PCH.h:724
Definition: Relocation.h:204
Definition: BSAtomic.h:71
Definition: BSTHashMap.h:21
Definition: CombatManager.h:24
std::uint32_t combatCount
Definition: CombatManager.h:43
BSReadWriteLock lock
Definition: CombatManager.h:34
std::uint32_t groupCount
Definition: CombatManager.h:44
std::uint64_t unk20
Definition: CombatManager.h:35
NiTPrimitiveArray< CombatGroup * > combatGroups
Definition: CombatManager.h:33
static CombatManager * GetSingleton()
Definition: CombatManager.h:26
std::uint64_t unk30
Definition: CombatManager.h:37
std::uint64_t unk40
Definition: CombatManager.h:39
AITimer musicStopTimer
Definition: CombatManager.h:41
std::uint32_t unk64
Definition: CombatManager.h:45
std::uint64_t unk38
Definition: CombatManager.h:38
float unk48
Definition: CombatManager.h:40
AITimer musicUpdateTimer
Definition: CombatManager.h:42
CombatThreatMap * combatThreatMap
Definition: CombatManager.h:36
Definition: NiTArray.h:136
Definition: AbsorbEffect.h:6
Definition: AITimeStamp.h:6
Definition: AITimer.h:6
Definition: CombatManager.h:16
BSReadWriteLock lock
Definition: CombatManager.h:18
BSTHashMap< std::uint32_t, NiPointer< CombatThreat > > threats
Definition: CombatManager.h:17
AITimeStamp lastThreatAddedTimeStamp
Definition: CombatManager.h:19