Files
Commonwealth-Online-Public/plugin/lib/commonlibf4/include/RE/C/ContainerMenu.h
T
2026-05-30 18:33:24 +12:00

42 lines
2.4 KiB
C++

#pragma once
#include "RE/C/ContainerMenuBase.h"
namespace RE
{
class __declspec(novtable) ContainerMenu :
public ContainerMenuBase // 000
{
public:
static constexpr auto RTTI{ RTTI::ContainerMenu };
static constexpr auto VTABLE{ VTABLE::ContainerMenu };
static constexpr auto MENU_NAME{ "ContainerMenu"sv };
// override
virtual UI_MESSAGE_RESULTS ProcessMessage(UIMessage& a_message) override; // 03
virtual void DoItemTransfer(std::uint32_t a_itemIndex, std::uint32_t a_count, bool a_fromContainer) override; // 15
virtual bool GetCanEquipItem(std::uint32_t a_itemIndex, bool a_inContainer) override; // 17
virtual bool GetIsItemEquipped(std::uint32_t a_itemIndex, bool a_inContainer) override; // 18
virtual void ToggleItemEquipped(std::uint32_t a_itemIndex, bool a_inContainer) override; // 19
virtual void PopulateMenuObj(ObjectRefHandle a_inventoryRef, const InventoryUserUIInterfaceEntry& a_entry, Scaleform::GFx::Value& a_menuObj) override; // 22
virtual void UpdateItemPickpocketInfo(std::int32_t a_index, bool a_inContainer, std::int32_t a_count) override; // 25
virtual void UpdateList(bool a_inContainer) override; // 26
void TakeAllItems()
{
using func_t = decltype(&ContainerMenu::TakeAllItems);
static REL::Relocation<func_t> func{ ID::ContainerMenu::TakeAllItems };
return func(this);
}
// members
std::unique_ptr<BSGFxShaderFXTarget> pickpocketInfo_mc; // 430
std::uint32_t valueStolenFromContainer; // 438
bool containerAccessed; // 43C
bool addedTempItems; // 43D
bool plantedExplosiveWeapon; // 43E
bool containerIsAnimatingOpen; // 43F
};
static_assert(sizeof(ContainerMenu) == 0x440);
}