docs: add plugin setup guide

This commit is contained in:
2026-05-30 18:33:24 +12:00
parent f3db41c402
commit b61043a3fe
1776 changed files with 122386 additions and 2 deletions
@@ -0,0 +1,45 @@
#pragma once
#include "RE/B/BSFixedString.h"
#include "RE/B/BSTObjectArena.h"
#include "RE/B/BSTTuple.h"
namespace RE
{
class IAnimationGraphManagerHolder;
namespace BGSAnimationSystemUtils
{
class ActiveSyncInfo
{
public:
// members
BSTObjectArena<BSTTuple<BSFixedString, float>> otherSyncInfo; // 00
float currentAnimTime; // 40
float animSpeedMult; // 44
float totalAnimTime; // 48
};
static_assert(sizeof(ActiveSyncInfo) == 0x50);
inline bool GetActiveSyncInfo(const IAnimationGraphManagerHolder* a_graphHolder, ActiveSyncInfo& a_infoOut)
{
using func_t = decltype(&GetActiveSyncInfo);
static REL::Relocation<func_t> func{ ID::BGSAnimationSystemUtils::GetActiveSyncInfo };
return func(a_graphHolder, a_infoOut);
}
inline bool InitializeActorInstant(Actor& a_actor, bool a_update3D)
{
using func_t = decltype(&InitializeActorInstant);
static REL::Relocation<func_t> func{ ID::BGSAnimationSystemUtils::InitializeActorInstant };
return func(a_actor, a_update3D);
}
inline bool IsActiveGraphInTransition(const TESObjectREFR* a_refr)
{
using func_t = decltype(&IsActiveGraphInTransition);
static REL::Relocation<func_t> func{ ID::BGSAnimationSystemUtils::IsActiveGraphInTransition };
return func(a_refr);
}
}
}