docs: add plugin setup guide
This commit is contained in:
@@ -0,0 +1,72 @@
|
||||
#pragma once
|
||||
|
||||
#include "RE/D/DifficultyLevel.h"
|
||||
#include "RE/L/LOCK_LEVEL.h"
|
||||
|
||||
namespace RE
|
||||
{
|
||||
namespace GamePlayFormulas
|
||||
{
|
||||
enum class ExperienceActivity : std::int32_t
|
||||
{
|
||||
kKillNPC = 0x0,
|
||||
kHackComputer = 0x1,
|
||||
};
|
||||
|
||||
inline bool CanHackGateCheck(LOCK_LEVEL a_lockLevel)
|
||||
{
|
||||
using func_t = decltype(&GamePlayFormulas::CanHackGateCheck);
|
||||
static REL::Relocation<func_t> func{ ID::GamePlayFormulas::CanHackGateCheck };
|
||||
return func(a_lockLevel);
|
||||
}
|
||||
|
||||
inline bool CanPickLockGateCheck(LOCK_LEVEL a_lockLevel)
|
||||
{
|
||||
using func_t = decltype(&GamePlayFormulas::CanPickLockGateCheck);
|
||||
static REL::Relocation<func_t> func{ ID::GamePlayFormulas::CanPickLockGateCheck };
|
||||
return func(a_lockLevel);
|
||||
}
|
||||
|
||||
inline float GetExperienceReward(ExperienceActivity a_activity, DifficultyLevel a_difficulty, float a_xpBase)
|
||||
{
|
||||
using func_t = decltype(&GamePlayFormulas::GetExperienceReward);
|
||||
static REL::Relocation<func_t> func{ ID::GamePlayFormulas::GetExperienceReward };
|
||||
return func(a_activity, a_difficulty, a_xpBase);
|
||||
}
|
||||
|
||||
inline float GetLockXPReward(LOCK_LEVEL a_lockLevel)
|
||||
{
|
||||
using func_t = decltype(&GamePlayFormulas::GetLockXPReward);
|
||||
static REL::Relocation<func_t> func{ ID::GamePlayFormulas::GetLockXPReward };
|
||||
return func(a_lockLevel);
|
||||
}
|
||||
|
||||
inline float CalculateItemHealthDamageBonus(float a_itemHealth)
|
||||
{
|
||||
using func_t = decltype(&GamePlayFormulas::CalculateItemHealthDamageBonus);
|
||||
static REL::Relocation<func_t> func{ ID::GamePlayFormulas::CalculateItemHealthDamageBonus };
|
||||
return func(a_itemHealth);
|
||||
}
|
||||
|
||||
inline float CalcSprintingActionPoints(float a_equippedWeight, float a_elapsedTime, float a_endurance)
|
||||
{
|
||||
using func_t = decltype(&GamePlayFormulas::CalcSprintingActionPoints);
|
||||
static REL::Relocation<func_t> func{ ID::GamePlayFormulas::CalcSpringingActionPoints };
|
||||
return func(a_equippedWeight, a_elapsedTime, a_endurance);
|
||||
}
|
||||
|
||||
inline float GetHackingWordCount(float a_playerIntelligence)
|
||||
{
|
||||
using func_t = decltype(&GamePlayFormulas::GetHackingWordCount);
|
||||
static REL::Relocation<func_t> func{ ID::GamePlayFormulas::GetHackingWordCount };
|
||||
return func(a_playerIntelligence);
|
||||
}
|
||||
|
||||
inline float GetForceLockChance(float a_playerPerception, std::int32_t a_lockLevel)
|
||||
{
|
||||
using func_t = decltype(&GamePlayFormulas::GetForceLockChance);
|
||||
static REL::Relocation<func_t> func{ ID::GamePlayFormulas::GetForceLockChance };
|
||||
return func(a_playerPerception, a_lockLevel);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user