mirror of
https://github.com/hrydgard/ppsspp.git
synced 2026-10-15 23:40:29 +02:00
Game screen: Add a button to reset the played time counter
This commit is contained in:
1 parent
8728be5455
commit
46e82f3c63
49 files changed
+94
-19
No files matched your search
+17
-8
@@ -1820,13 +1820,13 @@ void Config::GetReportingInfo(UrlEncoder &data) const {
|
||||
}
|
||||
}
|
||||
|
||||
void PlayTimeTracker::Start(const std::string &gameId) {
|
||||
void PlayTimeTracker::Start(std::string_view gameId) {
|
||||
if (gameId.empty()) {
|
||||
return;
|
||||
}
|
||||
VERBOSE_LOG(Log::System, "GameTimeTracker::Start(%s)", gameId.c_str());
|
||||
VERBOSE_LOG(Log::System, "GameTimeTracker::Start(%.*s)", STR_VIEW(gameId));
|
||||
|
||||
auto iter = tracker_.find(std::string(gameId));
|
||||
auto iter = tracker_.find(gameId);
|
||||
if (iter != tracker_.end()) {
|
||||
if (iter->second.startTime == 0.0) {
|
||||
iter->second.lastTimePlayed = time_now_unix_utc();
|
||||
@@ -1839,17 +1839,17 @@ void PlayTimeTracker::Start(const std::string &gameId) {
|
||||
playTime.lastTimePlayed = time_now_unix_utc();
|
||||
playTime.totalTimePlayed = 0.0;
|
||||
playTime.startTime = time_now_d();
|
||||
tracker_[gameId] = playTime;
|
||||
tracker_[std::string(gameId)] = playTime;
|
||||
}
|
||||
|
||||
void PlayTimeTracker::Stop(const std::string &gameId) {
|
||||
void PlayTimeTracker::Stop(std::string_view gameId) {
|
||||
if (gameId.empty()) {
|
||||
return;
|
||||
}
|
||||
|
||||
VERBOSE_LOG(Log::System, "GameTimeTracker::Stop(%s)", gameId.c_str());
|
||||
VERBOSE_LOG(Log::System, "GameTimeTracker::Stop(%.*s)", STR_VIEW(gameId));
|
||||
|
||||
auto iter = tracker_.find(std::string(gameId));
|
||||
auto iter = tracker_.find(gameId);
|
||||
if (iter != tracker_.end()) {
|
||||
if (iter->second.startTime != 0.0) {
|
||||
iter->second.totalTimePlayed += time_now_d() - iter->second.startTime;
|
||||
@@ -1863,6 +1863,15 @@ void PlayTimeTracker::Stop(const std::string &gameId) {
|
||||
WARN_LOG(Log::System, "GameTimeTracker::Stop called without corresponding GameTimeTracker::Start");
|
||||
}
|
||||
|
||||
void PlayTimeTracker::Reset(std::string_view gameId) {
|
||||
auto iter = tracker_.find(gameId);
|
||||
if (iter != tracker_.end()) {
|
||||
iter->second.lastTimePlayed = 0;
|
||||
iter->second.totalTimePlayed = 0;
|
||||
iter->second.startTime = 0.0;
|
||||
}
|
||||
}
|
||||
|
||||
void PlayTimeTracker::Load(const Section *section) {
|
||||
tracker_.clear();
|
||||
|
||||
@@ -1885,7 +1894,7 @@ void PlayTimeTracker::Save(Section *section) {
|
||||
}
|
||||
}
|
||||
|
||||
bool PlayTimeTracker::GetPlayedTimeString(const std::string &gameId, std::string *str) const {
|
||||
bool PlayTimeTracker::GetPlayedTimeString(std::string_view gameId, std::string *str) const {
|
||||
auto ga = GetI18NCategory(I18NCat::GAME);
|
||||
|
||||
auto iter = tracker_.find(gameId);
|
||||
|
||||
Reference in new issue
Block a user