#ifndef RAGNAROK_SOURCE_CONTENTS_JOBCODEFORITEM_H #define RAGNAROK_SOURCE_CONTENTS_JOBCODEFORITEM_H #include "Utility/Singleton.h" #include #include class CJobCodeForItem : public Singleton { public: /* 0004 */ std::map> m_jobGroups; /* 000C */ std::map> m_jobCodes; template void AddJobCodeFromGroups(unsigned long code, Groups... groups); template void AddJobCode(unsigned long code, Jobs... jobs); template void AddJobGroup(unsigned int group, Jobs... jobs); void InitJobGroups(); void InitJobCodes(); void Init(); bool IsJobAllowed(int job, unsigned long code); }; #if defined(_WIN32) && !defined(_WIN64) static_assert(sizeof(CJobCodeForItem) == 0x14); #endif #endif