Add observer vision stats.

This commit is contained in:
Matthias Mailänder
2022-10-03 12:55:45 +02:00
committed by abcdefg30
parent e7dcbb3c2d
commit eb897d755e
7 changed files with 219 additions and 116 deletions

View File

@@ -69,6 +69,7 @@ namespace OpenRA.Traits
{ {
public enum SourceType : byte { PassiveVisibility, Shroud, Visibility } public enum SourceType : byte { PassiveVisibility, Shroud, Visibility }
public event Action<PPos> OnShroudChanged; public event Action<PPos> OnShroudChanged;
public int RevealedCells { get; private set; }
enum ShroudCellType : byte { Shroud, Fog, Visible } enum ShroudCellType : byte { Shroud, Fog, Visible }
class ShroudSource class ShroudSource
@@ -155,6 +156,9 @@ namespace OpenRA.Traits
ExploreMapEnabled = gs.OptionOrDefault("explored", info.ExploredMapCheckboxEnabled); ExploreMapEnabled = gs.OptionOrDefault("explored", info.ExploredMapCheckboxEnabled);
if (ExploreMapEnabled) if (ExploreMapEnabled)
self.World.AddFrameEndTask(w => ExploreAll()); self.World.AddFrameEndTask(w => ExploreAll());
if (!fogEnabled && ExploreMapEnabled)
RevealedCells = map.ProjectedCells.Length;
} }
void ITick.Tick(Actor self) void ITick.Tick(Actor self)
@@ -205,6 +209,17 @@ namespace OpenRA.Traits
var puv = touched.PPosFromIndex(index); var puv = touched.PPosFromIndex(index);
if (map.Contains(puv)) if (map.Contains(puv))
OnShroudChanged(puv); OnShroudChanged(puv);
if (!disabledChanged && (fogEnabled || !ExploreMapEnabled))
{
if (type == ShroudCellType.Visible)
RevealedCells++;
else if (fogEnabled && oldResolvedType == ShroudCellType.Visible)
RevealedCells--;
}
if (self.Owner.WinState == WinState.Lost)
RevealedCells = 0;
} }
} }

View File

