mirror of
https://github.com/Jacobwasbeast/LegacyWeaveLoader.git
synced 2026-05-24 22:54:32 +00:00
- Inject items before Original_CreativeStaticCtor so TabSpec constructors include mod items when calculating m_staticItems and m_pages - Add UpdateTabPageCounts() to recalculate TabSpec page counts after staticCtor as safety measure (handles different binary layouts) - Resolve specs symbol for TabSpec array access - Add diagnostic logging for ItemInstance vtable, shared_ptr, vector sizes
29 lines
594 B
C++
29 lines
594 B
C++
#pragma once
|
|
#include <vector>
|
|
|
|
class SymbolResolver;
|
|
|
|
struct PendingCreativeItem
|
|
{
|
|
int itemId;
|
|
int count;
|
|
int auxValue;
|
|
int groupIndex;
|
|
};
|
|
|
|
namespace CreativeInventory
|
|
{
|
|
void AddPending(int itemId, int count, int auxValue, int groupIndex);
|
|
bool ResolveSymbols(SymbolResolver& resolver);
|
|
void InjectItems();
|
|
void UpdateTabPageCounts();
|
|
|
|
extern void* pCategoryGroups;
|
|
extern void* pItemInstanceCtor;
|
|
extern void* pSharedPtrCtor;
|
|
extern void* pVectorPushBack;
|
|
extern void* pSpecs;
|
|
|
|
extern std::vector<PendingCreativeItem> s_pendingItems;
|
|
}
|