# HG changeset patch # User unc0rr # Date 1377293840 -14400 # Node ID d95ac99925296abf565efda20ae7943494b05519 # Parent 6564baf7dedf88ac8a1d7636ea0f58b351072df8 Fix script flaw in detection of best team when sending achievement info diff -r 6564baf7dedf -r d95ac9992529 hedgewars/uStats.pas --- a/hedgewars/uStats.pas Sat Aug 24 00:13:15 2013 +0400 +++ b/hedgewars/uStats.pas Sat Aug 24 01:37:20 2013 +0400 @@ -312,8 +312,8 @@ end; procedure declareAchievement(id, teamname, location: shortstring; value: LongInt); -begin - if (length(id) = 0) or (length(teamname) = 0) then exit; +begin +if (length(id) = 0) or (length(teamname) = 0) or (length(location) = 0) then exit; WriteLnToConsole('ACHIEVEMENT'); WriteLnToConsole(id); WriteLnToConsole(teamname); diff -r 6564baf7dedf -r d95ac9992529 share/hedgewars/Data/Maps/TrophyRace/map.lua --- a/share/hedgewars/Data/Maps/TrophyRace/map.lua Sat Aug 24 00:13:15 2013 +0400 +++ b/share/hedgewars/Data/Maps/TrophyRace/map.lua Sat Aug 24 01:37:20 2013 +0400 @@ -31,6 +31,7 @@ -- hog with best time local besthog = nil +local besthogteam = "" -- hog with worst time (per round) local worsthog = nil @@ -112,6 +113,7 @@ if ttime < besttime then besttime = ttime besthog = CurrentHedgehog + besthogteam = GetHogTeamName(besthog) hscore = hscore .. loc("NEW fastest lap: ") else hscore = hscore .. loc("Fastest lap: ") @@ -165,6 +167,6 @@ function onAchievementsDeclaration() if besthog ~= nil then - DeclareAchievement("rope race", GetHogTeamName(besthog), "TrophyRace", besttime) + DeclareAchievement("rope race", besthogteam, "TrophyRace", besttime) end end