mirror of
https://github.com/coop-deluxe/sm64coopdx.git
synced 2025-01-22 15:43:18 -05:00
Document save_file.h (#570)
This commit is contained in:
parent
95ef1eb133
commit
d61206a91d
4 changed files with 179 additions and 5 deletions
|
@ -8176,27 +8176,32 @@ function reset_rumble_timers_2(m, a0)
|
||||||
end
|
end
|
||||||
|
|
||||||
--- @param flags integer
|
--- @param flags integer
|
||||||
|
--- Clears specific flags in the current save file. The flags are specified as a bitmask in the `flags` parameter. Ensures that the save file remains valid after clearing. Useful for removing specific game states, such as collected items or completed objectives, without resetting the entire save
|
||||||
function save_file_clear_flags(flags)
|
function save_file_clear_flags(flags)
|
||||||
-- ...
|
-- ...
|
||||||
end
|
end
|
||||||
|
|
||||||
--- @param fileIndex integer
|
--- @param fileIndex integer
|
||||||
--- @param forceSave integer
|
--- @param forceSave integer
|
||||||
|
--- Saves the current state of the game into a specified save file. Includes data verification and backup management. Useful for maintaining game progress during play or when saving manually
|
||||||
function save_file_do_save(fileIndex, forceSave)
|
function save_file_do_save(fileIndex, forceSave)
|
||||||
-- ...
|
-- ...
|
||||||
end
|
end
|
||||||
|
|
||||||
--- @param fileIndex integer
|
--- @param fileIndex integer
|
||||||
|
--- Erases all data in a specified save file, including backup slots. Marks the save file as modified and performs a save to apply the changes. Useful for resetting a save file to its default state
|
||||||
function save_file_erase(fileIndex)
|
function save_file_erase(fileIndex)
|
||||||
-- ...
|
-- ...
|
||||||
end
|
end
|
||||||
|
|
||||||
|
--- Erases the backup data for the current save file without affecting the primary save data. Reloads the save file afterward
|
||||||
function save_file_erase_current_backup_save()
|
function save_file_erase_current_backup_save()
|
||||||
-- ...
|
-- ...
|
||||||
end
|
end
|
||||||
|
|
||||||
--- @param capPos Vec3s
|
--- @param capPos Vec3s
|
||||||
--- @return integer
|
--- @return integer
|
||||||
|
--- Retrieves the current position of Mario's cap, if it is on the ground in the current level and area. The position is stored in the provided `capPos` parameter. Useful for tracking the cap's location after it has been dropped or lost
|
||||||
function save_file_get_cap_pos(capPos)
|
function save_file_get_cap_pos(capPos)
|
||||||
-- ...
|
-- ...
|
||||||
end
|
end
|
||||||
|
@ -8204,6 +8209,7 @@ end
|
||||||
--- @param fileIndex integer
|
--- @param fileIndex integer
|
||||||
--- @param courseIndex integer
|
--- @param courseIndex integer
|
||||||
--- @return integer
|
--- @return integer
|
||||||
|
--- Returns the highest coin score for a specified course in the save file. Performs checks to ensure the coin score is valid. Useful for tracking player achievements and high scores
|
||||||
function save_file_get_course_coin_score(fileIndex, courseIndex)
|
function save_file_get_course_coin_score(fileIndex, courseIndex)
|
||||||
-- ...
|
-- ...
|
||||||
end
|
end
|
||||||
|
@ -8211,22 +8217,26 @@ end
|
||||||
--- @param fileIndex integer
|
--- @param fileIndex integer
|
||||||
--- @param courseIndex integer
|
--- @param courseIndex integer
|
||||||
--- @return integer
|
--- @return integer
|
||||||
|
--- Calculates the total number of stars collected in a specific course for a given save file. Useful for determining completion status of individual levels
|
||||||
function save_file_get_course_star_count(fileIndex, courseIndex)
|
function save_file_get_course_star_count(fileIndex, courseIndex)
|
||||||
-- ...
|
-- ...
|
||||||
end
|
end
|
||||||
|
|
||||||
--- @return integer
|
--- @return integer
|
||||||
|
--- Retrieves the bitmask of flags representing the current state of the save file. Flags indicate collected items, completed objectives, and other game states. Useful for checking specific game progress details
|
||||||
function save_file_get_flags()
|
function save_file_get_flags()
|
||||||
-- ...
|
-- ...
|
||||||
end
|
end
|
||||||
|
|
||||||
--- @param courseIndex integer
|
--- @param courseIndex integer
|
||||||
--- @return integer
|
--- @return integer
|
||||||
|
--- Determines the maximum coin score for a course across all save files. Returns the score along with the file index of the save containing it. Useful for leaderboard-style comparisons and overall progress tracking
|
||||||
function save_file_get_max_coin_score(courseIndex)
|
function save_file_get_max_coin_score(courseIndex)
|
||||||
-- ...
|
-- ...
|
||||||
end
|
end
|
||||||
|
|
||||||
--- @return integer
|
--- @return integer
|
||||||
|
--- Returns the current sound mode (e.g., stereo, mono) stored in the save file. Useful for checking the audio output preferences when loading a save
|
||||||
function save_file_get_sound_mode()
|
function save_file_get_sound_mode()
|
||||||
-- ...
|
-- ...
|
||||||
end
|
end
|
||||||
|
@ -8234,6 +8244,7 @@ end
|
||||||
--- @param fileIndex integer
|
--- @param fileIndex integer
|
||||||
--- @param courseIndex integer
|
--- @param courseIndex integer
|
||||||
--- @return integer
|
--- @return integer
|
||||||
|
--- Retrieves the bitmask of stars collected in a specific course or castle secret stars (-1). Useful for evaluating level progress and completion
|
||||||
function save_file_get_star_flags(fileIndex, courseIndex)
|
function save_file_get_star_flags(fileIndex, courseIndex)
|
||||||
-- ...
|
-- ...
|
||||||
end
|
end
|
||||||
|
@ -8242,6 +8253,7 @@ end
|
||||||
--- @param minCourse integer
|
--- @param minCourse integer
|
||||||
--- @param maxCourse integer
|
--- @param maxCourse integer
|
||||||
--- @return integer
|
--- @return integer
|
||||||
|
--- Calculates the total number of stars collected across multiple courses within a specified range. Useful for determining the overall progress toward game completion
|
||||||
function save_file_get_total_star_count(fileIndex, minCourse, maxCourse)
|
function save_file_get_total_star_count(fileIndex, minCourse, maxCourse)
|
||||||
-- ...
|
-- ...
|
||||||
end
|
end
|
||||||
|
@ -8249,11 +8261,13 @@ end
|
||||||
--- @param fileIndex integer
|
--- @param fileIndex integer
|
||||||
--- @param courseIndex integer
|
--- @param courseIndex integer
|
||||||
--- @return integer
|
--- @return integer
|
||||||
|
--- Checks whether the cannon in the specified course is unlocked. Returns true if the cannon is unlocked, otherwise false. Useful for tracking course-specific progress and enabling shortcuts
|
||||||
function save_file_is_cannon_unlocked(fileIndex, courseIndex)
|
function save_file_is_cannon_unlocked(fileIndex, courseIndex)
|
||||||
-- ...
|
-- ...
|
||||||
end
|
end
|
||||||
|
|
||||||
--- @param load_all integer
|
--- @param load_all integer
|
||||||
|
--- Reloads the save file data into memory, optionally resetting all save files. Marks the save file as modified. Useful for reloading state after data corruption or during development debugging
|
||||||
function save_file_reload(load_all)
|
function save_file_reload(load_all)
|
||||||
-- ...
|
-- ...
|
||||||
end
|
end
|
||||||
|
@ -8261,6 +8275,7 @@ end
|
||||||
--- @param fileIndex integer
|
--- @param fileIndex integer
|
||||||
--- @param courseIndex integer
|
--- @param courseIndex integer
|
||||||
--- @param starFlagsToRemove integer
|
--- @param starFlagsToRemove integer
|
||||||
|
--- Removes specific star flags from the save file. This modifies the bitmask representing collected stars for a course or castle secret stars. Useful for undoing progress or debugging collected stars
|
||||||
function save_file_remove_star_flags(fileIndex, courseIndex, starFlagsToRemove)
|
function save_file_remove_star_flags(fileIndex, courseIndex, starFlagsToRemove)
|
||||||
-- ...
|
-- ...
|
||||||
end
|
end
|
||||||
|
@ -8268,11 +8283,13 @@ end
|
||||||
--- @param fileIndex integer
|
--- @param fileIndex integer
|
||||||
--- @param courseIndex integer
|
--- @param courseIndex integer
|
||||||
--- @param coinScore integer
|
--- @param coinScore integer
|
||||||
|
--- Updates the coin score for a specific course in the save file. The new score is provided in the `coinScore` parameter. Useful for manually setting achievements such as high coin counts in individual levels
|
||||||
function save_file_set_course_coin_score(fileIndex, courseIndex, coinScore)
|
function save_file_set_course_coin_score(fileIndex, courseIndex, coinScore)
|
||||||
-- ...
|
-- ...
|
||||||
end
|
end
|
||||||
|
|
||||||
--- @param flags integer
|
--- @param flags integer
|
||||||
|
--- Adds new flags to the save file's flag bitmask. Useful for updating progress or triggering new gameplay features
|
||||||
function save_file_set_flags(flags)
|
function save_file_set_flags(flags)
|
||||||
-- ...
|
-- ...
|
||||||
end
|
end
|
||||||
|
@ -8280,12 +8297,14 @@ end
|
||||||
--- @param fileIndex integer
|
--- @param fileIndex integer
|
||||||
--- @param courseIndex integer
|
--- @param courseIndex integer
|
||||||
--- @param starFlags integer
|
--- @param starFlags integer
|
||||||
|
--- Adds specific star flags to the save file, indicating collected stars for a course or castle secret stars. Updates the save file flags as necessary. Useful for recording progress after star collection
|
||||||
function save_file_set_star_flags(fileIndex, courseIndex, starFlags)
|
function save_file_set_star_flags(fileIndex, courseIndex, starFlags)
|
||||||
-- ...
|
-- ...
|
||||||
end
|
end
|
||||||
|
|
||||||
--- @param fileIndex integer
|
--- @param fileIndex integer
|
||||||
--- @param courseIndex integer
|
--- @param courseIndex integer
|
||||||
|
--- Marks the coin score for a specific course as the newest among all save files. Adjusts the age of other scores to reflect the update. Useful for leaderboard tracking or displaying recent progress
|
||||||
function touch_coin_score_age(fileIndex, courseIndex)
|
function touch_coin_score_age(fileIndex, courseIndex)
|
||||||
-- ...
|
-- ...
|
||||||
end
|
end
|
||||||
|
|
|
@ -5514,7 +5514,7 @@ Creates a warp node in the current level and area with id `id` that goes to the
|
||||||
- `integer`
|
- `integer`
|
||||||
|
|
||||||
### C Prototype
|
### C Prototype
|
||||||
`s32 lvl_set_current_level(UNUSED s16 arg0, s16 levelNum);`
|
`s32 lvl_set_current_level(s16 arg0, s16 levelNum);`
|
||||||
|
|
||||||
[:arrow_up_small:](#)
|
[:arrow_up_small:](#)
|
||||||
|
|
||||||
|
|
|
@ -4710,6 +4710,9 @@
|
||||||
|
|
||||||
## [save_file_clear_flags](#save_file_clear_flags)
|
## [save_file_clear_flags](#save_file_clear_flags)
|
||||||
|
|
||||||
|
### Description
|
||||||
|
Clears specific flags in the current save file. The flags are specified as a bitmask in the `flags` parameter. Ensures that the save file remains valid after clearing. Useful for removing specific game states, such as collected items or completed objectives, without resetting the entire save
|
||||||
|
|
||||||
### Lua Example
|
### Lua Example
|
||||||
`save_file_clear_flags(flags)`
|
`save_file_clear_flags(flags)`
|
||||||
|
|
||||||
|
@ -4730,6 +4733,9 @@
|
||||||
|
|
||||||
## [save_file_do_save](#save_file_do_save)
|
## [save_file_do_save](#save_file_do_save)
|
||||||
|
|
||||||
|
### Description
|
||||||
|
Saves the current state of the game into a specified save file. Includes data verification and backup management. Useful for maintaining game progress during play or when saving manually
|
||||||
|
|
||||||
### Lua Example
|
### Lua Example
|
||||||
`save_file_do_save(fileIndex, forceSave)`
|
`save_file_do_save(fileIndex, forceSave)`
|
||||||
|
|
||||||
|
@ -4751,6 +4757,9 @@
|
||||||
|
|
||||||
## [save_file_erase](#save_file_erase)
|
## [save_file_erase](#save_file_erase)
|
||||||
|
|
||||||
|
### Description
|
||||||
|
Erases all data in a specified save file, including backup slots. Marks the save file as modified and performs a save to apply the changes. Useful for resetting a save file to its default state
|
||||||
|
|
||||||
### Lua Example
|
### Lua Example
|
||||||
`save_file_erase(fileIndex)`
|
`save_file_erase(fileIndex)`
|
||||||
|
|
||||||
|
@ -4771,6 +4780,9 @@
|
||||||
|
|
||||||
## [save_file_erase_current_backup_save](#save_file_erase_current_backup_save)
|
## [save_file_erase_current_backup_save](#save_file_erase_current_backup_save)
|
||||||
|
|
||||||
|
### Description
|
||||||
|
Erases the backup data for the current save file without affecting the primary save data. Reloads the save file afterward
|
||||||
|
|
||||||
### Lua Example
|
### Lua Example
|
||||||
`save_file_erase_current_backup_save()`
|
`save_file_erase_current_backup_save()`
|
||||||
|
|
||||||
|
@ -4789,6 +4801,9 @@
|
||||||
|
|
||||||
## [save_file_get_cap_pos](#save_file_get_cap_pos)
|
## [save_file_get_cap_pos](#save_file_get_cap_pos)
|
||||||
|
|
||||||
|
### Description
|
||||||
|
Retrieves the current position of Mario's cap, if it is on the ground in the current level and area. The position is stored in the provided `capPos` parameter. Useful for tracking the cap's location after it has been dropped or lost
|
||||||
|
|
||||||
### Lua Example
|
### Lua Example
|
||||||
`local integerValue = save_file_get_cap_pos(capPos)`
|
`local integerValue = save_file_get_cap_pos(capPos)`
|
||||||
|
|
||||||
|
@ -4809,6 +4824,9 @@
|
||||||
|
|
||||||
## [save_file_get_course_coin_score](#save_file_get_course_coin_score)
|
## [save_file_get_course_coin_score](#save_file_get_course_coin_score)
|
||||||
|
|
||||||
|
### Description
|
||||||
|
Returns the highest coin score for a specified course in the save file. Performs checks to ensure the coin score is valid. Useful for tracking player achievements and high scores
|
||||||
|
|
||||||
### Lua Example
|
### Lua Example
|
||||||
`local integerValue = save_file_get_course_coin_score(fileIndex, courseIndex)`
|
`local integerValue = save_file_get_course_coin_score(fileIndex, courseIndex)`
|
||||||
|
|
||||||
|
@ -4830,6 +4848,9 @@
|
||||||
|
|
||||||
## [save_file_get_course_star_count](#save_file_get_course_star_count)
|
## [save_file_get_course_star_count](#save_file_get_course_star_count)
|
||||||
|
|
||||||
|
### Description
|
||||||
|
Calculates the total number of stars collected in a specific course for a given save file. Useful for determining completion status of individual levels
|
||||||
|
|
||||||
### Lua Example
|
### Lua Example
|
||||||
`local integerValue = save_file_get_course_star_count(fileIndex, courseIndex)`
|
`local integerValue = save_file_get_course_star_count(fileIndex, courseIndex)`
|
||||||
|
|
||||||
|
@ -4851,6 +4872,9 @@
|
||||||
|
|
||||||
## [save_file_get_flags](#save_file_get_flags)
|
## [save_file_get_flags](#save_file_get_flags)
|
||||||
|
|
||||||
|
### Description
|
||||||
|
Retrieves the bitmask of flags representing the current state of the save file. Flags indicate collected items, completed objectives, and other game states. Useful for checking specific game progress details
|
||||||
|
|
||||||
### Lua Example
|
### Lua Example
|
||||||
`local integerValue = save_file_get_flags()`
|
`local integerValue = save_file_get_flags()`
|
||||||
|
|
||||||
|
@ -4869,6 +4893,9 @@
|
||||||
|
|
||||||
## [save_file_get_max_coin_score](#save_file_get_max_coin_score)
|
## [save_file_get_max_coin_score](#save_file_get_max_coin_score)
|
||||||
|
|
||||||
|
### Description
|
||||||
|
Determines the maximum coin score for a course across all save files. Returns the score along with the file index of the save containing it. Useful for leaderboard-style comparisons and overall progress tracking
|
||||||
|
|
||||||
### Lua Example
|
### Lua Example
|
||||||
`local integerValue = save_file_get_max_coin_score(courseIndex)`
|
`local integerValue = save_file_get_max_coin_score(courseIndex)`
|
||||||
|
|
||||||
|
@ -4889,6 +4916,9 @@
|
||||||
|
|
||||||
## [save_file_get_sound_mode](#save_file_get_sound_mode)
|
## [save_file_get_sound_mode](#save_file_get_sound_mode)
|
||||||
|
|
||||||
|
### Description
|
||||||
|
Returns the current sound mode (e.g., stereo, mono) stored in the save file. Useful for checking the audio output preferences when loading a save
|
||||||
|
|
||||||
### Lua Example
|
### Lua Example
|
||||||
`local integerValue = save_file_get_sound_mode()`
|
`local integerValue = save_file_get_sound_mode()`
|
||||||
|
|
||||||
|
@ -4907,6 +4937,9 @@
|
||||||
|
|
||||||
## [save_file_get_star_flags](#save_file_get_star_flags)
|
## [save_file_get_star_flags](#save_file_get_star_flags)
|
||||||
|
|
||||||
|
### Description
|
||||||
|
Retrieves the bitmask of stars collected in a specific course or castle secret stars (-1). Useful for evaluating level progress and completion
|
||||||
|
|
||||||
### Lua Example
|
### Lua Example
|
||||||
`local integerValue = save_file_get_star_flags(fileIndex, courseIndex)`
|
`local integerValue = save_file_get_star_flags(fileIndex, courseIndex)`
|
||||||
|
|
||||||
|
@ -4928,6 +4961,9 @@
|
||||||
|
|
||||||
## [save_file_get_total_star_count](#save_file_get_total_star_count)
|
## [save_file_get_total_star_count](#save_file_get_total_star_count)
|
||||||
|
|
||||||
|
### Description
|
||||||
|
Calculates the total number of stars collected across multiple courses within a specified range. Useful for determining the overall progress toward game completion
|
||||||
|
|
||||||
### Lua Example
|
### Lua Example
|
||||||
`local integerValue = save_file_get_total_star_count(fileIndex, minCourse, maxCourse)`
|
`local integerValue = save_file_get_total_star_count(fileIndex, minCourse, maxCourse)`
|
||||||
|
|
||||||
|
@ -4950,6 +4986,9 @@
|
||||||
|
|
||||||
## [save_file_is_cannon_unlocked](#save_file_is_cannon_unlocked)
|
## [save_file_is_cannon_unlocked](#save_file_is_cannon_unlocked)
|
||||||
|
|
||||||
|
### Description
|
||||||
|
Checks whether the cannon in the specified course is unlocked. Returns true if the cannon is unlocked, otherwise false. Useful for tracking course-specific progress and enabling shortcuts
|
||||||
|
|
||||||
### Lua Example
|
### Lua Example
|
||||||
`local integerValue = save_file_is_cannon_unlocked(fileIndex, courseIndex)`
|
`local integerValue = save_file_is_cannon_unlocked(fileIndex, courseIndex)`
|
||||||
|
|
||||||
|
@ -4971,6 +5010,9 @@
|
||||||
|
|
||||||
## [save_file_reload](#save_file_reload)
|
## [save_file_reload](#save_file_reload)
|
||||||
|
|
||||||
|
### Description
|
||||||
|
Reloads the save file data into memory, optionally resetting all save files. Marks the save file as modified. Useful for reloading state after data corruption or during development debugging
|
||||||
|
|
||||||
### Lua Example
|
### Lua Example
|
||||||
`save_file_reload(load_all)`
|
`save_file_reload(load_all)`
|
||||||
|
|
||||||
|
@ -4991,6 +5033,9 @@
|
||||||
|
|
||||||
## [save_file_remove_star_flags](#save_file_remove_star_flags)
|
## [save_file_remove_star_flags](#save_file_remove_star_flags)
|
||||||
|
|
||||||
|
### Description
|
||||||
|
Removes specific star flags from the save file. This modifies the bitmask representing collected stars for a course or castle secret stars. Useful for undoing progress or debugging collected stars
|
||||||
|
|
||||||
### Lua Example
|
### Lua Example
|
||||||
`save_file_remove_star_flags(fileIndex, courseIndex, starFlagsToRemove)`
|
`save_file_remove_star_flags(fileIndex, courseIndex, starFlagsToRemove)`
|
||||||
|
|
||||||
|
@ -5013,6 +5058,9 @@
|
||||||
|
|
||||||
## [save_file_set_course_coin_score](#save_file_set_course_coin_score)
|
## [save_file_set_course_coin_score](#save_file_set_course_coin_score)
|
||||||
|
|
||||||
|
### Description
|
||||||
|
Updates the coin score for a specific course in the save file. The new score is provided in the `coinScore` parameter. Useful for manually setting achievements such as high coin counts in individual levels
|
||||||
|
|
||||||
### Lua Example
|
### Lua Example
|
||||||
`save_file_set_course_coin_score(fileIndex, courseIndex, coinScore)`
|
`save_file_set_course_coin_score(fileIndex, courseIndex, coinScore)`
|
||||||
|
|
||||||
|
@ -5035,6 +5083,9 @@
|
||||||
|
|
||||||
## [save_file_set_flags](#save_file_set_flags)
|
## [save_file_set_flags](#save_file_set_flags)
|
||||||
|
|
||||||
|
### Description
|
||||||
|
Adds new flags to the save file's flag bitmask. Useful for updating progress or triggering new gameplay features
|
||||||
|
|
||||||
### Lua Example
|
### Lua Example
|
||||||
`save_file_set_flags(flags)`
|
`save_file_set_flags(flags)`
|
||||||
|
|
||||||
|
@ -5055,6 +5106,9 @@
|
||||||
|
|
||||||
## [save_file_set_star_flags](#save_file_set_star_flags)
|
## [save_file_set_star_flags](#save_file_set_star_flags)
|
||||||
|
|
||||||
|
### Description
|
||||||
|
Adds specific star flags to the save file, indicating collected stars for a course or castle secret stars. Updates the save file flags as necessary. Useful for recording progress after star collection
|
||||||
|
|
||||||
### Lua Example
|
### Lua Example
|
||||||
`save_file_set_star_flags(fileIndex, courseIndex, starFlags)`
|
`save_file_set_star_flags(fileIndex, courseIndex, starFlags)`
|
||||||
|
|
||||||
|
@ -5077,6 +5131,9 @@
|
||||||
|
|
||||||
## [touch_coin_score_age](#touch_coin_score_age)
|
## [touch_coin_score_age](#touch_coin_score_age)
|
||||||
|
|
||||||
|
### Description
|
||||||
|
Marks the coin score for a specific course as the newest among all save files. Adjusts the age of other scores to reflect the update. Useful for leaderboard tracking or displaying recent progress
|
||||||
|
|
||||||
### Lua Example
|
### Lua Example
|
||||||
`touch_coin_score_age(fileIndex, courseIndex)`
|
`touch_coin_score_age(fileIndex, courseIndex)`
|
||||||
|
|
||||||
|
|
|
@ -131,34 +131,132 @@ extern s8 gSaveFileModified;
|
||||||
|
|
||||||
s8 get_level_num_from_course_num(s16 courseNum);
|
s8 get_level_num_from_course_num(s16 courseNum);
|
||||||
s8 get_level_course_num(s16 levelNum);
|
s8 get_level_course_num(s16 levelNum);
|
||||||
|
|
||||||
|
/* |description|
|
||||||
|
Marks the coin score for a specific course as the newest among all save files. Adjusts the age of other scores to reflect the update.
|
||||||
|
Useful for leaderboard tracking or displaying recent progress
|
||||||
|
|descriptionEnd| */
|
||||||
void touch_coin_score_age(s32 fileIndex, s32 courseIndex);
|
void touch_coin_score_age(s32 fileIndex, s32 courseIndex);
|
||||||
|
|
||||||
|
/* |description|
|
||||||
|
Saves the current state of the game into a specified save file. Includes data verification and backup management.
|
||||||
|
Useful for maintaining game progress during play or when saving manually
|
||||||
|
|descriptionEnd| */
|
||||||
void save_file_do_save(s32 fileIndex, s8 forceSave);
|
void save_file_do_save(s32 fileIndex, s8 forceSave);
|
||||||
|
|
||||||
|
/* |description|
|
||||||
|
Erases all data in a specified save file, including backup slots. Marks the save file as modified and performs a save to apply the changes.
|
||||||
|
Useful for resetting a save file to its default state
|
||||||
|
|descriptionEnd| */
|
||||||
void save_file_erase(s32 fileIndex);
|
void save_file_erase(s32 fileIndex);
|
||||||
|
|
||||||
|
/* |description|
|
||||||
|
Erases the backup data for the current save file without affecting the primary save data. Reloads the save file afterward
|
||||||
|
|descriptionEnd| */
|
||||||
void save_file_erase_current_backup_save(void);
|
void save_file_erase_current_backup_save(void);
|
||||||
|
|
||||||
BAD_RETURN(s32) save_file_copy(s32 srcFileIndex, s32 destFileIndex);
|
BAD_RETURN(s32) save_file_copy(s32 srcFileIndex, s32 destFileIndex);
|
||||||
void save_file_load_all(u8 reload);
|
void save_file_load_all(u8 reload);
|
||||||
|
|
||||||
|
/* |description|
|
||||||
|
Reloads the save file data into memory, optionally resetting all save files. Marks the save file as modified.
|
||||||
|
Useful for reloading state after data corruption or during development debugging
|
||||||
|
|descriptionEnd| */
|
||||||
void save_file_reload(u8 load_all);
|
void save_file_reload(u8 load_all);
|
||||||
|
|
||||||
void save_file_collect_star_or_key(s16 coinScore, s16 starIndex, u8 fromNetwork);
|
void save_file_collect_star_or_key(s16 coinScore, s16 starIndex, u8 fromNetwork);
|
||||||
s32 save_file_exists(s32 fileIndex);
|
s32 save_file_exists(s32 fileIndex);
|
||||||
|
|
||||||
|
/* |description|
|
||||||
|
Determines the maximum coin score for a course across all save files. Returns the score along with the file index of the save containing it.
|
||||||
|
Useful for leaderboard-style comparisons and overall progress tracking
|
||||||
|
|descriptionEnd| */
|
||||||
u32 save_file_get_max_coin_score(s32 courseIndex);
|
u32 save_file_get_max_coin_score(s32 courseIndex);
|
||||||
|
|
||||||
|
/* |description|
|
||||||
|
Calculates the total number of stars collected in a specific course for a given save file.
|
||||||
|
Useful for determining completion status of individual levels
|
||||||
|
|descriptionEnd| */
|
||||||
s32 save_file_get_course_star_count(s32 fileIndex, s32 courseIndex);
|
s32 save_file_get_course_star_count(s32 fileIndex, s32 courseIndex);
|
||||||
|
|
||||||
|
/* |description|
|
||||||
|
Calculates the total number of stars collected across multiple courses within a specified range.
|
||||||
|
Useful for determining the overall progress toward game completion
|
||||||
|
|descriptionEnd| */
|
||||||
s32 save_file_get_total_star_count(s32 fileIndex, s32 minCourse, s32 maxCourse);
|
s32 save_file_get_total_star_count(s32 fileIndex, s32 minCourse, s32 maxCourse);
|
||||||
|
|
||||||
|
/* |description|
|
||||||
|
Adds new flags to the save file's flag bitmask.
|
||||||
|
Useful for updating progress or triggering new gameplay features
|
||||||
|
|descriptionEnd| */
|
||||||
void save_file_set_flags(u32 flags);
|
void save_file_set_flags(u32 flags);
|
||||||
|
|
||||||
|
/* |description|
|
||||||
|
Clears specific flags in the current save file. The flags are specified as a bitmask in the `flags` parameter. Ensures that the save file remains valid after clearing.
|
||||||
|
Useful for removing specific game states, such as collected items or completed objectives, without resetting the entire save
|
||||||
|
|descriptionEnd| */
|
||||||
void save_file_clear_flags(u32 flags);
|
void save_file_clear_flags(u32 flags);
|
||||||
|
|
||||||
|
/* |description|
|
||||||
|
Retrieves the bitmask of flags representing the current state of the save file. Flags indicate collected items, completed objectives, and other game states.
|
||||||
|
Useful for checking specific game progress details
|
||||||
|
|descriptionEnd| */
|
||||||
u32 save_file_get_flags(void);
|
u32 save_file_get_flags(void);
|
||||||
|
|
||||||
|
/* |description|
|
||||||
|
Retrieves the bitmask of stars collected in a specific course or castle secret stars (-1).
|
||||||
|
Useful for evaluating level progress and completion
|
||||||
|
|descriptionEnd| */
|
||||||
u32 save_file_get_star_flags(s32 fileIndex, s32 courseIndex);
|
u32 save_file_get_star_flags(s32 fileIndex, s32 courseIndex);
|
||||||
|
|
||||||
|
/* |description|
|
||||||
|
Adds specific star flags to the save file, indicating collected stars for a course or castle secret stars. Updates the save file flags as necessary.
|
||||||
|
Useful for recording progress after star collection
|
||||||
|
|descriptionEnd| */
|
||||||
void save_file_set_star_flags(s32 fileIndex, s32 courseIndex, u32 starFlags);
|
void save_file_set_star_flags(s32 fileIndex, s32 courseIndex, u32 starFlags);
|
||||||
|
|
||||||
|
/* |description|
|
||||||
|
Removes specific star flags from the save file. This modifies the bitmask representing collected stars for a course or castle secret stars.
|
||||||
|
Useful for undoing progress or debugging collected stars
|
||||||
|
|descriptionEnd| */
|
||||||
void save_file_remove_star_flags(s32 fileIndex, s32 courseIndex, u32 starFlagsToRemove);
|
void save_file_remove_star_flags(s32 fileIndex, s32 courseIndex, u32 starFlagsToRemove);
|
||||||
|
|
||||||
|
/* |description|
|
||||||
|
Returns the highest coin score for a specified course in the save file. Performs checks to ensure the coin score is valid.
|
||||||
|
Useful for tracking player achievements and high scores
|
||||||
|
|descriptionEnd| */
|
||||||
s32 save_file_get_course_coin_score(s32 fileIndex, s32 courseIndex);
|
s32 save_file_get_course_coin_score(s32 fileIndex, s32 courseIndex);
|
||||||
|
|
||||||
|
/* |description|
|
||||||
|
Updates the coin score for a specific course in the save file. The new score is provided in the `coinScore` parameter.
|
||||||
|
Useful for manually setting achievements such as high coin counts in individual levels
|
||||||
|
|descriptionEnd| */
|
||||||
void save_file_set_course_coin_score(s32 fileIndex, s32 courseIndex, u8 coinScore);
|
void save_file_set_course_coin_score(s32 fileIndex, s32 courseIndex, u8 coinScore);
|
||||||
|
|
||||||
|
/* |description|
|
||||||
|
Checks whether the cannon in the specified course is unlocked. Returns true if the cannon is unlocked, otherwise false.
|
||||||
|
Useful for tracking course-specific progress and enabling shortcuts
|
||||||
|
|descriptionEnd| */
|
||||||
s32 save_file_is_cannon_unlocked(s32 fileIndex, s32 courseIndex);
|
s32 save_file_is_cannon_unlocked(s32 fileIndex, s32 courseIndex);
|
||||||
|
|
||||||
void save_file_set_cannon_unlocked(void);
|
void save_file_set_cannon_unlocked(void);
|
||||||
void save_file_set_cap_pos(s16 x, s16 y, s16 z);
|
void save_file_set_cap_pos(s16 x, s16 y, s16 z);
|
||||||
s32 save_file_get_cap_pos(Vec3s capPos);
|
|
||||||
void save_file_set_sound_mode(u16 mode);
|
|
||||||
u16 save_file_get_sound_mode(void);
|
|
||||||
void save_file_move_cap_to_default_location(void);
|
|
||||||
|
|
||||||
|
/* |description|
|
||||||
|
Retrieves the current position of Mario's cap, if it is on the ground in the current level and area. The position is stored in the provided `capPos` parameter.
|
||||||
|
Useful for tracking the cap's location after it has been dropped or lost
|
||||||
|
|descriptionEnd| */
|
||||||
|
s32 save_file_get_cap_pos(Vec3s capPos);
|
||||||
|
|
||||||
|
void save_file_set_sound_mode(u16 mode);
|
||||||
|
|
||||||
|
/* |description|
|
||||||
|
Returns the current sound mode (e.g., stereo, mono) stored in the save file.
|
||||||
|
Useful for checking the audio output preferences when loading a save
|
||||||
|
|descriptionEnd| */
|
||||||
|
u16 save_file_get_sound_mode(void);
|
||||||
|
|
||||||
|
void save_file_move_cap_to_default_location(void);
|
||||||
void disable_warp_checkpoint(void);
|
void disable_warp_checkpoint(void);
|
||||||
void check_if_should_set_warp_checkpoint(struct WarpNode *warpNode);
|
void check_if_should_set_warp_checkpoint(struct WarpNode *warpNode);
|
||||||
s32 check_warp_checkpoint(struct WarpNode *warpNode);
|
s32 check_warp_checkpoint(struct WarpNode *warpNode);
|
||||||
|
|
Loading…
Reference in a new issue