@@ -341,6 +341,9 @@ namespace OpenRA.Mods.Common.Widgets.Logic
var armyText = new CachedTransform<int, string>(i => "$" + i); var armyText = new CachedTransform<int, string>(i => "$" + i);
template.Get<LabelWidget>("ARMY_VALUE").GetText = () => armyText.Update(stats.ArmyValue); template.Get<LabelWidget>("ARMY_VALUE").GetText = () => armyText.Update(stats.ArmyValue);
var visionText = new CachedTransform<int, string>(i => Vision(i));
template.Get<LabelWidget>("VISION").GetText = () => player.Shroud.Disabled ? "100%" : visionText.Update(player.Shroud.RevealedCells);
return template; return template;
} }
@@ -569,6 +572,11 @@ namespace OpenRA.Mods.Common.Widgets.Logic
return (world.WorldTick == 0 ? 0 : orders / (world.WorldTick / 1500.0)).ToString("F1"); return (world.WorldTick == 0 ? 0 : orders / (world.WorldTick / 1500.0)).ToString("F1");
} }
string Vision(int revealedCells)
{
return Math.Ceiling(revealedCells / (float)world.Map.ProjectedCells.Length * 100).ToString("F0") + "%";
}
static Color GetPowerColor(PowerState state) static Color GetPowerColor(PowerState state)
{ {
if (state == PowerState.Critical) if (state == PowerState.Critical)

View File

@@ -602,7 +602,7 @@ Container@OBSERVER_WIDGETS:
Container@COMBAT_STATS_HEADERS: Container@COMBAT_STATS_HEADERS:
X: 0 X: 0
Y: 0 Y: 0
Width: 730 Width: 760
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Children: Children:
ColorBlock@HEADER_COLOR: ColorBlock@HEADER_COLOR:
@@ -648,48 +648,57 @@ Container@OBSERVER_WIDGETS:
Label@UNITS_KILLED_HEADER: Label@UNITS_KILLED_HEADER:
X: 310 X: 310
Y: 0 Y: 0
Width: 90 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Font: Bold Font: Bold
Text: Units Killed Text: U. Killed
Align: Right Align: Right
Shadow: True Shadow: True
Label@UNITS_DEAD_HEADER: Label@UNITS_DEAD_HEADER:
X: 400 X: 385
Y: 0 Y: 0
Width: 80 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Font: Bold Font: Bold
Text: Units Lost Text: Units Lost
Align: Right Align: Right
Shadow: True Shadow: True
Label@BUILDINGS_KILLED_HEADER: Label@BUILDINGS_KILLED_HEADER:
X: 480 X: 460
Y: 0
Width: 85
Height: PARENT_BOTTOM
Font: Bold
Text: Bldg Killed
Align: Right
Shadow: True
Label@BUILDINGS_DEAD_HEADER:
X: 565
Y: 0 Y: 0
Width: 75 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Font: Bold Font: Bold
Text: Bldg Lost Text: B. Killed
Align: Right
Shadow: True
Label@BUILDINGS_DEAD_HEADER:
X: 535
Y: 0
Width: 75
Height: PARENT_BOTTOM
Font: Bold
Text: B. Lost
Align: Right Align: Right
Shadow: True Shadow: True
Label@ARMY_VALUE_HEADER: Label@ARMY_VALUE_HEADER:
X: 640 X: 610
Y: 0 Y: 0
Width: 85 Width: 90
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Font: Bold Font: Bold
Text: Army Value Text: Army Value
Align: Right Align: Right
Shadow: True Shadow: True
Label@VISION_HEADER:
X: 700
Y: 0
Width: 60
Height: PARENT_BOTTOM
Font: Bold
Text: Vision
Align: Right
Shadow: True
ScrollPanel@PLAYER_STATS_PANEL: ScrollPanel@PLAYER_STATS_PANEL:
X: 0 X: 0
Y: 54 Y: 54
@@ -1008,7 +1017,7 @@ Container@OBSERVER_WIDGETS:
ScrollItem@COMBAT_PLAYER_TEMPLATE: ScrollItem@COMBAT_PLAYER_TEMPLATE:
X: 0 X: 0
Y: 0 Y: 0
Width: 730 Width: 760
Height: 24 Height: 24
Background: scrollitem-nohover Background: scrollitem-nohover
Children: Children:
@@ -1053,38 +1062,45 @@ Container@OBSERVER_WIDGETS:
Label@UNITS_KILLED: Label@UNITS_KILLED:
X: 310 X: 310
Y: 0 Y: 0
Width: 90 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Align: Right Align: Right
Shadow: True Shadow: True
Label@UNITS_DEAD: Label@UNITS_DEAD:
X: 400 X: 385
Y: 0 Y: 0
Width: 80 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Align: Right Align: Right
Shadow: True Shadow: True
Label@BUILDINGS_KILLED: Label@BUILDINGS_KILLED:
X: 480 X: 460
Y: 0 Y: 0
Width: 85 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Align: Right Align: Right
Shadow: True Shadow: True
Label@BUILDINGS_DEAD: Label@BUILDINGS_DEAD:
X: 565 X: 535
Y: 0 Y: 0
Width: 75 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Align: Right Align: Right
Shadow: True Shadow: True
Label@ARMY_VALUE: Label@ARMY_VALUE:
X: 640 X: 605
Y: 0 Y: 0
Width: 85 Width: 85
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Align: Right Align: Right
Shadow: True Shadow: True
Label@VISION:
X: 690
Y: 0
Width: 60
Height: PARENT_BOTTOM
Align: Right
Shadow: True
Container@INCOME_GRAPH_CONTAINER: Container@INCOME_GRAPH_CONTAINER:
X: 0 X: 0
Y: 30 Y: 30

View File

@@ -475,7 +475,7 @@ Container@OBSERVER_WIDGETS:
Container@COMBAT_STATS_HEADERS: Container@COMBAT_STATS_HEADERS:
X: 0 X: 0
Y: 0 Y: 0
Width: 735 Width: 760
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Children: Children:
ColorBlock@HEADER_COLOR: ColorBlock@HEADER_COLOR:
@@ -519,43 +519,43 @@ Container@OBSERVER_WIDGETS:
Align: Right Align: Right
Shadow: True Shadow: True
Label@UNITS_KILLED_HEADER: Label@UNITS_KILLED_HEADER:
X: 305 X: 310
Y: 0 Y: 0
Width: 90 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Font: Bold Font: Bold
Text: Units Killed Text: U. Killed
Align: Right Align: Right
Shadow: True Shadow: True
Label@UNITS_DEAD_HEADER: Label@UNITS_DEAD_HEADER:
X: 395 X: 385
Y: 0 Y: 0
Width: 80 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Font: Bold Font: Bold
Text: Units Lost Text: U. Lost
Align: Right Align: Right
Shadow: True Shadow: True
Label@BUILDINGS_KILLED_HEADER: Label@BUILDINGS_KILLED_HEADER:
X: 475 X: 460
Y: 0 Y: 0
Width: 85 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Font: Bold Font: Bold
Text: Bldg Killed Text: B. Killed
Align: Right Align: Right
Shadow: True Shadow: True
Label@BUILDINGS_DEAD_HEADER: Label@BUILDINGS_DEAD_HEADER:
X: 560 X: 535
Y: 0 Y: 0
Width: 80 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Font: Bold Font: Bold
Text: Bldg Lost Text: B. Lost
Align: Right Align: Right
Shadow: True Shadow: True
Label@ARMY_VALUE_HEADER: Label@ARMY_VALUE_HEADER:
X: 640 X: 610
Y: 0 Y: 0
Width: 90 Width: 90
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
@@ -563,6 +563,15 @@ Container@OBSERVER_WIDGETS:
Text: Army Value Text: Army Value
Align: Right Align: Right
Shadow: True Shadow: True
Label@VISION_HEADER:
X: 700
Y: 0
Width: 60
Height: PARENT_BOTTOM
Font: Bold
Text: Vision
Align: Right
Shadow: True
ScrollPanel@PLAYER_STATS_PANEL: ScrollPanel@PLAYER_STATS_PANEL:
X: 0 X: 0
Y: 55 Y: 55
@@ -866,7 +875,7 @@ Container@OBSERVER_WIDGETS:
ScrollItem@COMBAT_PLAYER_TEMPLATE: ScrollItem@COMBAT_PLAYER_TEMPLATE:
X: 0 X: 0
Y: 0 Y: 0
Width: 735 Width: 760
Height: 25 Height: 25
Background: scrollitem-nohover Background: scrollitem-nohover
Children: Children:
@@ -907,40 +916,47 @@ Container@OBSERVER_WIDGETS:
Align: Right Align: Right
Shadow: True Shadow: True
Label@UNITS_KILLED: Label@UNITS_KILLED:
X: 305 X: 310
Y: 0 Y: 0
Width: 90 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Align: Right Align: Right
Shadow: True Shadow: True
Label@UNITS_DEAD: Label@UNITS_DEAD:
X: 395 X: 385
Y: 0 Y: 0
Width: 80 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Align: Right Align: Right
Shadow: True Shadow: True
Label@BUILDINGS_KILLED: Label@BUILDINGS_KILLED:
X: 475 X: 460
Y: 0 Y: 0
Width: 85 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Align: Right Align: Right
Shadow: True Shadow: True
Label@BUILDINGS_DEAD: Label@BUILDINGS_DEAD:
X: 560 X: 535
Y: 0 Y: 0
Width: 80 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Align: Right Align: Right
Shadow: True Shadow: True
Label@ARMY_VALUE: Label@ARMY_VALUE:
X: 640 X: 610
Y: 0 Y: 0
Width: 90 Width: 90
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Align: Right Align: Right
Shadow: True Shadow: True
Label@VISION:
X: 700
Y: 0
Width: 60
Height: PARENT_BOTTOM
Align: Right
Shadow: True
Container@INCOME_GRAPH_CONTAINER: Container@INCOME_GRAPH_CONTAINER:
X: 0 X: 0
Y: 30 Y: 30

View File

@@ -495,7 +495,7 @@ Container@OBSERVER_WIDGETS:
Container@COMBAT_STATS_HEADERS: Container@COMBAT_STATS_HEADERS:
X: 0 X: 0
Y: 0 Y: 0
Width: 735 Width: 755
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Children: Children:
ColorBlock@HEADER_COLOR: ColorBlock@HEADER_COLOR:
@@ -541,41 +541,41 @@ Container@OBSERVER_WIDGETS:
Label@UNITS_KILLED_HEADER: Label@UNITS_KILLED_HEADER:
X: 305 X: 305
Y: 0 Y: 0
Width: 90 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Font: Bold Font: Bold
Text: Units Killed Text: U. Killed
Align: Right Align: Right
Shadow: True Shadow: True
Label@UNITS_DEAD_HEADER: Label@UNITS_DEAD_HEADER:
X: 395 X: 380
Y: 0 Y: 0
Width: 80 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Font: Bold Font: Bold
Text: Units Lost Text: U. Lost
Align: Right Align: Right
Shadow: True Shadow: True
Label@BUILDINGS_KILLED_HEADER: Label@BUILDINGS_KILLED_HEADER:
X: 475 X: 455
Y: 0 Y: 0
Width: 85 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Font: Bold Font: Bold
Text: Bldg Killed Text: B. Killed
Align: Right Align: Right
Shadow: True Shadow: True
Label@BUILDINGS_DEAD_HEADER: Label@BUILDINGS_DEAD_HEADER:
X: 560 X: 530
Y: 0 Y: 0
Width: 80 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Font: Bold Font: Bold
Text: Bldg Lost Text: B. Lost
Align: Right Align: Right
Shadow: True Shadow: True
Label@ARMY_VALUE_HEADER: Label@ARMY_VALUE_HEADER:
X: 640 X: 605
Y: 0 Y: 0
Width: 90 Width: 90
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
@@ -583,6 +583,15 @@ Container@OBSERVER_WIDGETS:
Text: Army Value Text: Army Value
Align: Right Align: Right
Shadow: True Shadow: True
Label@VISION_HEADER:
X: 695
Y: 0
Width: 60
Height: PARENT_BOTTOM
Font: Bold
Text: Vision
Align: Right
Shadow: True
ScrollPanel@PLAYER_STATS_PANEL: ScrollPanel@PLAYER_STATS_PANEL:
X: 0 X: 0
Y: 55 Y: 55
@@ -889,7 +898,7 @@ Container@OBSERVER_WIDGETS:
ScrollItem@COMBAT_PLAYER_TEMPLATE: ScrollItem@COMBAT_PLAYER_TEMPLATE:
X: 0 X: 0
Y: 0 Y: 0
Width: 735 Width: 755
Height: 25 Height: 25
Background: scrollitem-nohover Background: scrollitem-nohover
Children: Children:
@@ -932,38 +941,45 @@ Container@OBSERVER_WIDGETS:
Label@UNITS_KILLED: Label@UNITS_KILLED:
X: 305 X: 305
Y: 0 Y: 0
Width: 90 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Align: Right Align: Right
Shadow: True Shadow: True
Label@UNITS_DEAD: Label@UNITS_DEAD:
X: 395 X: 380
Y: 0 Y: 0
Width: 80 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Align: Right Align: Right
Shadow: True Shadow: True
Label@BUILDINGS_KILLED: Label@BUILDINGS_KILLED:
X: 475 X: 455
Y: 0 Y: 0
Width: 85 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Align: Right Align: Right
Shadow: True Shadow: True
Label@BUILDINGS_DEAD: Label@BUILDINGS_DEAD:
X: 560 X: 530
Y: 0 Y: 0
Width: 80 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Align: Right Align: Right
Shadow: True Shadow: True
Label@ARMY_VALUE: Label@ARMY_VALUE:
X: 640 X: 605
Y: 0 Y: 0
Width: 90 Width: 90
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Align: Right Align: Right
Shadow: True Shadow: True
Label@VISION:
X: 695
Y: 0
Width: 60
Height: PARENT_BOTTOM
Align: Right
Shadow: True
Container@INCOME_GRAPH_CONTAINER: Container@INCOME_GRAPH_CONTAINER:
X: 0 X: 0
Y: 30 Y: 30

View File

@@ -543,7 +543,7 @@ Container@OBSERVER_WIDGETS:
Container@COMBAT_STATS_HEADERS: Container@COMBAT_STATS_HEADERS:
X: 0 X: 0
Y: 0 Y: 0
Width: 740 Width: 760
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Children: Children:
ColorBlock@HEADER_COLOR: ColorBlock@HEADER_COLOR:
@@ -589,41 +589,41 @@ Container@OBSERVER_WIDGETS:
Label@UNITS_KILLED_HEADER: Label@UNITS_KILLED_HEADER:
X: 310 X: 310
Y: 0 Y: 0
Width: 90 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Font: Bold Font: Bold
Text: Units Killed Text: U. Killed
Align: Right Align: Right
Shadow: True Shadow: True
Label@UNITS_DEAD_HEADER: Label@UNITS_DEAD_HEADER:
X: 400 X: 385
Y: 0 Y: 0
Width: 80 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Font: Bold Font: Bold
Text: Units Lost Text: U. Lost
Align: Right Align: Right
Shadow: True Shadow: True
Label@BUILDINGS_KILLED_HEADER: Label@BUILDINGS_KILLED_HEADER:
X: 480 X: 460
Y: 0 Y: 0
Width: 85 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Font: Bold Font: Bold
Text: Bldg Killed Text: B. Killed
Align: Right Align: Right
Shadow: True Shadow: True
Label@BUILDINGS_DEAD_HEADER: Label@BUILDINGS_DEAD_HEADER:
X: 565 X: 535
Y: 0 Y: 0
Width: 80 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Font: Bold Font: Bold
Text: Bldg Lost Text: B. Lost
Align: Right Align: Right
Shadow: True Shadow: True
Label@ARMY_VALUE_HEADER: Label@ARMY_VALUE_HEADER:
X: 645 X: 610
Y: 0 Y: 0
Width: 90 Width: 90
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
@@ -631,6 +631,15 @@ Container@OBSERVER_WIDGETS:
Text: Army Value Text: Army Value
Align: Right Align: Right
Shadow: True Shadow: True
Label@VISION_HEADER:
X: 700
Y: 0
Width: 60
Height: PARENT_BOTTOM
Font: Bold
Text: Vision
Align: Right
Shadow: True
ScrollPanel@PLAYER_STATS_PANEL: ScrollPanel@PLAYER_STATS_PANEL:
X: 0 X: 0
Y: 54 Y: 54
@@ -951,7 +960,7 @@ Container@OBSERVER_WIDGETS:
ScrollItem@COMBAT_PLAYER_TEMPLATE: ScrollItem@COMBAT_PLAYER_TEMPLATE:
X: 0 X: 0
Y: 0 Y: 0
Width: 740 Width: 760
Height: 24 Height: 24
Background: scrollitem-nohover Background: scrollitem-nohover
Children: Children:
@@ -996,38 +1005,45 @@ Container@OBSERVER_WIDGETS:
Label@UNITS_KILLED: Label@UNITS_KILLED:
X: 310 X: 310
Y: 0 Y: 0
Width: 90 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Align: Right Align: Right
Shadow: True Shadow: True
Label@UNITS_DEAD: Label@UNITS_DEAD:
X: 400 X: 385
Y: 0 Y: 0
Width: 80 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Align: Right Align: Right
Shadow: True Shadow: True
Label@BUILDINGS_KILLED: Label@BUILDINGS_KILLED:
X: 480 X: 460
Y: 0 Y: 0
Width: 85 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Align: Right Align: Right
Shadow: True Shadow: True
Label@BUILDINGS_DEAD: Label@BUILDINGS_DEAD:
X: 565 X: 535
Y: 0 Y: 0
Width: 80 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Align: Right Align: Right
Shadow: True Shadow: True
Label@ARMY_VALUE: Label@ARMY_VALUE:
X: 645 X: 610
Y: 0 Y: 0
Width: 90 Width: 90
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Align: Right Align: Right
Shadow: True Shadow: True
Label@VISION:
X: 700
Y: 0
Width: 60
Height: PARENT_BOTTOM
Align: Right
Shadow: True
Container@INCOME_GRAPH_CONTAINER: Container@INCOME_GRAPH_CONTAINER:
X: 0 X: 0
Y: 30 Y: 30

View File

@@ -495,7 +495,7 @@ Container@OBSERVER_WIDGETS:
Container@COMBAT_STATS_HEADERS: Container@COMBAT_STATS_HEADERS:
X: 0 X: 0
Y: 0 Y: 0
Width: 740 Width: 760
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Children: Children:
ColorBlock@HEADER_COLOR: ColorBlock@HEADER_COLOR:
@@ -541,41 +541,41 @@ Container@OBSERVER_WIDGETS:
Label@UNITS_KILLED_HEADER: Label@UNITS_KILLED_HEADER:
X: 310 X: 310
Y: 0 Y: 0
Width: 90 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Font: Bold Font: Bold
Text: Units Killed Text: U. Killed
Align: Right Align: Right
Shadow: True Shadow: True
Label@UNITS_DEAD_HEADER: Label@UNITS_DEAD_HEADER:
X: 400 X: 385
Y: 0 Y: 0
Width: 80 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Font: Bold Font: Bold
Text: Units Lost Text: U. Lost
Align: Right Align: Right
Shadow: True Shadow: True
Label@BUILDINGS_KILLED_HEADER: Label@BUILDINGS_KILLED_HEADER:
X: 480 X: 460
Y: 0 Y: 0
Width: 85 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Font: Bold Font: Bold
Text: Bldg Killed Text: B. Killed
Align: Right Align: Right
Shadow: True Shadow: True
Label@BUILDINGS_DEAD_HEADER: Label@BUILDINGS_DEAD_HEADER:
X: 565 X: 535
Y: 0 Y: 0
Width: 80 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Font: Bold Font: Bold
Text: Bldg Lost Text: B. Lost
Align: Right Align: Right
Shadow: True Shadow: True
Label@ARMY_VALUE_HEADER: Label@ARMY_VALUE_HEADER:
X: 645 X: 610
Y: 0 Y: 0
Width: 90 Width: 90
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
@@ -583,6 +583,15 @@ Container@OBSERVER_WIDGETS:
Text: Army Value Text: Army Value
Align: Right Align: Right
Shadow: True Shadow: True
Label@VISION_HEADER:
X: 700
Y: 0
Width: 60
Height: PARENT_BOTTOM
Font: Bold
Text: Vision
Align: Right
Shadow: True
ScrollPanel@PLAYER_STATS_PANEL: ScrollPanel@PLAYER_STATS_PANEL:
X: 0 X: 0
Y: 54 Y: 54
@@ -896,7 +905,7 @@ Container@OBSERVER_WIDGETS:
ScrollItem@COMBAT_PLAYER_TEMPLATE: ScrollItem@COMBAT_PLAYER_TEMPLATE:
X: 0 X: 0
Y: 0 Y: 0
Width: 740 Width: 760
Height: 24 Height: 24
Background: scrollitem-nohover Background: scrollitem-nohover
Children: Children:
@@ -941,38 +950,45 @@ Container@OBSERVER_WIDGETS:
Label@UNITS_KILLED: Label@UNITS_KILLED:
X: 310 X: 310
Y: 0 Y: 0
Width: 90 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Align: Right Align: Right
Shadow: True Shadow: True
Label@UNITS_DEAD: Label@UNITS_DEAD:
X: 400 X: 385
Y: 0 Y: 0
Width: 80 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Align: Right Align: Right
Shadow: True Shadow: True
Label@BUILDINGS_KILLED: Label@BUILDINGS_KILLED:
X: 480 X: 460
Y: 0 Y: 0
Width: 85 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Align: Right Align: Right
Shadow: True Shadow: True
Label@BUILDINGS_DEAD: Label@BUILDINGS_DEAD:
X: 565 X: 535
Y: 0 Y: 0
Width: 80 Width: 75
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Align: Right Align: Right
Shadow: True Shadow: True
Label@ARMY_VALUE: Label@ARMY_VALUE:
X: 645 X: 610
Y: 0 Y: 0
Width: 90 Width: 90
Height: PARENT_BOTTOM Height: PARENT_BOTTOM
Align: Right Align: Right
Shadow: True Shadow: True
Label@VISION:
X: 700
Y: 0
Width: 60
Height: PARENT_BOTTOM
Align: Right
Shadow: True
Container@INCOME_GRAPH_CONTAINER: Container@INCOME_GRAPH_CONTAINER:
X: 0 X: 0
Y: 30 Y: 30