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,41 @@
#pragma once
#include "RE/B/BSResourceStreamParser.h"
#include "RE/B/BSStreamParser.h"
#include "RE/B/BSTranslator.h"
#include "RE/S/Setting.h"
#include "Scaleform/G/GFx_Translator.h"
namespace RE
{
class __declspec(novtable) BSScaleformTranslator :
public Scaleform::GFx::Translator
{
public:
void AddTranslations(BSStreamParser<wchar_t>* a_parser)
{
using func_t = void (*)(BSScaleformTranslator*, BSStreamParser<wchar_t>*);
static REL::Relocation<func_t> func{ ID::BSScaleformTranslator::AddTranslations };
func(this, a_parser);
}
void AddTranslationsFile(const char* a_file)
{
BSResourceStreamParser parserResource(a_file);
BSStreamParser<wchar_t> parser(&parserResource);
AddTranslations(&parser);
}
void AddTranslationsMod(const char* a_name)
{
const auto setting = GetINISetting("sLanguage:General");
const auto language = setting ? setting->GetString() : "EN";
const auto path = std::format("Interface\\Translations\\{}_{}.txt", a_name, language);
AddTranslationsFile(path.c_str());
}
// members
BSTranslator translator; //20
};
static_assert(sizeof(BSScaleformTranslator) == 0x50);
}