Path: blob/main/RSDKv4/ModAPI.hpp
817 views
#ifndef MOD_API_H1#define MOD_API_H23#define PLAYER_COUNT (0x10)45extern char playerNames[PLAYER_COUNT][0x20];6extern byte playerCount;78#if RETRO_USE_MOD_LOADER9#include <string>10#include <map>11#include <unordered_map>12#include <tinyxml2.h>1314struct ModInfo {15std::string name;16std::string desc;17std::string author;18std::string version;19std::map<std::string, std::string> fileMap;20std::string folder;21bool useScripts;22bool skipStartMenu;23int disableFocusPause;24bool redirectSave;25std::string savePath;26bool forceSonic1;27bool active;28};2930extern std::vector<ModInfo> modList;31extern int activeMod;3233extern char modsPath[0x100];3435extern bool redirectSave;3637extern char modTypeNames[OBJECT_COUNT][0x40];38extern char modScriptPaths[OBJECT_COUNT][0x40];39extern byte modScriptFlags[OBJECT_COUNT];40extern byte modObjCount;4142inline void SetActiveMod(int id) { activeMod = id; }4344void InitMods();45bool LoadMod(ModInfo *info, std::string modsPath, std::string folder, bool active);46void ScanModFolder(ModInfo *info);47void SaveMods();4849void OpenModMenu();5051void RefreshEngine();52void GetModCount();53void GetModName(int *textMenu, int *highlight, uint *id, int *unused);54void GetModDescription(int *textMenu, int *highlight, uint *id, int *unused);55void GetModAuthor(int *textMenu, int *highlight, uint *id, int *unused);56void GetModVersion(int *textMenu, int *highlight, uint *id, int *unused);57void GetModActive(uint *id, int *unused);58void SetModActive(uint *id, int *active);59void MoveMod(uint *id, int *up);6061#endif6263#if RETRO_USE_MOD_LOADER || !RETRO_USE_ORIGINAL_CODE64extern char savePath[0x100];65int GetSceneID(byte listID, const char *sceneName);66#endif6768#endif6970