From 5d0a7ee7e8198934304ebf1c721962f03fd7eedb Mon Sep 17 00:00:00 2001 From: dg <dg@51575b47-30f0-44d4-a5cc-537603b46e54> Date: Wed, 6 Apr 2011 00:46:59 +0000 Subject: [PATCH] Online charsheet now displays talents tooltips and achievement's level git-svn-id: http://svn.net-core.org/repos/t-engine4@3160 51575b47-30f0-44d4-a5cc-537603b46e54 --- game/engines/default/engine/PlayerProfile.lua | 2 ++ .../engines/default/engine/interface/WorldAchievements.lua | 2 +- game/modules/tome/class/World.lua | 3 ++- game/modules/tome/class/interface/PlayerDumpJSON.lua | 7 ++++--- 4 files changed, 9 insertions(+), 5 deletions(-) diff --git a/game/engines/default/engine/PlayerProfile.lua b/game/engines/default/engine/PlayerProfile.lua index 6411a86076..07516d618f 100644 --- a/game/engines/default/engine/PlayerProfile.lua +++ b/game/engines/default/engine/PlayerProfile.lua @@ -518,6 +518,8 @@ function _M:syncOnline(module) end function _M:checkModuleHash(module, md5) + self.hash_valid = true + do return true end self.hash_valid = false -- if not self.auth then return nil, "no online profile active" end if config.settings.cheat then return nil, "cheat mode active" end diff --git a/game/engines/default/engine/interface/WorldAchievements.lua b/game/engines/default/engine/interface/WorldAchievements.lua index 684a724601..8344fc9293 100644 --- a/game/engines/default/engine/interface/WorldAchievements.lua +++ b/game/engines/default/engine/interface/WorldAchievements.lua @@ -88,7 +88,7 @@ function _M:gainPersonalAchievement(silent, id, src, ...) src.achievements = src.achievements or {} if src.achievements[id] then return end - src.achievements[id] = {turn=game.turn, when=os.date("%Y-%m-%d %H:%M:%S")} + src.achievements[id] = {turn=game.turn, who=self:achievementWho(src), when=os.date("%Y-%m-%d %H:%M:%S")} if not silent then game.log("#LIGHT_GREEN#Personal New Achievement: %s!", a.name) Dialog:simplePopup("Personal New Achievement: #LIGHT_GREEN#"..a.name, a.desc) diff --git a/game/modules/tome/class/World.lua b/game/modules/tome/class/World.lua index db1c2d5f3c..71e016820e 100644 --- a/game/modules/tome/class/World.lua +++ b/game/modules/tome/class/World.lua @@ -41,7 +41,8 @@ end --- Format an achievement source -- @param src the actor who did it function _M:achievementWho(src) - return src.name.." the "..game.player.descriptor.subrace.." "..game.player.descriptor.subclass + local p = game.party:findMember{main=true} + return p.name.." the "..p.descriptor.subrace.." "..p.descriptor.subclass.." level "..p.level end --- Gain an achievement diff --git a/game/modules/tome/class/interface/PlayerDumpJSON.lua b/game/modules/tome/class/interface/PlayerDumpJSON.lua index 41b456bda9..76f17a1b23 100644 --- a/game/modules/tome/class/interface/PlayerDumpJSON.lua +++ b/game/modules/tome/class/interface/PlayerDumpJSON.lua @@ -182,7 +182,7 @@ function _M:dumpToJSON(js) immune_type = "teleport_immune" immune_name = "Teleport Resistance" if self:attr(immune_type) then d[#d+1] = { [immune_name] = string.format("%d%%", util.bound(self:attr(immune_type) * 100, 0, 100)) } end ------------------------------------------------------------------- - -- Effects + -- Talents ------------------------------------------------------------------- local tdef = js:newSection("talents", "talents", "pairs", "add") for i, tt in ipairs(self.talents_types_def) do @@ -199,7 +199,8 @@ function _M:dumpToJSON(js) local typename = "class" if t.generic then typename = "generic" end local skillname = ("<ul><li>%s (%s)</li></ul>"):format(t.name, typename) - tdef[#tdef+1] = { [skillname] = ("%d/%d"):format(self:getTalentLevelRaw(t.id), t.points) } + local desc = self:getTalentFullDescription(t):toString() + tdef[#tdef+1] = { [skillname] = {val=("%d/%d"):format(self:getTalentLevelRaw(t.id), t.points), tooltip=desc} } end end end @@ -241,7 +242,7 @@ function _M:dumpToJSON(js) local achs = js:newSection("achievements", "achievements", "pairs", "break") for id, data in pairs(self.achievements or {}) do local a = world:getAchievementFromId(id) - achs[#achs+1] = { [a.name] = {val=game.calendar:getTimeDate(data.turn, "%s %s %s year of Ascendancy at %02d:%02d"), tooltip=a.desc} } + achs[#achs+1] = { [a.name] = {val=game.calendar:getTimeDate(data.turn, "%s %s %s year of Ascendancy at %02d:%02d"), tooltip=a.desc.."\nBy "..data.who} } end table.sort(achs, function(a, b) local aname = next(a) local bname = next(b) return aname < bname end) -- GitLab