Skip to content

Instantly share code, notes, and snippets.

@Talv
Last active June 25, 2024 15:09
Show Gist options
  • Save Talv/9ffc342948f96fcf6075c6f755a8dc36 to your computer and use it in GitHub Desktop.
Save Talv/9ffc342948f96fcf6075c6f755a8dc36 to your computer and use it in GitHub Desktop.
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<Desc>
<!--
extends CommandPanel tooltip with following references:
- %CurrentHealth%
- %CurrentEnergy%
- %CurrentShields%
- %CurrentUnitType%
- %CurrentHealthRegen%
- %CurrentEnergyRegen%
Examples:
- `Current life regen rate including of *this* unit (including buffs and stuff): %CurrentHealthRegen%`
- `Currently selected unit: <d stringref="Unit,%CurrentUnitType%,Name"/>`
- `Shield regen rate of currently selected unit type: <d ref="Unit,%CurrentUnitType%,ShieldRegenRate"/>`
- All numerical references can be used in d-ref formula with other native references or just numbers, i.e.: `<d ref="0.5*%CurrentHealth%" precision="1"/>`
-->
<Frame type="CommandPanel" name="GameUI/UIContainer/ConsoleUIContainer/CommandPanel" file="GameUI">
<Frame type="CommandTooltip" name="CommandTooltip">
<!--
uncomment to force tooltip to stay on the screen for extended perior of time
(so it can be interacted with using UI Inspector)
-->
<!-- <FadeTime val="600000"/> -->
<!--
obtain UnitTag of currently selected unit / "leader" of the selection
(leader - currently active unit if there are multiple ones selected)
-->
<Frame type="UnitFrame" name="UnitFrame">
<UseSelectionLeader val="True"/>
</Frame>
<Frame type="UnitStatusFrame" name="UnitStatusFrame">
<UnitTag val="{$parent/UnitFrame/@UnitTag}"/>
<Anchor side="Left" relative="$layer" pos="100%" offset="0"/>
<Anchor side="Top" relative="$layer" pos="100%" offset="0"/>
<Anchor side="Right" relative="$layer" pos="200%" offset="0"/>
<Anchor side="Bottom" relative="$layer" pos="200%" offset="0"/>
<Frame type="UnitStatusHealthRegenLabel" name="HealthRegen">
<Anchor relative="$ancestor[@type=UnitStatusFrame]"/>
<Frame type="Label" name="StatusLabel">
<Anchor relative="$ancestor[@type=UnitStatusFrame]"/>
</Frame>
</Frame>
<Frame type="UnitStatusEnergyRegenLabel" name="EnergyRegen">
<Anchor relative="$ancestor[@type=UnitStatusFrame]"/>
<Frame type="Label" name="StatusLabel">
<Anchor relative="$ancestor[@type=UnitStatusFrame]"/>
</Frame>
</Frame>
</Frame>
<!-- "hide" original TipLabel -->
<Frame type="Label" name="TipLabel">
<Anchor side="Top" relative="$parent" pos="Min" offset="0"/>
<Anchor side="Bottom" relative="$parent" pos="Min" offset="0"/>
<Anchor side="Left" relative="$parent" pos="Min" offset="0"/>
<Anchor side="Right" relative="$parent" pos="Min" offset="0"/>
<Alpha val="0"/>
<CollapseLayout val="false"/>
<PreserveAnchorOffset val="false"/>
</Frame>
<Frame type="Label" name="TipLabelExtended" template="CommandButton/CommandTooltipTemplate/TipLabel">
<Text val="{TextFormatFrame/@Text}"/>
<Frame type="TextFormatFrame" name="TextFormatFrame">
<FormatText val="{$parent/$parent/TipLabel/@Text}"/>
<ReplacedName val="CurrentHealth" index="0"/>
<Replacement val="{$parent/$parent/UnitFrame/@CurrentHealth}" index="0"/>
<ReplacedName val="CurrentEnergy" index="1"/>
<Replacement val="{$parent/$parent/UnitFrame/@CurrentEnergy}" index="1"/>
<ReplacedName val="CurrentShields" index="2"/>
<Replacement val="{$parent/$parent/UnitFrame/@CurrentShields}" index="2"/>
<ReplacedName val="CurrentUnitType" index="3"/>
<Replacement val="{$parent/$parent/UnitFrame/@UnitLink}" index="3"/>
<ReplacedName val="CurrentHealthRegen" index="4"/>
<Replacement val="{$parent/$parent/UnitStatusFrame/HealthRegen/@CurrentValue}" index="4"/>
<ReplacedName val="CurrentEnergyRegen" index="5"/>
<Replacement val="{$parent/$parent/UnitStatusFrame/EnergyRegen/@CurrentValue}" index="5"/>
</Frame>
</Frame>
<!-- re-anchor to TipLabelExtended -->
<Frame type="Label" name="AutocastLabel">
<Anchor side="Top" relative="$parent/TipLabelExtended" pos="Max" offset="0"/>
</Frame>
</Frame>
</Frame>
</Desc>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment