Glenn Maynard
87ddfb4c41
Up until now, we've been backing up profile data by copying it to the
...
backup directory immediately after a successful load. This ensures that
the data we're copying is valid, so after a successful copy, the backup
is valid, too. This has a couple problems:
- Copying takes a while. It's much faster to move data.
- Data shouldn't be written during a profile read. Players should be able
to assume that it's safe to remove the memory card at any time except
when the game is explicitly saving.
- Copying good data from one place to another is just as prone to error as
initially writing it. It's at least as easy for the backup copy to fail
and result in a bad backup as it is for a save to fail in the first place.
Instead, when we successfully load profile data (and not from a backup),
set a flag. Later, when we save over that data, we'll clear the flag and
move the data we're about to overwrite to the backup.
2005-09-29 00:33:22 +00:00
Chris Danford
57b593c65e
add GetLocalProfileIDFromIndex
2005-08-14 23:01:34 +00:00
Chris Danford
760ca931bc
fix local profile switching stuck if current local profileID doesn't exist
...
fix local profile loading broken because dir missing trailing slash
2005-08-14 20:31:20 +00:00
Chris Danford
c5fa8517dd
add FixedProfiles metric. If on, profiles shouldn't be added or deleted - only cleared.
2005-08-14 01:59:46 +00:00
Chris Danford
ff7c122289
cleanup: move ProfileLoadResult into GameConstantsAndTypes so we don't take dependencies on Profile.h for ProfileLoadResult
2005-08-13 06:59:27 +00:00
Glenn Maynard
77d5d0466f
CreateLocalProfileByID -> AddLocalProfileByID (to allow code to set up
...
a local profile on its own)
2005-08-13 01:47:56 +00:00
Glenn Maynard
09b44c9766
split GetLocalProfileByID
2005-08-11 23:14:32 +00:00
Glenn Maynard
3c93754969
split CreateLocalProfileByID
2005-08-11 23:10:44 +00:00
Glenn Maynard
01b6345758
split UnloadAllLocalProfiles
2005-08-11 23:06:01 +00:00
Chris Danford
3d37449e6b
add lua bindings
...
use profileID as the key in the map, not the profile dir
2005-08-06 05:34:06 +00:00
Chris Danford
10711f0c83
choose profileIDs for new local profiles such that ordering by creation time is preserved
2005-08-05 10:01:10 +00:00
Chris Danford
804cc8b2bc
working on profile management screen
2005-08-05 04:20:46 +00:00
Chris Danford
68f8e632f0
Add new ScreenOptionsManageProfiles
2005-08-04 21:13:29 +00:00
Chris Danford
0bc9261eb3
return ID of the created profile
2005-07-16 05:28:34 +00:00
Chris Danford
b9db8fad48
reduce MAX_NUM_LOCAL_PROFILES
2005-07-14 08:45:21 +00:00
Chris Danford
e2e641d0f7
add MAX_NUM_LOCAL_PROFILES
2005-07-13 20:27:05 +00:00
Chris Danford
6f9d4caf0f
keep the whole LocalProfile in memory, not just the EditableData
2005-07-13 19:15:31 +00:00
Chris Danford
e9166ac4ab
load EditableData for all local profile on startup so that we don't have to load every profile from disk to enumerate names
2005-07-12 20:19:52 +00:00
Chris Danford
7c6dbc102b
working on ScreenOptionsProfiles
2005-07-05 23:13:49 +00:00
Glenn Maynard
3450307b01
reduce dependencies
2005-07-01 05:06:00 +00:00
Glenn Maynard
04546763e0
reducing ProfileManager.h dependency on Profile.h (many users only use
...
PManager to see if a profile is loaded, etc, not to access the actual profiles)
2005-07-01 04:46:32 +00:00
Chris Danford
fb1d69add3
rename: IsUsingProfile -> IsPersistentProfile
...
Don't require IsPersistentProfile in some places related to fitness mode where a non-persistent Profile will suffice
2005-05-09 08:44:01 +00:00
Chris Danford
3a726a1c9b
fix ScreenEnding shows stats when not using a memory card
...
fix other bugs introduced when GetProfile was changed to return a valid pointer even with no profile loaded
2005-05-01 06:42:30 +00:00
Chris Danford
4f23083ebc
allow GetProfile even if not using local profile or memory card
2005-04-26 03:32:08 +00:00
Glenn Maynard
fb30fa1c19
track rolls
2005-04-25 11:42:19 +00:00
Glenn Maynard
5093809e31
fallback load for Editable.ini when loaded by the memory card thread
2005-04-24 23:23:32 +00:00
Glenn Maynard
1ea1ecfaaf
move FastLoadProfileNameFromMemoryCard into ProfileManager
2005-04-24 23:06:15 +00:00
Glenn Maynard
086ee3f376
split GetMemoryCardProfileDirectoriesToTry
...
store directory imported from
2005-04-24 19:39:54 +00:00
Glenn Maynard
1abb3cd8b2
working on importing scores
2005-04-24 19:18:46 +00:00
Chris Danford
e6f37dbee8
Don't fill in new Profiles with a hard-coded "NoName". Let ScreenSystemLayer fill in blank name from metrics.
2005-03-26 22:18:28 +00:00
Chris Danford
bb099ee7e0
count calories while stepping, not at the end
2005-02-15 09:24:48 +00:00
Glenn Maynard
bdf3e4ddd8
warning: `class ProfileManager' has virtual functions but non-virtual destructor
2005-02-13 04:14:33 +00:00
Glenn Maynard
2412c73b22
comment, cleanup
2005-02-13 03:40:37 +00:00
Chris Danford
12fde5d55c
move PlayerName texts out of code and into BGAnimations
2005-02-13 01:16:17 +00:00
Chris Danford
5c5ac50b82
Load from LastGood if the main profile is tampered/corrupt.
...
Don't write new data on a load fail - it doesn't give the user a change to correct the load failure.
2004-10-07 19:57:51 +00:00
Chris Danford
ebb9e730a4
Show message when a Profile load fails so that the player doesn't accidentally save over their possibly-good data.
...
Save a copy of Stats.xml to the memory card after a successful load. I have seen one instance where the digital signature on save is bogus, and there's no way for the player to recover their data.
Update Stats.xsl text help text.
2004-10-06 08:39:38 +00:00
Chris Danford
e435165014
clean up memory card logic:
...
- Don't do the OS mount for cards during the attract screens. Only do OS mounts in the time between BeginGame and PlayersFinalized.
- Remove logic for fast load of a Profile from the MemoryCard. Instead, load the whole profile all at once on PlayersFinalized.
2004-08-09 05:01:24 +00:00
Glenn Maynard
0047e04998
add ProfileManager::SaveAllProfiles
...
make ProfileManager::SaveMachineProfile() const
2004-07-20 01:31:23 +00:00
Chris Danford
5544445ad0
name cleanup: StyleDef -> Style
2004-06-28 07:26:00 +00:00
Chris Danford
3809715db0
cleanup: Remove Style and use StyleDef everywhere. This gets rid of a lot of Style->StyleDef lookups and discourages code that's specific to a Style. All game logic should be data-driven.
2004-06-27 06:52:49 +00:00
Glenn Maynard
733127d8ed
license update
2004-06-08 01:24:17 +00:00
Chris Danford
962cdfc4f0
write Catalog.xml only after loading songs
...
get rid of try/catch in SongManager
get rid of try/catch in PrefsManager
2004-05-25 05:52:57 +00:00
Chris Danford
99a02deffe
name cleanup: "StepsType nt" -> "StepsType st"
2004-05-24 03:32:56 +00:00
Chris Danford
4ff8b8ec2b
clean up Course score saving (use Trail)
2004-05-23 09:17:10 +00:00
Chris Danford
7a47504507
fix Profiles loaded for players that aren't joined
2004-04-23 02:01:44 +00:00
Chris Danford
0cc49c66bb
add CourseLastScores for tournaments
2004-04-22 22:01:38 +00:00
Chris Danford
3bc5943a9e
don't throw away Song scores for Songs/Steps that aren't currently loaded on the machine
2004-04-18 18:42:42 +00:00
Chris Danford
d6e52f6aac
optimize profile loading
2004-03-29 06:47:10 +00:00
Chris Danford
6154c14f86
add calorie tracking
...
clean up time formatting functions
2004-02-22 19:51:46 +00:00
Glenn Maynard
802e1a6758
Store unlock data in a more fundamental form in the profile, and derive
...
the special values as needed. Centralize most of it in GameState::EndGame.
2004-02-22 08:16:49 +00:00