diff --git a/data/sql/updates/pending_db_world/rev_1768236150653871465.sql b/data/sql/updates/pending_db_world/rev_1768236150653871465.sql new file mode 100644 index 0000000000..1f3eb455ee --- /dev/null +++ b/data/sql/updates/pending_db_world/rev_1768236150653871465.sql @@ -0,0 +1,4 @@ +-- Add language string for pinfo online time +DELETE FROM `acore_string` WHERE `entry` = 35410; +INSERT INTO `acore_string` (`entry`, `content_default`, `locale_koKR`, `locale_frFR`, `locale_deDE`, `locale_zhCN`, `locale_zhTW`, `locale_esES`, `locale_esMX`, `locale_ruRU`) VALUES +(35410, '¦ Online for: {}', '¦ 온라인 시간: {}', '¦ Online depuis : {}', '¦ Online seit: {}', '¦ 在线时长:{}', '¦ 線上時間:{}', '¦ Conectado durante: {}', '¦ Conectado durante: {}', '¦ Онлайн: {}'); diff --git a/src/server/game/Miscellaneous/Language.h b/src/server/game/Miscellaneous/Language.h index 70ff2a0ff1..4482dcb7b0 100644 --- a/src/server/game/Miscellaneous/Language.h +++ b/src/server/game/Miscellaneous/Language.h @@ -815,6 +815,7 @@ enum AcoreStrings LANG_NO_REASON = 35407, LANG_UNAUTHORIZED = 35408, LANG_PINFO_CHR_MAP_WITH_AREA = 35409, + LANG_PINFO_CHR_ONLINETIME = 35410, LANG_CHARACTER_GENDER_MALE = 855, LANG_CHARACTER_GENDER_FEMALE = 856, diff --git a/src/server/scripts/Commands/cs_misc.cpp b/src/server/scripts/Commands/cs_misc.cpp index cd543488ab..bfa883c255 100644 --- a/src/server/scripts/Commands/cs_misc.cpp +++ b/src/server/scripts/Commands/cs_misc.cpp @@ -2418,6 +2418,13 @@ public: // Output XX. LANG_PINFO_CHR_PLAYEDTIME handler->PSendSysMessage(LANG_PINFO_CHR_PLAYEDTIME, (secsToTimeString(totalPlayerTime, true))); + // Output XXI. LANG_PINFO_CHR_ONLINETIME (only for online players) + if (playerTarget) + { + uint32 onlineTime = uint32(GameTime::GetGameTime().count() - playerTarget->m_logintime); + handler->PSendSysMessage(LANG_PINFO_CHR_ONLINETIME, secsToTimeString(onlineTime, true)); + } + // Mail Data - an own query, because it may or may not be useful. // SQL: "SELECT SUM(CASE WHEN (checked & 1) THEN 1 ELSE 0 END) AS 'readmail', COUNT(*) AS 'totalmail' FROM mail WHERE `receiver` = ?" CharacterDatabasePreparedStatement* mailQuery = CharacterDatabase.GetPreparedStatement(CHAR_SEL_PINFO_MAILS);