mirror of
https://github.com/zeldaret/ss
synced 2026-05-26 15:45:19 -04:00
23 lines
659 B
C++
23 lines
659 B
C++
#pragma once
|
|
|
|
#include "types.h"
|
|
|
|
struct UnkFlagDefinition {
|
|
u8 mIndex;
|
|
u8 mShiftMask;
|
|
};
|
|
|
|
class UnkFlagStuff {
|
|
u16 mDefinitionsCount;
|
|
UnkFlagDefinition* mpDefinitions;
|
|
public:
|
|
u16 calculateMask(s32 shift);
|
|
void doNothing(u32 unused);
|
|
UnkFlagStuff(u16 count, UnkFlagDefinition* definitions);
|
|
void prepareIndexShiftMask(u16 counterIdx, u32 flagCount, u16* pIndex, u8* pShift, u16* pMask);
|
|
u16 maskForIdx(u16 index);
|
|
u32 getCounterOrFlag(u16 counterIdx, u16* pData, u32 flagCount);
|
|
void setCounterOrFlag(u16 counterIdx, u16* pData, u32 flagCount, u32 value);
|
|
u32 checkFlagValid(u16 counterIdx, u32 flagCount);
|
|
};
|