The rottags key alone now toggles hog tags; preecise+rottags is used to cycle tags
I figured that the toggling hog tags on and off is a bit
more important than changing the tag types, because you sometimes
run into a hog whose tags block your view, so a 1-key press is
helpful. On the other hand, you probably only want to changing the
tag types in the game once (if at all).
--- a/QTfrontend/binds.cpp Thu Feb 15 13:34:17 2018 +0100
+++ b/QTfrontend/binds.cpp Thu Feb 15 13:49:14 2018 +0100
@@ -69,7 +69,7 @@
{"+speedup", "s", QT_TRANSLATE_NOOP("binds", "speed up replay"), NULL, QT_TRANSLATE_NOOP("binds (descriptions)", "Demo replay:")},
//: This refers to the team info bars (name/flag/health) of all teams. These are shown at the bottom center of the screen
{"rotmask", "delete", QT_TRANSLATE_NOOP("binds", "toggle team bars"), NULL, QT_TRANSLATE_NOOP("binds (descriptions)", "Heads-up display:")},
- {"rottags", "home", QT_TRANSLATE_NOOP("binds", "change hedgehog tags"), NULL, NULL},
+ {"rottags", "home", QT_TRANSLATE_NOOP("binds", "toggle hedgehog tags"), NULL, NULL},
#ifdef VIDEOREC
{"record", "r", QT_TRANSLATE_NOOP("binds", "record"), NULL, QT_TRANSLATE_NOOP("binds (descriptions)", "Record video:")}
#endif
--- a/README.md Thu Feb 15 13:34:17 2018 +0100
+++ b/README.md Thu Feb 15 13:49:14 2018 +0100
@@ -75,8 +75,8 @@
These are lesser-known controls of Hedgewars, they are based on your
configured controls:
-* Precise + Change hedgehog tags: Turn all hedgehog tags on and off
-* Switch + Change hedgehog tags: Toggle hedgehog tag translucency
+* Precise + Toggle hedgehog tags: Change visible hedgehog tags (team name/hog name/health)
+* Switch + Toggle hedgehog tags: Toggle hedgehog tag translucency
* Precise + Toggle team bars + Switch: Toggle HUD
* Precise + Capture (screenshot key): Save current map + mask into Screenshot directory
--- a/hedgewars/uCommandHandlers.pas Thu Feb 15 13:34:17 2018 +0100
+++ b/hedgewars/uCommandHandlers.pas Thu Feb 15 13:49:14 2018 +0100
@@ -637,24 +637,24 @@
cTagsMask:= cTagsMask and (not htTransparent);
cPrevTagsMask:= cPrevTagsMask and (not htTransparent)
end
-// Rotate Tags key + Precise: Toggle all tags on and off
+// Rotate Tags key + Precise: Cycle through hog tags (keeping translucency)
else if LocalMessage and gmPrecise = gmPrecise then
+ begin
+ cPrevTagsMask:= cTagsMask;
+ if ((GameFlags and gfInvulnerable) = 0) then
+ cTagsMask:= cTagsMasks[cTagsMask]
+ else
+ cTagsMask:= cTagsMasksNoHealth[cTagsMask]
+ end
+// Rotate Tags key only: Toggle all hog tags on and off
+else
if ((cTagsMask and (htTeamName or htName or htHealth)) = 0) then
cTagsMask:= cPrevTagsMask
else
begin
cPrevTagsMask:= cTagsMask;
cTagsMask:= cTagsMask and (not (htTeamName or htName or htHealth))
- end
-// Rotate Tags key only: Rotate hog tags
-else
- begin
- cPrevTagsMask:= cTagsMask;
- if ((GameFlags and gfInvulnerable) = 0) then
- cTagsMask:= cTagsMasks[cTagsMask]
- else
- cTagsMask:= cTagsMasksNoHealth[cTagsMask]
- end;
+ end;
end;
procedure chSpeedup_p(var s: shortstring);