Skip to content

Commit

Permalink
feat: miscX11 (#287)
Browse files Browse the repository at this point in the history
- The X Window System (X11, or simply X) is a windowing system for
bitmap displays, common on Unix-like operating systems.
  • Loading branch information
qudix authored Oct 11, 2024
1 parent a9a8957 commit a30dfef
Show file tree
Hide file tree
Showing 26 changed files with 307 additions and 148 deletions.
8 changes: 0 additions & 8 deletions include/RE/A/Actor.h
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@
namespace RE
{
class AIProcess;
class BGSKeyword;
class BGSPerk;
class CombatController;
class CombatGroup;
Expand Down Expand Up @@ -360,13 +359,6 @@ namespace RE
func(this);
}

[[nodiscard]] bool WornHasKeyword(BGSKeyword* a_keyword)
{
using func_t = decltype(&Actor::WornHasKeyword);
static REL::Relocation<func_t> func{ ID::Actor::WornHasKeyword };
return func(this, a_keyword);
}

// members
REX::EnumSet<BOOL_BITS, std::uint32_t> boolBits; // 200
float unk204; // 204
Expand Down
2 changes: 1 addition & 1 deletion include/RE/B/BGSDefaultObjectManager.h
Original file line number Diff line number Diff line change
Expand Up @@ -419,7 +419,7 @@ namespace RE
[[nodiscard]] static BGSDefaultObjectManager* GetSingleton()
{
using func_t = decltype(&BGSDefaultObjectManager::GetSingleton);
static REL::Relocation<func_t> func{ REL::ID(82283) };
static REL::Relocation<func_t> func{ ID::BGSDefaultObjectManager::GetSingleton };
return func();
}

Expand Down
2 changes: 1 addition & 1 deletion include/RE/B/BGSEntryPoint.h
Original file line number Diff line number Diff line change
Expand Up @@ -267,7 +267,7 @@ namespace RE
inline void HandleEntryPoint(ENTRY_POINT a_entryPoint, Actor* a_perkOwner, Args... a_args)
{
using func_t = decltype(&BGSEntryPoint::HandleEntryPoint<Args...>);
static REL::Relocation<func_t> func{ REL::ID(110912) };
static REL::Relocation<func_t> func{ ID::BGSEntryPoint::HandleEntryPoint };
return func(a_entryPoint, a_perkOwner, a_args...);
}
}
Expand Down
2 changes: 1 addition & 1 deletion include/RE/B/BGSInventoryInterface.h
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ namespace RE

[[nodiscard]] static BGSInventoryInterface* GetSingleton()
{
static REL::Relocation<BGSInventoryInterface**> singleton{ ID::BGSInventoryInterface::singleton };
static REL::Relocation<BGSInventoryInterface**> singleton{ ID::BGSInventoryInterface::Singleton };
return *singleton;
}

Expand Down
25 changes: 21 additions & 4 deletions include/RE/B/BGSMod.h
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,15 @@ namespace RE

namespace RE::BGSMod
{
class Container
{
public:
SF_RTTI(BGSMod__Container);
};

namespace Attachment
{
class Mod :
class __declspec(novtable) Mod :
public TESForm, // 00
public TESFullName, // 30
public TESDescription, // 40
Expand All @@ -39,7 +45,7 @@ namespace RE::BGSMod

struct Include
{
RE::BGSMod::Attachment::Mod* mod;
BGSMod::Attachment::Mod* mod;
std::uint8_t level;
REX::EnumSet<IncludesFlag, std::uint8_t> flags;
};
Expand Down Expand Up @@ -74,7 +80,18 @@ namespace RE::BGSMod

namespace Template
{
class Items : public BaseFormComponent
class __declspec(novtable) Item :
public TESFullName, // 00
public BGSMod::Container // 10
{
public:
SF_RTTI_VTABLE(BGSMod__Template__Item);

~Item() override; // 00
};

class __declspec(novtable) Items :
public BaseFormComponent // 00
{
public:
SF_RTTI_VTABLE(BGSMod__Template__Items);
Expand All @@ -91,7 +108,7 @@ namespace RE::BGSMod
virtual void Unk_0D(); // 0D

// members
BSTArray<void*> unk08; // 08
BSTArray<Item*> items; // 08
BSFixedString unk18; // 18
};
static_assert(sizeof(Items) == 0x20);
Expand Down
4 changes: 2 additions & 2 deletions include/RE/B/BGSSaveLoadGame.h
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,14 @@ namespace RE
void SaveGame(void* a_unk1, void* a_unk2, const char* a_name)
{
using func_t = decltype(&BGSSaveLoadGame::SaveGame);
static REL::Relocation<func_t> func{ REL::ID(147515) };
static REL::Relocation<func_t> func{ ID::BGSSaveLoadGame::SaveGame };
return func(this, a_unk1, a_unk2, a_name);
}

bool LoadGame(const char* a_name, void* a_unk1, void* a_unk2)
{
using func_t = decltype(&BGSSaveLoadGame::LoadGame);
static REL::Relocation<func_t> func{ REL::ID(147564) };
static REL::Relocation<func_t> func{ ID::BGSSaveLoadGame::LoadGame };
return func(this, a_name, a_unk1, a_unk2);
}
};
Expand Down
4 changes: 2 additions & 2 deletions include/RE/B/BGSSaveLoadManager.h
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,14 @@ namespace RE
public:
static BGSSaveLoadManager* GetSingleton()
{
static REL::Relocation<BGSSaveLoadManager**> singleton{ REL::ID(880997) };
static REL::Relocation<BGSSaveLoadManager**> singleton{ ID::BGSSaveLoadManager::Singleton };
return *singleton;
}

bool DeleteSaveFile(const char* a_filename, void* a_unk1, bool a_unk2)
{
using func_t = decltype(&BGSSaveLoadManager::DeleteSaveFile);
static REL::Relocation<func_t> func{ REL::ID(147844) };
static REL::Relocation<func_t> func{ ID::BGSSaveLoadManager::DeleteSaveFile };
return func(this, a_filename, a_unk1, a_unk2);
}
};
Expand Down
2 changes: 1 addition & 1 deletion include/RE/B/BSStringPool.h
Original file line number Diff line number Diff line change
Expand Up @@ -111,7 +111,7 @@ namespace RE
inline void GetEntry<wchar_t>(BSStringPool::Entry*& a_result, const wchar_t* a_string, bool a_caseSensitive)
{
using func_t = decltype(&GetEntry<wchar_t>);
static REL::Relocation<func_t> func{ ID::BSStringPool::GetEntry_wchar_t_ };
static REL::Relocation<func_t> func{ ID::BSStringPool::GetEntry_wchar_t_ }; // TODO: ID changed
return func(a_result, a_string, a_caseSensitive);
}
}
4 changes: 2 additions & 2 deletions include/RE/G/GameVM.h
Original file line number Diff line number Diff line change
Expand Up @@ -162,7 +162,7 @@ namespace RE

[[nodiscard]] static GameVM* GetSingleton()
{
static REL::Relocation<GameVM**> singleton{ ID::GameVM::singleton };
static REL::Relocation<GameVM**> singleton{ ID::GameVM::Singleton };
return *singleton;
}

Expand All @@ -174,7 +174,7 @@ namespace RE
static void BindEverythingToScript(BSScript::IVirtualMachine** a_vm)
{
using func_t = decltype(&BindEverythingToScript);
static REL::Relocation<func_t> func{ REL::ID(171438) };
static REL::Relocation<func_t> func{ ID::GameVM::BindEverythingToScript };
return func(a_vm);
}

Expand Down
Loading

0 comments on commit a30dfef

Please sign in to comment.