|
Cavestory Mod API
|
An interface for the 'PXMOD' file format. More...
#include <ModConfigResource.h>
Public Member Functions | |
| ModConfigResource () | |
| Constructor. | |
| ~ModConfigResource () | |
| Deconstructor. | |
| bool | CreateMod (const char *pModPath, bool bAutoScan=true, const char *pModTitle="My Mod", const char *pModAuthor="Me", PXMOD_VERSION_STRUCT pVersion=PXMOD_VERSION_STRUCT(), bool bUseDefaultAssets=false) |
| Create a mod out of a data path. More... | |
| bool | Load (const char *pModPath, bool bOnlyValidate=false, bool bForceRelease=false, bool bShowError=true) |
| Load a mod from a file on the disc. More... | |
| bool | Save (bool bRelease=false) |
| Save the mod. More... | |
| bool | CreateFromMod (const char *pModPath) |
| Create a pxmod file from external formats. More... | |
| void | Reset () |
| Clear & free all buffers. | |
| void | SetTitle (const char *title) |
| Set the title of the mod. More... | |
| void | SetAuthor (const char *author) |
| Set the author of the mod. More... | |
| void | SetVersion (const PXMOD_VERSION_STRUCT &pNewVersion) |
| Set the version of the mod. More... | |
| const char * | GetTitle () |
| Get the title of the mod. More... | |
| const char * | GetInternalName () |
| Get the mod's path name. More... | |
| const char * | GetAuthor () |
| Get the author of the mod. More... | |
| PXMOD_VERSION_STRUCT | GetVersion () |
| Get the version of the mod. More... | |
| int | AddBackground (const char *pFileName) |
| Add a background. More... | |
| bool | RemoveBackground (const char *pFileName) |
| Remove a background. More... | |
| int | FindBackground (const char *pFileName) |
| Find the index of a background. More... | |
| int | AddTileset (const char *pFileName) |
| Add a tileset. More... | |
| bool | RemoveTileset (const char *pFileName) |
| Remove a tileset. More... | |
| int | FindTileset (const char *pFileName) |
| Find the index of a tileset. More... | |
| int | AddSpritesheet (const char *pFileName) |
| Add a spritesheet. More... | |
| bool | RemoveSpritesheet (const char *pFileName) |
| Remove a spritesheet. More... | |
| int | FindSpritesheet (const char *pFileName) |
| Find the index of a spritesheet. More... | |
| int | AddStage (const char *pFileName, const char *pMapName, const char *pTileset, const char *pNpcSheet, const char *pBossSheet, const char *pBackground, PXMOD_BK_TYPE iBkType, PXMOD_BOSS_TYPE iBossType, unsigned int iInsertIndex=0xFFFFFFFF) |
| Add a stage. More... | |
| int | SetStage (int iIndex, const char *pFileName, const char *pMapName, const char *pTileset, const char *pNpcSheet, const char *pBossSheet, const char *pBackground, PXMOD_BK_TYPE iBkType, PXMOD_BOSS_TYPE iBossType) |
| Set a stage at an index. More... | |
| bool | RemoveStage (const char *pFileName) |
| Remove a stage. More... | |
| int | FindStage (const char *pFileName) |
| Find the index of a stage. More... | |
| int | AddArea (const char *pAreaName) |
| Add an area. More... | |
| bool | RemoveArea (const char *pAreaName) |
| Remove an area. More... | |
| int | FindArea (const char *pAreaName) |
| Find the index of an area. More... | |
| int | AddMusic (const char *pMusicName, PXMOD_MUSIC_TYPE eMusicType=PXMOD_MUSIC_TYPE::PXMOD_MUSIC_TYPE_INVALID) |
| Add music. More... | |
| bool | MoveMusic (const char *pMusicName, bool bMoveUp) |
| Move music around in the music list. More... | |
| bool | RemoveMusic (const char *pMusicName) |
| Remove music. More... | |
| int | FindMusic (const char *pMusicName) |
| Find the index of music. More... | |
| int | AddWeapon (const char *pWeaponName) |
| Add a weapon. More... | |
| bool | RemoveWeapon (const char *pWeaponName) |
| Remove a weapon. More... | |
| int | FindWeapon (const char *pWeaponName) |
| Find the index of a weapon. More... | |
| int | AddBullet (const char *pBulletNmae) |
| Add a bullet. More... | |
| bool | RemoveBullet (const char *pBulletName) |
| Remove a bullet. More... | |
| int | FindBullet (const char *pBulletName) |
| Find the index of a bullet. More... | |
| int | AddNPC (const char *pNpcName) |
| Add an NPC. More... | |
| bool | RemoveNPC (const char *pNpcName) |
| Remove an NPC. More... | |
| int | FindNPC (const char *pNpcName) |
| Find the index of an NPC. More... | |
| int | AddNpcAct (int iNpcIndex, int iActNo, const char *pActName, unsigned long long int iNodeFlags, unsigned long long int iTransmitNodeFlags) |
| Add an NPC act. More... | |
| bool | RemoveNpcAct (int iNpcIndex, int iActNo) |
| Remove an NPC act. More... | |
| void | DefaultWeapons () |
| Reset weapons for this mod to the default Cavestory weapons. | |
Static Public Member Functions | |
| static const PXMOD_NPC_STRUCT * | GetDefaultNpc (int iIndex) |
| Get the default NPC for slot iIndex. More... | |
| static const PXMOD_WEAPON_STRUCT * | GetDefaultWeapon (int iIndex) |
| Get the default weapon for slot iIndex. More... | |
| static const PXMOD_WEAPON_STRUCT * | GetDefaultTemplateWeapon (PXMOD_WEAPON_TYPE eType) |
| Get default weapon info for a template. More... | |
| static const PXMOD_BULLET_STRUCT * | GetDefaultBullet (int iIndex) |
| Get the default bullet for slot iIndex. More... | |
Public Attributes | |
| char | mModPath [260] |
| The path of the mod – This has no trailing slash, and should only contain forward slashes! ex: "H:/CaveStory/MyMod". | |
| PXMOD_HEADER_STRUCT | mHeader |
| The header for this mod. | |
| PXMOD_START_CHUNK | mStart |
| Game start chunk. | |
| PXMOD_TITLE_CHUNK | mTitle |
| Titlescreen intro chunk. | |
| PXMOD_BACKGROUND_CHUNK | mBackgrounds |
| Stores all the backgrounds. | |
| PXMOD_SPRITESHEET_CHUNK | mSpritesheets |
| Stores all the spritesheets. | |
| PXMOD_TILESET_CHUNK | mTilesets |
| Stores all the tilesets. | |
| PXMOD_STAGE_CHUNK | mStages |
| Stores all the stage information. | |
| PXMOD_AREA_CHUNK | mAreas |
| Stores all the map area information. More... | |
| PXMOD_MUSIC_CHUNK | mMusic |
| Stores all the music. | |
| PXMOD_WEAPON_CHUNK | mWeapons |
| Stores all the weapon information. | |
| PXMOD_BULLET_CHUNK | mBullets |
| Stores all the bullet information. | |
| PXMOD_NPC_CHUNK | mNpcs |
| Stores all the NPC information. | |
An interface for the 'PXMOD' file format.
Stores all assets for a mod.
| int ModConfigResource::AddArea | ( | const char * | pAreaName | ) |
Add an area.
| pAreaName | The name of the new area. |
| int ModConfigResource::AddBackground | ( | const char * | pFileName | ) |
Add a background.
| pFileName | The background's file name. ex: "Green" will be expanded to "{data path}/bkGreen.png". |
| int ModConfigResource::AddBullet | ( | const char * | pBulletNmae | ) |
Add a bullet.
| pBulletName | The name of the bullet. Not kept in release build. |
| int ModConfigResource::AddMusic | ( | const char * | pMusicName, |
| PXMOD_MUSIC_TYPE | eMusicType = PXMOD_MUSIC_TYPE::PXMOD_MUSIC_TYPE_INVALID |
||
| ) |
Add music.
| pMusicName | The name of the music to add. |
| pMusicType | The type of music we're adding. |
| int ModConfigResource::AddNPC | ( | const char * | pNpcName | ) |
Add an NPC.
| pNpcName | The name of the NPC. Not kept in release build. |
| int ModConfigResource::AddNpcAct | ( | int | iNpcIndex, |
| int | iActNo, | ||
| const char * | pActName, | ||
| unsigned long long int | iNodeFlags, | ||
| unsigned long long int | iTransmitNodeFlags | ||
| ) |
Add an NPC act.
| iNpcIndex | The index of the NPC. |
| iActNo | The act number. |
| pActName | The name of the act. |
| iNodeFlags | The node flags to use in this act. |
| iTransmitNodeFlags | The transmitnode flags to use in this act. |
| int ModConfigResource::AddSpritesheet | ( | const char * | pFileName | ) |
Add a spritesheet.
| pFileName | The spritesheet's file name. ex: "Press" will be expanded to "{data path}/Npc/NpcPress.png". |
| int ModConfigResource::AddStage | ( | const char * | pFileName, |
| const char * | pMapName, | ||
| const char * | pTileset, | ||
| const char * | pNpcSheet, | ||
| const char * | pBossSheet, | ||
| const char * | pBackground, | ||
| PXMOD_BK_TYPE | iBkType, | ||
| PXMOD_BOSS_TYPE | iBossType, | ||
| unsigned int | iInsertIndex = 0xFFFFFFFF |
||
| ) |
Add a stage.
| pFileName | The map's file name. ex: "Mimi" |
| pMapName | The actual string map name. |
| pTileset | The tileset to use for this stage. |
| pNpcSheet | The NPC spritesheet for this stage. |
| pBossSheet | The boss spritesheet for this stage. |
| iBkType | The background type for this stage. |
| iBossType | The boss type for this stage. |
| iInsertIndex | The index at which the stage should be inserted into the stage list. |
| int ModConfigResource::AddTileset | ( | const char * | pFileName | ) |
Add a tileset.
| pFileName | The tileset's file name. ex: "Cave" will be expanded to "{data path}/Stage/PrtCave.png". |
| int ModConfigResource::AddWeapon | ( | const char * | pWeaponName | ) |
Add a weapon.
| pWeaponName | The name of the weapon. |
| bool ModConfigResource::CreateFromMod | ( | const char * | pModPath | ) |
Create a pxmod file from external formats.
| bool ModConfigResource::CreateMod | ( | const char * | pModPath, |
| bool | bAutoScan = true, |
||
| const char * | pModTitle = "My Mod", |
||
| const char * | pModAuthor = "Me", |
||
| PXMOD_VERSION_STRUCT | pVersion = PXMOD_VERSION_STRUCT(), |
||
| bool | bUseDefaultAssets = false |
||
| ) |
Create a mod out of a data path.
| pModPath | The mod path |
| bAutoScan | Scan the mod path for assets |
| pModTitle | The title of the mod |
| pModAuthor | The author of the mod |
| pVersion | The version of the mod |
| bUseDefaultAssets | Use vanilla Cavestory assets |
| int ModConfigResource::FindArea | ( | const char * | pAreaName | ) |
Find the index of an area.
| pAreaName | The name of the area to find. |
| int ModConfigResource::FindBackground | ( | const char * | pFileName | ) |
Find the index of a background.
| pFileName | The background's file name. ex: "Green" will be expanded to "{data path}/bkGreen.png". |
| int ModConfigResource::FindBullet | ( | const char * | pBulletName | ) |
Find the index of a bullet.
| pBulletName | The name of the bullet to find. |
| int ModConfigResource::FindMusic | ( | const char * | pMusicName | ) |
Find the index of music.
| pMusicName | The name of the music to find. |
| int ModConfigResource::FindNPC | ( | const char * | pNpcName | ) |
Find the index of an NPC.
| pNpcName | The name of the NPC to find. |
| int ModConfigResource::FindSpritesheet | ( | const char * | pFileName | ) |
Find the index of a spritesheet.
| pFileName | The spritesheet's file name. ex: "Press" will be expanded to "{data path}/Npc/NpcPress.png". |
| int ModConfigResource::FindStage | ( | const char * | pFileName | ) |
Find the index of a stage.
| pFileName | The stage's file name. ex: "Mimi" |
| int ModConfigResource::FindTileset | ( | const char * | pFileName | ) |
Find the index of a tileset.
| pFileName | The tileset's file name. ex: "Cave" will be expanded to "{data path}/Stage/PrtCave.png". |
| int ModConfigResource::FindWeapon | ( | const char * | pWeaponName | ) |
Find the index of a weapon.
| pWeaponName | The name of the weapon to find. |
|
inline |
Get the author of the mod.
|
static |
Get the default bullet for slot iIndex.
Returns NULL if iIndex is out of range.
| iIndex | The index of the bullet slot. |
|
static |
Get the default NPC for slot iIndex.
Returns NULL if iIndex is out of range.
| iIndex | The index of the NPC slot. |
|
static |
Get default weapon info for a template.
| eType | The template type. |
|
static |
Get the default weapon for slot iIndex.
Returns NULL if iIndex is out of range.
| iIndex | The index of the weapon slot. |
| const char* ModConfigResource::GetInternalName | ( | ) |
Get the mod's path name.
|
inline |
Get the title of the mod.
|
inline |
Get the version of the mod.
| bool ModConfigResource::Load | ( | const char * | pModPath, |
| bool | bOnlyValidate = false, |
||
| bool | bForceRelease = false, |
||
| bool | bShowError = true |
||
| ) |
Load a mod from a file on the disc.
| pModPath | The path of the mod's data folder. |
| bOnlyValidate | If set to true, then this function will only validate if the mod is valid. |
| bForceRelease | If this is set to true, then this will load / validate the release version of mods ONLY. If set to false, it will prefer debug-version of PXMODs over release-versions. |
| bShowError | Whether to show errors in console or not. |
| bool ModConfigResource::MoveMusic | ( | const char * | pMusicName, |
| bool | bMoveUp | ||
| ) |
Move music around in the music list.
| pMusicName | The name of the music to move. |
| bMoveUp | Whether to move the entry up or down. |
| bool ModConfigResource::RemoveArea | ( | const char * | pAreaName | ) |
Remove an area.
| pAreaName | The name of the area to delete. |
| bool ModConfigResource::RemoveBackground | ( | const char * | pFileName | ) |
Remove a background.
| pFileName | The background's file name. ex: "Green" will be expanded to "{data path}/bkGreen.png". |
| bool ModConfigResource::RemoveBullet | ( | const char * | pBulletName | ) |
Remove a bullet.
| pBulletName | The name of the bullet to delete. |
| bool ModConfigResource::RemoveMusic | ( | const char * | pMusicName | ) |
Remove music.
| pMusicName | The name of the music to delete. |
| bool ModConfigResource::RemoveNPC | ( | const char * | pNpcName | ) |
Remove an NPC.
| pNpcName | The name of the NPC to delete. |
| bool ModConfigResource::RemoveNpcAct | ( | int | iNpcIndex, |
| int | iActNo | ||
| ) |
Remove an NPC act.
| iNpcIndex | The index of the NPC. |
| iActNo | The act number. |
| bool ModConfigResource::RemoveSpritesheet | ( | const char * | pFileName | ) |
Remove a spritesheet.
| pFileName | The spritesheet's file name. ex: "Press" will be expanded to "{data path}/Npc/NpcPress.png". |
| bool ModConfigResource::RemoveStage | ( | const char * | pFileName | ) |
Remove a stage.
| pFileName | The map's file name. ex: "Mimi" |
| bool ModConfigResource::RemoveTileset | ( | const char * | pFileName | ) |
Remove a tileset.
| pFileName | The tileset's file name. ex: "Cave" will be expanded to "{data path}/Stage/PrtCave.png". |
| bool ModConfigResource::RemoveWeapon | ( | const char * | pWeaponName | ) |
Remove a weapon.
| pWeaponName | The name of the weapon to delete. |
| bool ModConfigResource::Save | ( | bool | bRelease = false | ) |
Save the mod.
| bRelease | Save the mod as 'release'. |
| void ModConfigResource::SetAuthor | ( | const char * | author | ) |
Set the author of the mod.
| author | The new author of the mod. |
| int ModConfigResource::SetStage | ( | int | iIndex, |
| const char * | pFileName, | ||
| const char * | pMapName, | ||
| const char * | pTileset, | ||
| const char * | pNpcSheet, | ||
| const char * | pBossSheet, | ||
| const char * | pBackground, | ||
| PXMOD_BK_TYPE | iBkType, | ||
| PXMOD_BOSS_TYPE | iBossType | ||
| ) |
Set a stage at an index.
| iIndex | The index of the stage. |
| pFileName | The stage's file name. ex: "Mimi" |
| pMapName | The actual string stage name. |
| pTileset | The tileset to use for this stage. |
| pNpcSheet | The NPC spritesheet for this stage. |
| pBossSheet | The boss spritesheet for this stage. |
| iBkType | The background type for this stage. |
| iBossType | The boss type for this stage. |
| void ModConfigResource::SetTitle | ( | const char * | title | ) |
Set the title of the mod.
| title | The new title of the mod. |
| void ModConfigResource::SetVersion | ( | const PXMOD_VERSION_STRUCT & | pNewVersion | ) |
Set the version of the mod.
| pNewVersion | The new version of this mod. |
| PXMOD_AREA_CHUNK ModConfigResource::mAreas |
Stores all the map area information.
If a map is in an area and the player saves in it & starts a netlobby with that save file selected, then the netlobby stage assigned to the map we saved in's area will be used in the lobby.