# HG changeset patch # User Wuzzy # Date 1536674423 -7200 # Node ID c084bd4400092c01b0a4c4d9e7607cbc5403035a # Parent 2e8b3081cf80f59ad0312d26aa25fd8a5fcb4044 Add funny message in stats screen when everyone wins diff -r 2e8b3081cf80 -r c084bd440009 QTfrontend/hedgewars.qrc --- a/QTfrontend/hedgewars.qrc Sun Sep 09 12:25:23 2018 +0200 +++ b/QTfrontend/hedgewars.qrc Tue Sep 11 16:00:23 2018 +0200 @@ -209,6 +209,7 @@ res/StatsMostSelfDamage.png res/StatsSelfKilled.png res/StatsSkipped.png + res/StatsEverAfter.png res/StatsCustomAchievement.png res/Start.png res/mapRandom.png diff -r 2e8b3081cf80 -r c084bd440009 QTfrontend/res/StatsEverAfter.png Binary file QTfrontend/res/StatsEverAfter.png has changed diff -r 2e8b3081cf80 -r c084bd440009 QTfrontend/ui/page/pagegamestats.cpp --- a/QTfrontend/ui/page/pagegamestats.cpp Sun Sep 09 12:25:23 2018 +0200 +++ b/QTfrontend/ui/page/pagegamestats.cpp Tue Sep 11 16:00:23 2018 +0200 @@ -401,5 +401,11 @@ scriptPlayerPosition = info.toInt(); break; } + case 'h' : + { + QString message = "

" + PageGameStats::tr("With everyone having the same clan color, there was no reason to fight. And so the hedgehogs happily lived in peace ever after.") + "

"; + AddStatText(message); + break; + } } } diff -r 2e8b3081cf80 -r c084bd440009 hedgewars/uIO.pas --- a/hedgewars/uIO.pas Sun Sep 09 12:25:23 2018 +0200 +++ b/hedgewars/uIO.pas Tue Sep 11 16:00:23 2018 +0200 @@ -254,7 +254,7 @@ end; procedure SendStat(sit: TStatInfoType; s: shortstring); -const stc: array [TStatInfoType] of char = ('r', 'D', 'k', 'K', 'H', 'T', 'P', 's', 'S', 'B', 'c', 'g', 'p', 'R'); +const stc: array [TStatInfoType] of char = ('r', 'D', 'k', 'K', 'H', 'T', 'P', 's', 'S', 'B', 'c', 'g', 'p', 'R', 'h'); var buf: shortstring; begin buf:= 'i' + stc[sit] + s; diff -r 2e8b3081cf80 -r c084bd440009 hedgewars/uTeams.pas --- a/hedgewars/uTeams.pas Sun Sep 09 12:25:23 2018 +0200 +++ b/hedgewars/uTeams.pas Tue Sep 11 16:00:23 2018 +0200 @@ -58,6 +58,7 @@ s, cap: ansistring; ts: array[0..(cMaxTeams - 1)] of ansistring; t, AliveCount, i, j: LongInt; + allWin: boolean; begin CheckForWin:= false; AliveCount:= 0; @@ -98,6 +99,7 @@ end else // win begin + allWin:= false; with AliveClan^ do begin if TeamsNumber = 1 then // single team wins @@ -118,8 +120,11 @@ // Write victory message for caption and stats page if (TeamsNumber = cMaxTeams) or (TeamsCount = TeamsNumber) then + begin // No enemies for some reason … Everyone wins!!1! - s:= trmsg[sidWinnerAll] + s:= trmsg[sidWinnerAll]; + allWin:= true; + end else if (TeamsNumber >= 2) and (TeamsNumber < cMaxTeams) then // List all winning teams in a list s:= FormatA(trmsg[TMsgStrId(Ord(sidWinner2) + (TeamsNumber - 2))], ts); @@ -144,6 +149,8 @@ if SendGameResultOn then SendStat(siGameResult, shortstring(s)); + if allWin and SendAchievementsStatsOn then + SendStat(siEverAfter, ''); AddGear(0, 0, gtATFinishGame, 0, _0, _0, 3000) end; SendStats; diff -r 2e8b3081cf80 -r c084bd440009 hedgewars/uTypes.pas --- a/hedgewars/uTypes.pas Sun Sep 09 12:25:23 2018 +0200 +++ b/hedgewars/uTypes.pas Tue Sep 11 16:00:23 2018 +0200 @@ -176,7 +176,7 @@ TStatInfoType = (siGameResult, siMaxStepDamage, siMaxStepKills, siKilledHHs, siClanHealth, siTeamStats, siPlayerKills, siMaxTeamDamage, siMaxTeamKills, siMaxTurnSkips, siCustomAchievement, siGraphTitle, - siPointType, siTeamRank); + siPointType, siTeamRank, siEverAfter); // Various 'emote' animations a hedgehog can do TWave = (waveRollup, waveSad, waveWave, waveHurrah, waveLemonade, waveShrug, waveJuggle); @@ -493,7 +493,7 @@ sidWinner2, sidWinner3, sidWinner4, sidWinner5, sidWinner6, sidWinner7, sidWinnerAll, sidTeamGone, sidTeamBack, sidAutoSkip, sidFPS, sidLuaParsingOff, sidLuaParsingOn, sidLuaParsingDenied, - sidAmmoCount, sidChat, sidChatTeam, sidChatHog); + sidAmmoCount, sidChat, sidChatTeam, sidChatHog, sidEverAfter); TCmdHelpStrId = ( sidCmdHeaderBasic, sidCmdTogglechat, sidCmdTeam, sidCmdMe,