N3OW/gui/hud.gui
2026-03-14 02:04:11 +00:00

8574 lines
197 KiB
Text

######################################################
#################### META INFO #######################
######################################################
widget = {
size = { 100% 100% }
name = "meta_info"
visible = "[IsDefaultGUIMode]"
layer = bottom
using = Animation_ShowHide_Standard
flowcontainer = {
name = "observer_status"
visible = "[And( Not(IsGameViewOpen('succession_event')), IsObserver )]"
visible_at_creation = no
parentanchor = bottom|left
position = { 180 -110 }
ignoreinvisible = yes
margin_top = 2
margin_left = 80
margin_right = 2
background = {
using = Background_Area_Dark
}
text_single = {
name = "global_observer_indication"
visible = "[Not(GetPlayer.IsValid)]"
text = "GLOBAL_OBSERVER"
}
text_single = {
name = "player_observer_indication"
visible = "[GetPlayer.IsValid]"
text = "PLAYER_OBSERVER"
}
button_cancel = {
name = "cancel_button"
visible = "[GetPlayer.IsValid]"
size = { 30 30 }
onclick = "[ClearObserver]"
tooltip = "OBSERVER_MODE_ON"
}
icon_observer = {
size = { 30 30 }
visible = "[Not(GetPlayer.IsValid)]"
}
}
## Build version & Beta warning
text_single = {
name = "build_version_text"
visible = "[And( Not(IsGameViewOpen('barbershop')), Not(LiveMode))]"
position = { 5 5 }
tooltip = "[GetBuildVersionDescription]"
text = "VERSION_SHORT"
default_format = "#low"
max_width = 300
}
text_single = {
name = "beta_warning_text"
visible = "[And( Not(IsGameViewOpen('barbershop')), Not(LiveMode))]"
position = { 5 22 }
tooltip = "[GetBuildVersionDescription]"
text = "BETA_BUILD"
default_format = "#low"
max_width = 300
}
error_horse = {
parentanchor = bottom|left
position = { 850 -10 }
visible = "[And( Not(IsGameViewOpen('barbershop')), And( Not( IsPauseMenuShown ), Not(ReleaseMode) ) )]"
}
loaded_mods_icon = {
parentanchor = bottom|left
visible = "[And( Not( IsPauseMenuShown ), And( HasLoadedMods, Not(ReleaseMode) ) )]"
tooltip = "[GetLoadedMods]"
position = { 670 -5 }
}
}
######################################################
#################### TOP RIGHT #######################
######################################################
#Top right: resources and alerts, outliner, and panel tabs
widget = {
name = "ingame_topbar"
visible = "[InGameTopbar.ShouldBeVisible]"
size = { 100% 100% }
layer = hud_layer
using = Animation_ShowHide_Quick
### Ruler Objectives
container = {
visible = "[And( GetPlayersRulerObjectiveDecision.IsValid, Not( IsGameViewOpen( 'hud_ruler_objective' )) )]"
datacontext = "[GetPlayersRulerObjectiveDecision]"
parentanchor = top|left
position = { 8 16 }
using = Animation_ShowHide_Quick
button_round = {
name = "ruler_objective_button"
size = { 84 84 }
alpha = 0.7
onclick = "[ToggleGameView( 'hud_ruler_objective' )]"
tooltip = "SHOW_RULER_OBJECTIVE"
state = {
name = _mouse_enter
alpha = 1
duration = 0.2
using = Animation_Curve_Default
}
state = {
name = _mouse_leave
alpha = 0.7
duration = 0.7
using = Animation_Curve_Default
}
button_ruler_objective = {
parentanchor = center
alwaystransparent = yes
size = { 64 64 }
}
}
}
### Outliner Button
container = {
visible = "[And(Not( GreaterThan_CFixedPoint( GetPlayer.MakeScope.Var('hide_ui_outliner').GetValue, '(CFixedPoint)0' ) ), And( Not( IsGameViewOpen('barbershop') ), And( Not( IsPauseMenuShown ), And(Not(IsRightWindowOpen), IsDefaultGUIMode))))]"
parentanchor = top|right
position = { -3 55 }
using = Animation_ShowHide_Quick
button_round = {
name = "outliner_button"
size = { 35 35 }
alpha = 0.7
onclick = "[ToggleGameView('outliner')]"
tooltip = "TOGGLE_OUTLINER"
state = {
name = _mouse_enter
alpha = 1
duration = 0.2
using = Animation_Curve_Default
}
state = {
name = _mouse_leave
alpha = 0.7
duration = 0.7
using = Animation_Curve_Default
}
button_outliner = {
parentanchor = center
alwaystransparent = yes
size = { 25 25 }
}
}
}
widget = {
layer = hud_layer
size = { 100% 88 }
position = { 0 -24 }
allow_outside = yes
hbox = {
### Alerts
expand = {}
notifications_alerts = {
visible = "[And( Not(IsGameViewOpen('barbershop')), Not( IsPauseMenuShown ) )]"
using = Animation_ShowHide_Quick
}
### Suggestions / Current Situation
widget = {
size = { 80 80 }
widgetid = "suggestions_placer"
visible = "[Not( IsPauseMenuShown )]"
}
spacer = {
size = { 16 1 }
}
#### Top Right Bar
resources_top_right_bar = {
name = "top_bar"
visible = "[And(Not( IsPauseMenuShown ), Not( GreaterThan_CFixedPoint( GetPlayer.MakeScope.Var('hide_ui_top_bar').GetValue, '(CFixedPoint)0' ) ))]"
}
}
}
### Main Tabs
widget = {
name = "main_tabs"
visible = "[And(And(And( Not( IsPauseMenuShown ), And(Or(Not(IsObserver), GetPlayer.IsValid), IsDefaultGUIMode)), Not(IsGameViewOpen('struggle'))), Not( GreaterThan_CFixedPoint( GetPlayer.MakeScope.Var('hide_ui_main_tabs').GetValue, '(CFixedPoint)0' ) ))]"
parentanchor = top|right
position = { 0 105 }
size = { 50 0 }
allow_outside = yes
using = Animation_ShowHide_Quick
vbox = {
alwaystransparent = no
filter_mouse = all
visible = "[Not(IsGameViewOpen('barbershop'))]"
margin = { 5 10 }
Background = {
visible = "[And(Not(IsRightWindowOpen) , Not(IsGameViewOpen('barbershop')) )]"
texture = "gfx/interface/skinned/hud_maintab_bg_middle.dds"
spriteType = CorneredTiled
texture_density = 2
margin = { 0 -50 }
}
Background = {
visible = "[And(Not(IsRightWindowOpen) , Not(IsGameViewOpen('barbershop')) )]"
spriteType = CorneredStretched
spriteborder_top = 100
parentanchor = top|right
texture_density = 2
size = { 50 100 }
texture = "gfx/interface/skinned/hud_maintab_bg_top.dds"
}
Background = {
visible = "[And(Not(IsRightWindowOpen) , Not(IsGameViewOpen('barbershop')) )]"
spriteType = CorneredStretched
spriteborder_bottom = 100
parentanchor = top|right
texture_density = 2
size = { 50 100 }
texture = "gfx/interface/skinned/hud_maintab_bg_bottom.dds"
}
vbox = {
state = {
name = _show
alpha = 1
duration = 0.1
using = Animation_Curve_Default
}
state = {
name = _hide
duration = 0.6
alpha = 0
using = Animation_Curve_Default
}
hbox = {
name = "tab_government_administration" #tutorial uses this
widget_hud_main_tab = {
datacontext = "[GetPlayer.GetTopLiege]"
visible = "[And(Character.GetGovernment.HasRule( 'noble_families' ),Not(Or(GetPlayer.GetGovernment.IsType( 'celestial_government' ),Or(GetPlayer.GetGovernment.IsType( 'japan_administrative_government' ),GetPlayer.GetGovernment.IsType( 'japan_feudal_government' )))))]"
blockoverride "maintab_button"
{
texture = "gfx/interface/skinned/hud_maintab/maintab_administrative.dds"
onclick = "[ToggleGameView( 'government_administration' )]"
down = "[IsGameViewOpen( 'government_administration' )]"
tooltip = "ADMINISTRATIVE_BUTTON"
}
}
widget_hud_main_tab = {
datacontext = "[GetPlayer.GetTopLiege]"
visible = "[GetPlayer.GetGovernment.IsType( 'japan_feudal_government' )]"
blockoverride "maintab_button"
{
texture = "gfx/interface/skinned/hud_maintab/maintab_soryo_japan.dds"
onclick = "[ToggleGameView( 'government_administration' )]"
down = "[IsGameViewOpen( 'government_administration' )]"
tooltip = "ADMINISTRATIVE_BUTTON"
}
}
widget_hud_main_tab = {
datacontext = "[GetPlayer.GetTopLiege]"
visible = "[GetPlayer.GetGovernment.IsType( 'japan_administrative_government' )]"
blockoverride "maintab_button"
{
texture = "gfx/interface/skinned/hud_maintab/maintab_ritsuryo_japan.dds"
onclick = "[ToggleGameView( 'government_administration' )]"
down = "[IsGameViewOpen( 'government_administration' )]"
tooltip = "ADMINISTRATIVE_BUTTON"
}
}
widget_hud_main_tab = {
datacontext = "[GetPlayer.GetTopLiege]"
visible = "[GetPlayer.GetGovernment.IsType( 'celestial_government' )]"
blockoverride "maintab_button"
{
texture = "gfx/interface/skinned/hud_maintab/maintab_administrative_china.dds"
onclick = "[ToggleGameView( 'government_administration' )]"
down = "[IsGameViewOpen( 'government_administration' )]"
tooltip = "ADMINISTRATIVE_BUTTON"
}
}
}
widget = {
size = { 0 15 }
layoutpolicy_horizontal = expanding
icon = {
datacontext = "[GetPlayer.GetTopLiege]"
visible = "[And(Or( Character.GetGovernment.HasRule( 'noble_families' ), Character.GetGovernment.HasRule( 'administrative' ) ), And( Not( IsPauseMenuShown ), And(Or(Not(IsObserver), GetPlayer.IsValid), IsDefaultGUIMode)))]"
size = { 25 15 }
parentanchor = right|vcenter
texture = "gfx/interface/skinned/hud_spike_big.dds"
using = Animation_ShowHide_Standard
}
}
widget_hud_main_tab = {
name = "tab_my_realm_tutorial_uses_this"
blockoverride "maintab_button"
{
texture = "gfx/interface/skinned/hud_maintab/maintab_my_realm.dds"
onclick = "[ToggleGameView('my_realm')]"
shortcut = "my_realm_window"
tooltip = "MY_REALM_BUTTON"
down = "[IsGameViewOpen('my_realm')]"
}
}
widget_hud_main_tab = {
name = "tab_military_tutorial_uses_this"
blockoverride "maintab_button"
{
texture = "gfx/interface/skinned/hud_maintab/maintab_military.dds"
onclick = "[ToggleGameViewData('military', GetPlayer.GetID)]"
shortcut = "military_window"
tooltip = "MILITARY_BUTTON"
down = "[IsGameViewOpen('military')]"
}
}
widget_hud_main_tab = {
name = "tab_council"
visible = "[Not( IsLandlessAdventurer( GetPlayer ) )]"
blockoverride "maintab_button"
{
texture = "gfx/interface/skinned/hud_maintab/maintab_council.dds"
onclick = "[ToggleGameViewData('council_window', GetPlayer.GetID)]"
shortcut = "council_window"
tooltip = "COUNCIL_BUTTON"
down = "[IsGameViewOpen('council_window')]"
}
}
}
widget = {
layoutpolicy_horizontal = expanding
size = { 0 15 }
icon = {
visible = "[And( Not( IsPauseMenuShown ), And(Or(Not(IsObserver), GetPlayer.IsValid), IsDefaultGUIMode))]"
parentanchor = right|vcenter
texture = "gfx/interface/skinned/hud_spike_big.dds"
size = { 25 15 }
using = Animation_ShowHide_Standard
}
}
vbox = {
widget_hud_main_tab = {
name = "tab_court_tutorial_uses_this"
blockoverride "maintab_button"
{
texture = "gfx/interface/skinned/hud_maintab/maintab_court.dds"
onclick = "[ToggleGameViewData( 'court_window', GetPlayer.GetID )]"
shortcut = "court_window"
tooltip = "COURT_BUTTON"
down = "[IsGameViewOpen( 'court_window' )]"
}
}
widget_hud_main_tab = {
name = "tab_intrigue" #tutorial uses this
blockoverride "maintab_button"
{
texture = "gfx/interface/skinned/hud_maintab/maintab_intrigue.dds"
onclick = "[ToggleGameViewData('intrigue_window', GetPlayer.GetID)]"
shortcut = "intrigue_window"
tooltip = "INTRIGUE_BUTTON"
down = "[IsGameViewOpen('intrigue_window')]"
}
}
widget_hud_main_tab = {
name = "tab_factions" #tutorial uses this
visible = "[Or( Or( GetPlayer.IsInAFaction, GetPlayer.IsLandedRuler ), GetPlayer.HasLiege)]"
blockoverride "maintab_button"
{
texture = "gfx/interface/skinned/hud_maintab/maintab_factions.dds"
onclick = "[ToggleGameView('factions_window')]"
shortcut = "factions_window"
tooltip = "FACTION_BUTTON"
down = "[IsGameViewOpen('factions_window')]"
}
}
}
widget = {
layoutpolicy_horizontal = expanding
size = { 0 15 }
icon = {
visible = "[And( Not( IsPauseMenuShown ), And(Or(Not(IsObserver), GetPlayer.IsValid), IsDefaultGUIMode))]"
parentanchor = right|vcenter
texture = "gfx/interface/skinned/hud_spike_big.dds"
size = { 25 15 }
using = Animation_ShowHide_Standard
}
}
vbox = {
widget_hud_main_tab = {
name = "tab_decisions" #tutorial uses this
visible = "[Not(Or(GetPlayer.GetGovernment.IsType( 'landless_adventurer_government' ) GetPlayer.GetGovernment.IsType( 'landless_minority_government' )))]"
blockoverride "maintab_button"
{
texture = "gfx/interface/skinned/hud_maintab/maintab_decisions.dds"
onclick = "[ToggleGameView('decisions')]"
shortcut = "decision_window"
tooltip = "DECISIONS_BUTTON"
down = "[IsGameViewOpen('decisions')]"
}
}
widget_hud_main_tab = {
name = "tab_contracts"
visible = "[Or(GetPlayer.GetGovernment.IsType( 'landless_adventurer_government' ) GetPlayer.GetGovernment.IsType( 'landless_minority_government' ))]"
blockoverride "maintab_button"
{
texture = "gfx/interface/skinned/hud_maintab/maintab_contracts.dds"
onclick = "[ToggleGameView('decisions')]"
shortcut = "decision_window"
tooltip = "DECISIONS_BUTTON"
down = "[IsGameViewOpen('decisions')]"
}
}
widget_hud_main_tab = {
name = "tab_activities" #tutorial uses this
blockoverride "maintab_button"
{
texture = "gfx/interface/skinned/hud_maintab/maintab_activities.dds"
onclick = "[ToggleGameView('activity_list_window')]"
shortcut = "activity_list_window"
tooltip = "ACTIVITY_LIST_BUTTON"
down = "[IsGameViewOpen('activity_list_window')]"
}
}
widget_hud_main_tab = {
name = "tab_situation"
blockoverride "maintab_button"
{
texture = "gfx/interface/skinned/hud_maintab/maintab_situations.dds"
onclick = "[ToggleGameView( 'situations' )]"
tooltip = "SITUATIONS_BUTTON"
shortcut = "situations"
down = "[IsGameViewOpen( 'situations' )]"
}
}
widget_hud_main_tab = {
datacontext = "[GetPlayer]"
datacontext = "[AccessLocalPlayerCachedData]"
datacontext = "[LocalPlayerCachedData.AccessNewArtifacts]"
datacontext = "[LocalPlayerCachedData.AccessCourtEvents]"
datacontext = "[Character.GetCourtGrandeurData]"
visible = "[And(Character.HasRoyalCourt ,And(And( And( Not( IsPauseMenuShown ), And(Or(Not(IsObserver), GetPlayer.IsValid), IsDefaultGUIMode)), HasDlcFeature( 'court_room_view' )), Not( IsLandlessAdventurer( GetPlayer ) )))]"
allow_outside = yes
name = "royal_court_button_tutorial_uses_this"
tooltipwidget = {
container_royal_court_tooltip = {}
}
blockoverride "maintab_button"
{
texture = "gfx/interface/skinned/hud_maintab/maintab_courtview.dds"
onclick = "[Character.OpenRoyalCourtView( 'throne' )]"
# Looping glow when you have unhandled court events or first get your royal court
using = Animation_Glow_Pulse
glow = {
glow_radius = 8
using = Glow_Standard
using = Color_Bright_Yellow
visible = "[Or( And( Character.HasRoyalCourt, Not( LocalPlayerCachedData.HasEverOpenedRoyalCourt ) ), GreaterThan_int32( LocalPlayerCourtEvents.GetNumberCourtEvents, '(int32)0' ) )]"
}
# Pulse when you get a new pending court event
state = {
name = "pending_court_event_start"
next = "pending_court_event_a"
position_x = 0
duration = 0.2
size = { 45 45 }
using = Animation_Curve_Default
trigger_when = "[GreaterThan_int32( Character.GetNumPendingCourtEvents, '(int32)0' )]"
start_sound = {
soundeffect = "event:/DLC/EP1/SFX/UI/Notifications/royal_court_event_available"
}
}
state = {
name = "pending_court_event_a"
next = "pending_court_event_b"
position_x = -30
duration = 0.45
size = { 85 85 }
using = Animation_Curve_Default
}
state = {
name = "pending_court_event_b"
position_x = 0
duration = 0.25
size = { 45 45 }
bezier = { 0.43 0 0.2 2.2 }
}
flowcontainer = {
position = { -5 0 }
direction = vertical
ignoreinvisible = yes
visible = "[Character.HasRoyalCourt]"
datacontext = "[GetPlayer]"
widget_royal_court_notification = {
visible = "[And( GreaterThanOrEqualTo_int32( CourtGrandeurData.GetCurrentLevel, CourtGrandeurData.GetMinimumExpectedLevel ), Or( GreaterThan_int32( LocalPlayerNewArtifacts.GetNumNewArtifactsOfCategory( 'court' ), '(int32)0' ), Or( GreaterThan_int32( LocalPlayerCourtEvents.GetNumberCourtEvents, '(int32)0' ), GreaterThan_int32( Character.GetNumPendingCourtEvents, '(int32)0' ) ) ) )]"
}
widget_below_cgv_expectations = {
visible = "[LessThan_int32( CourtGrandeurData.GetCurrentLevel, CourtGrandeurData.GetMinimumExpectedLevel )]"
}
}
}
}
widget_hud_main_tab = {
name = "tab_tax_jurisdiction"
datacontext = "[GetPlayer]"
enabled = "[Character.HasTaxSlots]"
visible = "[Or( GetPlayer.GetGovernment.IsType( 'clan_government' ), Character.HasTaxSlots )]"
blockoverride "maintab_button"
{
texture = "gfx/interface/skinned/hud_maintab/maintab_tax_jurisdictions.dds"
onclick = "[ToggleGameViewData('manage_tax_slots', GetPlayer.GetID)]"
down = "[IsGameViewOpen('manage_tax_slots')]"
using = tooltip_ws
tooltipwidget = {
tax_jurisdictions_button_tooltip = {}
}
icon = {
size = { 100% 100% }
visible = "[GreaterThan_int32( GetPlayer.GetUnassignedVassalsCount, '(int32)0' )]"
texture = "gfx/interface/skinned/hud_maintab/maintab_tax_jurisdictions.dds"
glow = {
glow_radius = 8
using = Glow_Standard
using = Color_Red
}
state = {
name = a
next = b
alpha = 0.3
trigger_on_create = yes
duration = 1.2
using = Animation_Curve_Default
}
state = {
name = b
next = a
alpha = 0.5
duration = 0.6
using = Animation_Curve_Default
}
}
icon = {
visible = "[Or( Or( GreaterThan_int32( Character.GetUnassignedVassalsCount, '(int32)0' ), Not( Character.HasTaxSlots ) ), GreaterThan_int32( Character.GetUntaxedJurisdictionCount, '(int32)0' ) )]"
size = { 25 25 }
position = { -5 5}
texture = "gfx/interface/icons/symbols/icon_warning.dds"
icon = {
size = { 100% 100% }
alwaystransparent = yes
texture = "gfx/interface/icons/symbols/icon_warning.dds"
modify_texture = {
texture = "gfx/interface/icons/focuses/hud_icon_mask.dds"
blend_mode = alphamultiply
}
modify_texture = {
texture = "gfx/interface/colors/red.dds"
blend_mode = colordodge
}
state = {
name = a
next = b
alpha = 0
trigger_on_create = yes
duration = 1.2
using = Animation_Curve_Default
}
state = {
name = b
next = a
alpha = 0.8
duration = 0.6
using = Animation_Curve_Default
}
}
}
}
}
}
}
# Invisible button to ensure that these shortcuts don't get hidden
button = {
size = { 0 0 }
onclick = "[ToggleGameViewData( 'character', GetPlayer.GetID )]"
shortcut = "character_window"
}
# widget = {
# datacontext = "[GetPlayer]"
# datacontext = "[AccessLocalPlayerCachedData]"
# datacontext = "[LocalPlayerCachedData.AccessNewArtifacts]"
# datacontext = "[LocalPlayerCachedData.AccessCourtEvents]"
# datacontext = "[Character.GetCourtGrandeurData]"
# visible = "[And( And( Not( IsPauseMenuShown ), And(Or(Not(IsObserver), GetPlayer.IsValid), IsDefaultGUIMode)), HasDlcFeature( 'royal_court' ))]"
# enabled = "[Character.HasRoyalCourt]"
# parentanchor = bottom
# position = { 4 50 }
# size = { 45 45 }
# icon = {
# name = "royal_court_button_background"
# visible = "[Not(IsRightWindowOpen)]"
# size = { 45 45 }
# texture = "gfx/interface/buttons/maintab_courtview_bg.dds"
# allow_outside = yes
# state = {
# name = _show
# alpha = 1
# duration = 0.1
# using = Animation_Curve_Default
# }
# state = {
# name = _hide
# duration = 0.6
# alpha = 0
# using = Animation_Curve_Default
# }
# state = {
# name = "hud_tab_glow_courtview_enter"
# duration = 0.03
# using = Animation_Curve_Default
# modify_texture = {
# name = "glow_courtview"
# alpha = 1
# }
# }
# state = {
# name = "hud_tab_glow_courtview_leave"
# duration = 0.1
# using = Animation_Curve_Default
# modify_texture = {
# name = "glow_courtview"
# alpha = 0
# }
# }
# modify_texture = {
# name = "glow_courtview"
# texture = "gfx/interface/buttons/maintab_courtview_bg_glow.dds"
# alpha = 0
# }
# }
# widget_hud_main_tab = {
# allow_outside = yes
# name = "royal_court_button_tutorial_uses_this"
# tooltipwidget = {
# container_royal_court_tooltip = {}
# }
# state = {
# name = _mouse_hierarchy_enter
# on_start = "[PdxGuiInterruptThenTriggerAllAnimations('hud_tab_glow_courtview_leave','hud_tab_glow_courtview_enter')]"
# alpha = 1
# }
# state = {
# name = _mouse_hierarchy_leave
# on_start = "[PdxGuiInterruptThenTriggerAllAnimations('hud_tab_glow_courtview_enter','hud_tab_glow_courtview_leave')]"
# alpha = 1
# }
# blockoverride "maintab_button"
# {
# texture = "gfx/interface/buttons/maintab_courtview.dds"
# onclick = "[Character.OpenRoyalCourtView( 'throne' )]"
# # Looping glow when you have unhandled court events or first get your royal court
# using = Animation_Glow_Pulse
# glow = {
# glow_radius = 8
# using = Glow_Standard
# using = Color_Bright_Yellow
# visible = "[Or( And( Character.HasRoyalCourt, Not( LocalPlayerCachedData.HasEverOpenedRoyalCourt ) ), GreaterThan_int32( LocalPlayerCourtEvents.GetNumberCourtEvents, '(int32)0' ) )]"
# }
# # Pulse when you get a new pending court event
# state = {
# name = "pending_court_event_start"
# next = "pending_court_event_a"
# position_x = 0
# duration = 0.2
# size = { 45 45 }
# using = Animation_Curve_Default
# trigger_when = "[GreaterThan_int32( Character.GetNumPendingCourtEvents, '(int32)0' )]"
# start_sound = {
# soundeffect = "event:/DLC/EP1/SFX/UI/Notifications/royal_court_event_available"
# }
# }
# state = {
# name = "pending_court_event_a"
# next = "pending_court_event_b"
# position_x = -30
# duration = 0.45
# size = { 85 85 }
# using = Animation_Curve_Default
# }
# state = {
# name = "pending_court_event_b"
# position_x = 0
# duration = 0.25
# size = { 45 45 }
# bezier = { 0.43 0 0.2 2.2 }
# }
# flowcontainer = {
# position = { 0 6 }
# parentanchor = bottom|hcenter
# widgetanchor = center
# direction = vertical
# ignoreinvisible = yes
# visible = "[Character.HasRoyalCourt]"
# datacontext = "[GetPlayer]"
# widget_royal_court_notification = {
# visible = "[And( GreaterThanOrEqualTo_int32( CourtGrandeurData.GetCurrentLevel, CourtGrandeurData.GetMinimumExpectedLevel ), Or( GreaterThan_int32( LocalPlayerNewArtifacts.GetNumNewArtifactsOfCategory( 'court' ), '(int32)0' ), Or( GreaterThan_int32( LocalPlayerCourtEvents.GetNumberCourtEvents, '(int32)0' ), GreaterThan_int32( Character.GetNumPendingCourtEvents, '(int32)0' ) ) ) )]"
# }
# widget_below_cgv_expectations = {
# visible = "[LessThan_int32( CourtGrandeurData.GetCurrentLevel, CourtGrandeurData.GetMinimumExpectedLevel )]"
# }
# }
# }
# }
# }
}
widget_stress_sounds = {}
}
### Time Controls
icon = {
name = "timeline_widget"
visible = "[And(And( Not(IsGameViewOpen('barbershop')), And( And( Not( IsPauseMenuShown ), TimelineWidget.ShouldBeVisible ), Not(GetVariableSystem.Exists('royal_court_screenshot_window')))), Not( GreaterThan_CFixedPoint( GetPlayer.MakeScope.Var('hide_ui_timeline').GetValue, '(CFixedPoint)0' ) ))]"
size = { 649 65 }
parentanchor = bottom|right
filter_mouse = all
alwaystransparent = yes
layer = top
allow_outside = yes
texture = "gfx/interface/skinned/hud_bg_gamespeed.dds"
using = Animation_ShowHide_Quick
widget = {
parentanchor = bottom|right
size = { 629 45 }
allow_outside = yes
icon = {
parentanchor = top|right
position = { 7 -15}
texture = "gfx/interface/skinned/component_decoration/decoration_arch.dds"
size = { 30 30 }
}
icon = {
visible = "[IsManuallyPaused]"
size = { 100% 100% }
texture = "gfx/interface/skinned/hud_pause_indicator.dds"
color = { 0.4 0.25 0.25 0.7 }
state = {
name = _show
using = Animation_FadeIn_Quick
}
state = {
name = _hide
using = Animation_FadeOut_Standard
}
}
icon = {
visible = "[IsPausedByEvent]"
size = { 100% 100% }
texture = "gfx/interface/skinned/hud_pause_indicator.dds"
color = { 0.3 0.3 0.3 0.7 }
state = {
name = _show
using = Animation_FadeIn_Quick
}
state = {
name = _hide
using = Animation_FadeOut_Standard
}
}
hotkeys_HUD = {}
### Extra Buttons
flowcontainer = {
name = "extra_buttons_menu"
visible = "[And( Not( IsPauseMenuShown ), GetVariableSystem.Exists( 'extra_buttons_expand' ))]"
visible_at_creation = no
parentanchor = bottom|right
widgetanchor = bottom|hcenter
position = { -570 -20 }
alwaystransparent = no
margin = { 40 40 }
direction = vertical
spacing = 3
ignoreinvisible = yes
allow_outside = yes
background = {
using = Background_Area_Dark
margin = { -25 -25 }
}
state = {
name = _show
using = Animation_FadeIn_Quick
position_y = -20
}
state = {
name = _hide
using = Animation_FadeOut_Quick
position_y = 60
}
state = {
name = _mouse_hierarchy_leave
on_finish = "[GetVariableSystem.Clear( 'extra_buttons_expand' )]"
}
button_standard = {
name = "find_character_button"
text = "FIND_CHARACTER"
onclick = "[ToggleGameView( 'character_finder' )]"
onclick = "[GetVariableSystem.Toggle( 'extra_buttons_expand' )]"
tooltip = "IM_TT_FIND_CHARACTER"
shortcut = "character_finder"
}
button_standard = {
name = "find_title_button"
onclick = "[ToggleGameView( 'find_title' )]"
onclick = "[GetVariableSystem.Toggle( 'extra_buttons_expand' )]"
down = "[IsGameViewOpen('find_title')]"
shortcut = "find_title_shortcut"
text = "FIND_TITLE"
tooltip = "IM_TT_FIND_TITLE"
}
button_standard = {
name = "plagues_button"
onclick = "[ToggleGameView( 'epidemics' )]"
onclick = "[GetVariableSystem.Toggle( 'extra_buttons_expand' )]"
down = "[IsGameViewOpen('epidemics')]"
shortcut = "explore_plagues"
text = "EXPLORE_PLAGUES"
tooltip = "EXPLORE_PLAGUES_TT"
}
button_standard = {
name = "legacy_button"
text = "SHOW_LEGACY"
onclick = "[ToggleGameViewData( 'lineage_view', GetPlayer.GetID )]"
down = "[IsGameViewOpen('succession_event')]"
onclick = "[GetVariableSystem.Toggle( 'extra_buttons_expand' )]"
tooltip = "IM_TT_SHOW_LEGACY"
}
button_standard = {
name = "go_to_capital_button"
text = "GO_TO_CAPITAL"
onclick = "[OnGoToPlayerCapital]"
onclick = "[GetVariableSystem.Toggle( 'extra_buttons_expand' )]"
shortcut = "go_to_capital"
tooltip = "IM_TT_GO_TO_CAPITAL"
visible = "[GetPlayer.IsValid]"
}
button_standard = {
name = "toggle_message_settings_button"
text = "MESSAGE_SETTINGS_WINDOW_NAME"
onclick = "[ToggleMessageSettings]"
onclick = "[GetVariableSystem.Toggle( 'extra_buttons_expand' )]"
tooltip = "MESSAGE_SETTINGS_WINDOW_TT"
}
button_standard = {
name = "toggle_music_player_button"
text = "MUSIC_PLAYER_NAME"
onclick = "[ToggleMusicPlayer]"
tooltip = "MUSIC_PLAYER_OPEN_PLAYER_TT"
}
}
hbox = {
margin_left = 35
allow_outside = yes
hbox = {
margin_top = 12
spacing = 3
button_dots = {
name = "button_hud_extra_buttons"
onclick = "[GetVariableSystem.Toggle( 'extra_buttons_expand' )]"
tooltip = MORE_POPOUT_TT
using = tooltip_ne
}
button_menu = {
name = "pause_menu_button"
onclick = "[OnPauseMenu]"
tooltip = INGAME_MENU_TT
using = tooltip_ne
tooltipwidget = {
using = TooltipWithFakeShortcut
blockoverride "shortcut_text"
{
text = FAKE_ESCAPE
}
}
}
button_encyclopedia_small = {
name = "encyclopedia_button_extended_menu"
tooltip = "OPEN_ENCYCLOPEDIA"
onclick = "[ToggleEncyclopedia]"
shortcut = "encyclopedia"
using = tooltip_ne
}
}
hbox = {
name = "tutorial_highlight_bottom_right_bar"
layoutpolicy_horizontal = expanding
layoutpolicy_vertical = expanding
margin_right = 5
margin_left = 15
margin_top = 12
allow_outside = yes
## Date
button_standard_hover = {
name = "play_pause_button_tutorial_uses_this"
layoutpolicy_horizontal = expanding
layoutpolicy_vertical = expanding
onclick = "[OnPause]"
tooltip = "CURRENT_DATE_TOOLTIP"
using = tooltip_nw
tooltip_offset = { 0 10 }
margin_widget = {
visible = "[Not(Or(IsPausedByEvent, IsManuallyPaused))]"
size = { 100% 100% }
state = {
name = _show
using = Animation_FadeIn_Quick
}
state = {
name = _hide
using = Animation_FadeOut_Standard
}
Animation_HUD_daily_tick = {
visible = "[EqualTo_int32(GetCurrentGameSpeed, '(int32)1')]"
size = { 100% 100% }
blockoverride "duration"
{
duration = 30
}
blockoverride "alpha"
{
alpha = 0.3
}
}
Animation_HUD_daily_tick = {
visible = "[EqualTo_int32(GetCurrentGameSpeed, '(int32)2')]"
size = { 100% 100% }
blockoverride "duration"
{
duration = 15
}
blockoverride "alpha"
{
alpha = 0.25
}
}
Animation_HUD_daily_tick = {
visible = "[EqualTo_int32(GetCurrentGameSpeed, '(int32)3')]"
size = { 100% 100% }
blockoverride "duration"
{
duration = 7.5
}
blockoverride "alpha"
{
alpha = 0.2
}
}
Animation_HUD_daily_tick = {
visible = "[EqualTo_int32(GetCurrentGameSpeed, '(int32)4')]"
size = { 100% 100% }
blockoverride "duration"
{
duration = 3.75
}
blockoverride "alpha"
{
alpha = 0.15
}
}
Animation_HUD_daily_tick = {
visible = "[EqualTo_int32(GetCurrentGameSpeed, '(int32)5')]"
size = { 100% 100% }
blockoverride "duration"
{
duration = 1.9
}
blockoverride "alpha"
{
alpha = 0.15
}
}
}
hbox = {
margin = { 5 0 }
margin_bottom = 2
hbox = {
layoutpolicy_horizontal = expanding
margin_top = 2
margin_right = 2
expand = {}
text_single = {
name = "date_text_sp"
visible = "[Not(GameHasMultiplePlayers)]"
layoutpolicy_horizontal = expanding
text = "CURRENT_DATE"
default_format = "#date"
autoresize = no
align = right|nobaseline
using = Font_Size_Medium
}
text_single = {
name = "date_text_mp"
visible = "[GameHasMultiplePlayers]"
layoutpolicy_horizontal = expanding
text = "CURRENT_DATE"
default_format = "#medium;glow_color:{0.1,0.1,0.1,1}"
autoresize = no
align = right|nobaseline
using = Font_Size_Medium
}
}
container = {
name = "pause_play_icons"
button_pause = {
visible = "[Not(Or(IsPausedByEvent, IsManuallyPaused))]"
alwaystransparent = yes
parentanchor = center
}
button_play = {
visible = "[Or(IsPausedByEvent, IsManuallyPaused)]"
alwaystransparent = yes
parentanchor = center
}
}
}
}
button_normal = {
shortcut = "decrease_speed"
shortcut = "decrease_speed_2"
shortcut = "decrease_speed_3"
onclick = "[OnDecreaseGameSpeed]"
}
button_normal = {
shortcut = "increase_speed"
shortcut = "increase_speed_2"
shortcut = "increase_speed_3"
onclick = "[OnIncreaseGameSpeed]"
}
hbox = {
layoutpolicy_vertical = expanding
margin = { 0 -4 }
allow_outside = yes
icon = {
name = "speed_indicator"
layoutpolicy_vertical = expanding
size = { 170 0 }
framesize = { 200 28 }
texture = "gfx/interface/hud/speed_indicator.dds"
frame = "[GetCurrentGameSpeed]"
tooltip = "CURRENT_SPEED_TOOLTIP"
tooltip_offset = { 0 -170 }
alpha = 0.8
modify_texture = {
visible = "[IsPausedByEvent]"
texture = "gfx/interface/hud/speed_indicator_auto_pause.dds"
spritetype = corneredtiled
blend_mode = darken
texture_density = 2
}
modify_texture = {
visible = "[And(IsManuallyPaused, Not(IsPausedByEvent))]"
texture = "gfx/interface/hud/speed_indicator_pause.dds"
spritetype = corneredtiled
blend_mode = darken
texture_density = 2
}
modify_texture = {
visible = "[Not(Or(IsPausedByEvent, IsManuallyPaused))]"
texture = "gfx/interface/hud/speed_indicator_play.dds"
spritetype = corneredtiled
blend_mode = darken
texture_density = 2
}
button = {
visible = "[Not( GameHasMultiplePlayers )]"
onclick = "[OnPause]"
shortcut = "pause"
}
icon = {
parentanchor = right|vcenter
position = { 10 0 }
size = { 15 90%}
texture = "gfx/interface/skinned/overlay_stone.dds"
color = { 0.32 0.32 0.32 1 }
}
icon = {
size = { 100% 100% }
texture = "gfx/interface/skinned/speed_indicator_frame.dds"
}
hbox = {
margin_left = 6
margin_right = 6
button = {
name = "speed_1"
shortcut = "speed_1"
layoutpolicy_horizontal = shrinking
layoutpolicy_vertical = expanding
size = { 34 18 }
alwaystransparent = "[EqualTo_int32(GetCurrentGameSpeed, '(int32)1')]"
onclick = "[SetGameSpeed('(int32)0')]"
tooltip = "CHANGE_SPEED_TOOLTIP_1"
using = tooltip_ne
alpha = 0
state = {
name = _mouse_enter
alpha = 1
duration = 0.1
using = Animation_Curve_Default
}
state = {
name = _mouse_leave
alpha = 0
duration = 0.1
using = Animation_Curve_Default
}
margin_widget = {
size = { 100% 100% }
margin = { 0 8 }
icon = {
size = { 100% 100% }
texture = "gfx/interface/hud/speed_indicator_mouseover.dds"
}
}
}
button = {
name = "speed_2"
shortcut = "speed_2"
layoutpolicy_horizontal = shrinking
layoutpolicy_vertical = expanding
size = { 34 18 }
alwaystransparent = "[EqualTo_int32(GetCurrentGameSpeed, '(int32)2')]"
onclick = "[SetGameSpeed('(int32)1')]"
tooltip = "CHANGE_SPEED_TOOLTIP_2"
using = tooltip_ne
alpha = 0
state = {
name = _mouse_enter
alpha = 1
duration = 0.1
using = Animation_Curve_Default
}
state = {
name = _mouse_leave
alpha = 0
duration = 0.1
using = Animation_Curve_Default
}
margin_widget = {
size = { 100% 100% }
margin = { 0 8 }
icon = {
size = { 100% 100% }
texture = "gfx/interface/hud/speed_indicator_mouseover.dds"
}
}
}
button = {
name = "speed_3"
shortcut = "speed_3"
layoutpolicy_horizontal = shrinking
layoutpolicy_vertical = expanding
size = { 34 18 }
alwaystransparent = "[EqualTo_int32(GetCurrentGameSpeed, '(int32)3')]"
onclick = "[SetGameSpeed('(int32)2')]"
tooltip = "CHANGE_SPEED_TOOLTIP_3"
using = tooltip_ne
alpha = 0
state = {
name = _mouse_enter
alpha = 1
duration = 0.1
using = Animation_Curve_Default
}
state = {
name = _mouse_leave
alpha = 0
duration = 0.1
using = Animation_Curve_Default
}
margin_widget = {
size = { 100% 100% }
margin = { 0 8 }
icon = {
size = { 100% 100% }
texture = "gfx/interface/hud/speed_indicator_mouseover.dds"
}
}
}
button = {
name = "speed_4"
shortcut = "speed_4"
layoutpolicy_horizontal = shrinking
layoutpolicy_vertical = expanding
size = { 34 18 }
alwaystransparent = "[EqualTo_int32(GetCurrentGameSpeed, '(int32)4')]"
onclick = "[SetGameSpeed('(int32)3')]"
tooltip = "CHANGE_SPEED_TOOLTIP_4"
using = tooltip_ne
alpha = 0
state = {
name = _mouse_enter
alpha = 1
duration = 0.1
using = Animation_Curve_Default
}
state = {
name = _mouse_leave
alpha = 0
duration = 0.1
using = Animation_Curve_Default
}
margin_widget = {
size = { 100% 100% }
margin = { 0 8 }
icon = {
size = { 100% 100% }
texture = "gfx/interface/hud/speed_indicator_mouseover.dds"
}
}
}
button = {
name = "speed_5"
shortcut = "speed_5"
layoutpolicy_horizontal = shrinking
layoutpolicy_vertical = expanding
size = { 34 18 }
alwaystransparent = "[EqualTo_int32(GetCurrentGameSpeed, '(int32)5')]"
onclick = "[SetGameSpeed('(int32)4')]"
tooltip = "CHANGE_SPEED_TOOLTIP_5"
using = tooltip_ne
alpha = 0
state = {
name = _mouse_enter
alpha = 1
duration = 0.1
using = Animation_Curve_Default
}
state = {
name = _mouse_leave
alpha = 0
duration = 0.1
using = Animation_Curve_Default
}
margin_widget = {
size = { 100% 100% }
margin = { 0 8 }
icon = {
size = { 100% 100% }
texture = "gfx/interface/hud/speed_indicator_mouseover.dds"
}
}
}
}
}
}
}
# Just the hotkeys for increase/decrease speed
container = {
name = "speed_hotkeys"
button = {
name = "increase_speed"
size = { 0 0 }
shortcut = "increase_speed"
shortcut = "increase_speed_2"
shortcut = "increase_speed_3"
onclick = "[OnIncreaseGameSpeed]"
oversound = "event:/SFX/UI/Generic/sfx_ui_generic_pointer_over"
clicksound = "event:/SFX/UI/Generic/sfx_ui_generic_increment"
}
button = {
name = "decrease_speed"
size = { 0 0 }
shortcut = "decrease_speed"
shortcut = "decrease_speed_2"
shortcut = "decrease_speed_3"
onclick = "[OnDecreaseGameSpeed]"
oversound = "event:/SFX/UI/Generic/sfx_ui_generic_pointer_over"
clicksound = "event:/SFX/UI/Generic/sfx_ui_generic_decrement"
}
}
widget_gamespeed_sounds = {}
}
}
}
### Bottom edge
widget = {
name = "bottom_bar"
visible = "[And( Not( IsPauseMenuShown ), IsDefaultGUIMode )]"
size = { 100% 100% }
layer = bottom
datacontext = "[GetPlayer]"
using = Animation_ShowHide_Quick
#### DYNAMIC BACKGROUND BEHIND THE CHARACTER PORTRAIT
widget = {
parentanchor = bottom|left
position = { -100 -100}
hbox = {
visible = "[And(And(And( Not( IsGameViewOpen( 'barbershop' ) ), And( GetPlayer.IsValid, Not( GetVariableSystem.Exists( 'hide_bottom_left_HUD' ) ) ) ), Not( GreaterThan_CFixedPoint( GetPlayer.MakeScope.Var('hide_ui_character').GetValue, '(CFixedPoint)0' ) )), IsNomad( GetPlayer ))]"
layoutpolicy_horizontal = expanding
spacer = {
visible = "[LessThanOrEqualTo_int32( InGameBottomBar.GetHudOptionalItemsCount, '(int32)1' )]"
size = { 364 1 }
}
spacer = {
visible = "[EqualTo_int32( InGameBottomBar.GetHudOptionalItemsCount, '(int32)2' )]"
size = { 424 1 }
}
spacer = {
visible = "[EqualTo_int32( InGameBottomBar.GetHudOptionalItemsCount, '(int32)3' )]"
size = { 484 1 }
}
spacer = {
visible = "[EqualTo_int32( InGameBottomBar.GetHudOptionalItemsCount, '(int32)4' )]"
size = { 544 1 }
}
spacer = {
visible = "[EqualTo_int32( InGameBottomBar.GetHudOptionalItemsCount, '(int32)5' )]"
size = { 604 1 }
}
spacer = {
visible = "[GreaterThanOrEqualTo_int32( InGameBottomBar.GetHudOptionalItemsCount, '(int32)6' )]"
size = { 664 1 }
}
icon = {
size = { 340 105 }
texture = "gfx/interface/hud/nomad_widget.dds"
}
}
}
### TGP WIDGET BACKGROUND
widget = {
visible = "[And(And( Not( IsGameViewOpen( 'barbershop' ) ), And( GetPlayer.IsValid, Not( GetVariableSystem.Exists( 'hide_bottom_left_HUD' ) ) ) ), Not( GreaterThan_CFixedPoint( GetPlayer.MakeScope.Var('hide_ui_bottom_left_bar').GetValue, '(CFixedPoint)0' ) ))]"
parentanchor = bottom|left
widgetanchor = bottom|left
position = { -6 0 }
size = { 548 116 }
# BACKGROUND MERIT + DYNASTIC CYCLE + MOVEMENTS
icon = {
visible = "[And(InGameBottomBar.ShouldShowDynasticCycle, Character.ShouldShowMerit)]"
size = { 548 116 }
texture = "gfx/interface/hud/tgp_widget_background_big.dds"
}
# BACKGROUND MERIT + DYNASTIC CYCLE
icon = {
visible = "[And(GetSituation('dynastic_cycle').GetTopParticipantGroupByKey('other_rulers').IsCharacterParticipant( Character.Self ), Character.ShouldShowMerit)]"
parentanchor = left
size = { 474 116 }
texture = "gfx/interface/hud/tgp_widget_background_medium.dds"
}
# BACKGROUND ONLY MERIT WIDGET
icon = {
visible = "[And(Not( InGameBottomBar.ShouldShowDynasticCycle ), Character.ShouldShowMerit )]"
parentanchor = left
size = { 430 116 }
texture = "gfx/interface/hud/tgp_widget_background_small.dds"
}
# BACKGROUND ONLY MOVEMENT
icon = {
visible = "[And(InGameBottomBar.ShouldShowDynasticCycle, Not(Character.ShouldShowMerit))]"
parentanchor = left
position = { -10 25 }
size = { 430 116 }
texture = "gfx/interface/hud/tgp_widget_background_small.dds"
}
}
icon_hud_background_container = {
visible = "[And(And( Not( IsGameViewOpen( 'barbershop' ) ), And( GetPlayer.IsValid, Not( GetVariableSystem.Exists( 'hide_bottom_left_HUD' ) ) ) ), Not( GreaterThan_CFixedPoint( GetPlayer.MakeScope.Var('hide_ui_bottom_left_bar').GetValue, '(CFixedPoint)0' ) ))]"
parentanchor = bottom|left
ignoreinvisible = yes
}
##### END OF BACKGROUND
### BOTTOM LEFT CHARACTER PORTRAIT
bottom_left_portrait = {
parentanchor = bottom|left
}
### TGP WIDGET
flowcontainer = {
visible = "[And(And( Not( IsGameViewOpen( 'barbershop' ) ), And( GetPlayer.IsValid, Not( GetVariableSystem.Exists( 'hide_bottom_left_HUD' ) ) ) ), Not( GreaterThan_CFixedPoint( GetPlayer.MakeScope.Var('hide_ui_bottom_left_bar').GetValue, '(CFixedPoint)0' ) ))]"
direction = horizontal
widgetanchor = bottom|left
parentanchor = bottom|left
position = { 269 -58 }
allow_outside = yes
ignoreinvisible = yes
widget_merit_hud = {
name = "merit_button_tutorial_uses_this"
datacontext = "[InGameBottomBar.GetMeritItem]"
parentanchor = vcenter
alwaystransparent = no
filter_mouse = all
size = { 74 94 }
allow_outside = yes
}
spacer = {
visible = "[Not(Character.ShouldShowMerit)]"
size = { 7 0 }
}
widget = {
size = { 120 60 }
parentanchor = bottom
allow_outside = yes
flowcontainer = {
parentanchor = left|vcenter
position = { -5 0 }
spacing = 5
allow_outside = yes
ignoreinvisible = yes
button_merit_pool_item = {
datacontext = "[InGameBottomBar.GetTopAdminMeritPool]"
visible = "[Character.ShouldShowMerit]"
allow_outside = yes
blockoverride "button_onclick"
{
onclick = "[OpenGameViewData( 'government_administration', Character.Self)]"
}
blockoverride "default_format" {}
}
button_situation_group_banner = {
datacontext = "[InGameBottomBar.GetDynasticCycle]"
datacontext = "[InGameBottomBar.GetDynasticCycleGroup]"
datacontext = "[SituationParticipantGroup.GetType]"
visible = "[InGameBottomBar.ShouldShowDynasticCycle]"
allow_outside = yes
}
}
}
}
## Bottom left tabs
left_edge_tabs = {
parentanchor = bottom|left
position = { -3 -100 }
}
## Bottom left CoA
coa_realm_medium_crown = {
visible = "[And(And(Not(IsGameViewOpen('barbershop')), And(And(IsDefaultGUIMode, GetPlayer.IsRuler), Not(GetVariableSystem.Exists( 'hide_ui_coa_bottom_left')))), Not( GreaterThan_CFixedPoint( GetPlayer.MakeScope.Var('hide_ui_character_model').GetValue, '(CFixedPoint)0' ) ))]"
visible_at_creation = no
parentanchor = bottom|left
state = {
name = _show
using = Animation_Curve_Default
duration = 0.25
position = { 0 0 }
alpha = 1
}
state = {
name = _hide
using = Animation_Curve_Default
duration = 0.25
position = { 0 50 }
alpha = 0
}
blockoverride "coa_button"
{
tooltip = "[GetPlayer.GetDefaultRealmFlagTooltipPrimaryTitleClickInfo]"
onclick = "[DefaultOnCoatOfArmsClick(GetPlayer.GetPrimaryTitle.GetID)]"
}
}
### Legitimacy, Lifestyle, etc
bottom_left_button_row = {
parentanchor = bottom|left
position = { 66 0 }
}
### Regular position
bottom_left_temporary_statuses = {
visible = "[Not( Or( InGameBottomBar.ShouldShowDynasticCycle, Character.ShouldShowMerit ) )]"
parentanchor = bottom|left
position = { 270 -62 }
}
### Positioned higher when you have the celestial widget
bottom_left_temporary_statuses = {
visible = "[Or( InGameBottomBar.ShouldShowDynasticCycle, Character.ShouldShowMerit )]"
parentanchor = bottom|left
position = { 277 -160 }
}
######################################################
######### MAPMODES AND WARS AND INSPIRATIONS #########
######################################################
map_modes_debug = {
visible = "[And( InDebugMode, And( Not( GetVariableSystem.Exists( 'mapmodes_expand' ) ), And(IsDefaultGUIMode, Not(IsRightWindowOpen))))]"
visible_at_creation = no
parentanchor = bottom|right
position = { 0 -230 }
filter_mouse = all
alwaystransparent = no
scale = 0.9
}
widget = { # Inspiration Details
visible = "[And( InGameBottomBar.HasSelectedInspiration, And( IsDefaultGUIMode, Not( IsRightWindowOpen ) ) )]"
visible_at_creation = no
datacontext = "[InGameBottomBar.GetSelectedInspiration]"
datacontext = "[Inspiration.GetOwner]"
parentanchor = bottom|right
position = { -200 -150 }
using = Window_Background_Subwindow
alwaystransparent = no
filter_mouse = all
state = {
name = _show
using = Animation_FadeIn_Quick
using = Sound_WindowShow_Standard
}
state = {
name = _hide
using = Animation_FadeOut_Quick
using = Sound_WindowHide_Standard
}
vbox = {
name = "selected_inspiration"
set_parent_size_to_minimum = yes
margin = { 4 4 }
margin_bottom = 20
spacing = 5
vbox = {
layoutpolicy_horizontal = expanding
header_pattern = {
layoutpolicy_horizontal = expanding
blockoverride "header_text"
{
text = "SELECTED_INSPIRATION_HEADER"
}
blockoverride "button_close"
{
onclick = "[InGameBottomBar.ClearSelectedInspiration]"
}
blockoverride "button_back"
{
visible = no
}
}
}
hbox = {
name = "selected_inspiration_data"
layoutpolicy_horizontal = expanding
layoutpolicy_vertical = expanding
margin_left = 20
background = {
using = Background_Area
layoutpolicy_horizontal = expanding
margin_top = 14
}
portrait_shoulders = {
name = "inspiration_owner_portrait"
blockoverride "inspiration_status_icons"
{
}
}
vbox = {
name = "text"
layoutpolicy_horizontal = expanding
margin_left = 10
margin_bottom = 10
margin_top = -14
text_multi = {
name = "inspiration_text"
min_width = 300
max_width = 300
autoresize = yes
text = "SELECTED_INSPIRATION_TEXT"
margin_right = 10
margin_top = 4
}
spacer = {
size = { 0 6 }
}
hbox = {
name = "recuirt_owner"
layoutpolicy_horizontal = expanding
spacing = 5
text_single = {
text = "[Character.GetRelationToString( GetPlayer )]"
tooltip = "EXTENDED_RELATIONS_TOOLTIP"
}
button_recruit_character = {}
warning_icon = {
name = "wants_to_leave"
visible = "[And( Character.CourtierWantsToLeaveCourt, Not( Character.IsImprisoned))]"
size = { 20 20 }
tooltip = "[Character.GetCourtierLeaveDescription]"
}
expand = {}
}
text_single = {
name = "gold_invested"
text = INSPIRATION_INVESTED_GOLD
layoutpolicy_horizontal = expanding
visible = "[Inspiration.GetSponsor.IsLocalPlayer]"
}
}
}
hbox = {
layoutpolicy_horizontal = expanding
margin_top = 4
button_primary = {
name = "sponsor_inspiration"
text = START_SPONSOR_INSPIRATION
visible = "[Not( Inspiration.GetSponsor.IsValid )]"
enabled = "[Character.IsPlayerInteractionValid( 'fund_inspiration_interaction' )]"
onclick = "[Character.OpenPlayerInteraction( 'fund_inspiration_interaction' )]"
tooltip = "[Character.GetPlayerInteractionTooltip( 'fund_inspiration_interaction' )]"
}
}
vbox = {
name = "inspiration_progress"
layoutpolicy_horizontal = expanding
layoutpolicy_vertical = expanding
margin_bottom = -8
margin_top = -10
spacing = 5
visible = "[Inspiration.GetSponsor.IsValid]"
text_single = {
text = INSPIRATION_IN_PROGRESS
}
progressbar_segmented_chance = {
name = "progress_bar"
tooltip = "INSPIRATION_ITEM_PROGRESS_TOOLTIP"
datamodel = "[GetSegmentedProgressChanceBar( GetDefine( 'NInspiration', 'MAX_PROGRESS' ), GetDefine( 'NInspiration', 'PROGRESS_FRAMES' ), Inspiration.GetProgress, Inspiration.GetProgressChance )]"
}
text_single = {
text = INSPIRATION_ESTIMATED_REMAINING
tooltip = INSPIRATION_ESTIMATED_TIME_TOOLTIP
}
expand = {
layoutpolicy_vertical = expanding
}
}
}
}
### Ongoing longer term objects and map modes
# eg: Wars, Schemes, Inspirations
flowcontainer = {
visible = "[And(And(IsDefaultGUIMode, Not(IsRightWindowOpen)), Not( GreaterThan_CFixedPoint( GetPlayer.MakeScope.Var('hide_ui_bottom_right_temporary_statuses').GetValue, '(CFixedPoint)0' ) ))]"
parentanchor = bottom|right
widgetanchor = top|right
position = { 0 -175 }
alwaystransparent = yes
ignoreinvisible = yes
filter_mouse = all
allow_outside = yes
spacing = 30
state = {
name = _show
using = Animation_FadeIn_Quick
}
state = {
name = _hide
using = Animation_FadeOut_Quick
}
# In progress systems
flowcontainer = {
name = "in_progress_systems"
ignoreinvisible = yes
margin_top = 15
visible = "[Not(IsGameViewOpen('barbershop'))]"
### Raise/Disband armies ###
container = {
visible = "[Not(GetPlayer.HasActiveCompanionAISetting('raise_armies'))]"
ignoreinvisible = yes
parentanchor = vcenter
button_raise_disband_armies = {
name = "tutorial_highlight_raise_troops"
visible = "[And( Character.IsAtWar, Not(Character.HasRaisedRegiments))]"
visible_at_creation = no
enabled = "[PlayerCanRaiseAnyRallyPoint]"
onclick = "[PlayerRaiseAllRegiments]"
onrightclick = "[PlayerRaiseAllRegimentsAtLocation]"
button_ignore = none
clicksound = "event:/SFX/UI/Unit/Army/sfx_ui_raise_army"
onclick = "[PdxGuiTriggerAllAnimations('button_army')]"
tooltip = "[GetPlayerRaiseAllTooltip]"
animation_aggressive = {}
}
button_raise_disband_armies = {
visible = "[PlayerShouldDisbandAll]"
visible_at_creation = no
onclick = "[PlayerDisbandAll]"
enabled = "[PlayerCanDisbandAll]"
clicksound = "event:/SFX/UI/Unit/Army/sfx_ui_unit_army_disband"
blockoverride "text" {
text = "DISBAND_ALL"
}
tooltip = "[GetDisbandAllTooltip]"
}
}
### Inspirations ###
flowcontainer = {
name = "player_inspirations"
parentanchor = vcenter
spacing = 5
margin = { 5 0 }
allow_outside = yes
datamodel = "[GetPlayer.GetSponsoredInspirations]"
item = {
button_normal = {
datacontext = "[Inspiration.GetOwner]"
size = { 60 60 }
tooltip = "TT_INSPIRATION_WIDGET"
using = tooltip_above
onclick = "[InGameBottomBar.ToggleSelectedInspiration( Inspiration.Self )]"
icon_round_button_base = {}
icon = {
visible = "[ObjectsEqual( InGameBottomBar.GetSelectedInspiration, Inspiration.Self )]"
texture = "gfx/interface/buttons/button_lifestyles_active_frame.dds"
size = { 100% 100% }
}
icon = {
name = "progress_frame"
texture = "gfx/interface/progressbars/action_progress_frame.dds"
size = { 100% 100% }
parentanchor = center
alpha = 0.5
}
progresspie = {
name = "progress"
visible = "[And( Inspiration.GetSponsor.IsValid, Not( Inspiration.IsComplete ) )]"
size = { 52 52 }
texture = "gfx/interface/progressbars/action_progress_thin.dds"
framesize = { 128 128 }
frame = 2
widgetanchor = center
parentanchor = center
min = 0
max = 100
value = "[Select_float( GreaterThan_int32( Inspiration.GetProgress, '(int32)0' ), CurrentAndMaxToProgressbarValueInt32( Inspiration.GetProgress, GetDefine( 'NInspiration', 'MAX_PROGRESS' ) ), '(float)2' )]"
}
highlight_icon = {
texture = "[Inspiration.GetType.GetIcon]"
alwaystransparent = yes
size = { 40 40 }
position = { 1 1 }
parentanchor = center
}
}
}
}
### Schemes ###
flowcontainer = {
name = "player_schemes"
datamodel = "[InGameBottomBar.GetSchemes]"
parentanchor = vcenter
spacing = 10
margin = { 5 0 }
allow_outside = yes
item = {
button_normal = {
name = "tutorial_highlight_lifestyle_HUD_button"
onclick = "[BottomBarSchemeItem.OnClick]"
onrightclick = "[BottomBarSchemeItem.OnClick]"
onrightclick = "[PostCommand( BottomBarSchemeItem.TriggerSchemeHudClick )]"
button_ignore = none
datacontext = "[BottomBarSchemeItem.GetScheme]"
tooltip = "BOTTOMBAR_SCHEME_TOOLTIP"
size = { 90 112 }
### Scheme exposed animation
icon = {
visible = "[Scheme.IsExposed]"
parentanchor = center
position = { 0 0 }
size = { 120 135 }
texture = "gfx/interface/colors/white.dds"
using = Color_Red
shaderfile = "gfx/FX/pdxgui_repeat_texture.shader"
modify_texture = {
name = "clouds"
texture = "gfx/interface/component_masks/mask_clouds.dds"
blend_mode = alphamultiply
spriteType = corneredtiled
texture_density = 3
}
modify_texture = {
texture = "gfx/interface/component_masks/mask_glow.dds"
mirror = vertical
blend_mode = alphamultiply
}
state = {
name = mask_a
next = mask_b
trigger_on_create = yes
modify_texture = {
name = "clouds"
translate_uv = { 0 -1 }
}
}
state = {
name = mask_b
next = mask_a
duration = 8
modify_texture = {
name = "clouds"
translate_uv = { 0 1 }
}
}
}
# Glow pulse animation when you have an opportunity
icon = {
visible = "[GreaterThan_int32( Scheme.GetAgentCharges, '(int32)0' )]"
parentanchor = center
position = { 0 4 }
size = { 100 114 }
texture = "gfx/interface/window_scheme/scheme_hud_bg_glow.dds"
using = Color_Bright_Yellow
alpha = 0
modify_texture = {
texture = "gfx/interface/component_masks/mask_clouds.dds"
blend_mode = alphamultiply
alpha = 0.8
}
state = {
name = a
next = b
trigger_on_create = yes
alpha = 0
duration = 0
scale = 1
using = Animation_Curve_Default
}
state = {
name = b
next = c
alpha = 1
duration = 0.3
scale = 1.07
using = Animation_Curve_Default
}
state = {
name = c
next = d
alpha = 0
duration = 0.5
scale = 1.1
using = Animation_Curve_Default
}
state = {
name = d
next = a
alpha = 0
duration = 0
delay = 3
scale = 1
}
}
highlight_icon = {
texture = "gfx/interface/window_scheme/scheme_hud_bg.dds"
size = { 100% 100% }
}
# Pogressbar & frame
highlight_icon = {
name = "progress_frame"
texture = "gfx/interface/window_scheme/scheme_hud_bg_progress_frame.dds"
size = { 100% 100% }
parentanchor = center
alpha = 0.5
}
progresspie = {
name = "progress"
position = { 0.3 -2.5 }
size = { 76 76 }
texture = "gfx/interface/progressbars/action_progress_thin.dds"
framesize = { 128 128 }
frame = 2
widgetanchor = center
parentanchor = center
value = "[Scheme.GetProgressBar]"
min = 0
max = 1
mirror = vertical|horizontal
}
# Target
container = {
parentanchor = center
# Character Target
container = {
datacontext = "[Scheme.GetTargetCharacter]"
visible = "[Character.IsValid]"
parentanchor = center
position = { 0 9 }
portrait_scheme_hud = {}
}
# Title Target
container = {
datacontext = "[Scheme.GetTargetTitle]"
visible = "[Title.IsValid]"
parentanchor = center
position = { 0 -12 }
coa_title_tiny = {
tooltip_visible = no
alwaystransparent = yes
}
}
# Faith Target
container = {
datacontext = "[Scheme.GetTargetFaith]"
visible = "[Faith.IsValid]"
parentanchor = center
position = { 0 -12 }
icon = {
name = "faith_icon"
texture = "[Faith.GetIcon]"
size = { 40 40 }
}
}
# Culture Target
container = {
datacontext = "[Scheme.GetTargetCulture]"
visible = "[Culture.IsValid]"
parentanchor = center
position = { 0 -12 }
text_single = {
text = "HUD_GETCULTURE"
}
}
}
# Scheme type icon & bg
widget = {
parentanchor = bottom|hcenter
position = { 0 -16 }
highlight_icon = {
parentanchor = center
size = { 32 32 }
texture = "gfx/interface/window_scheme/scheme_hud_icon_bg.dds"
alwaystransparent = yes
}
highlight_icon = {
texture = "[Scheme.GetSchemeType.GetIcon]"
size = { 30 30 }
alwaystransparent = yes
parentanchor = center
}
}
# Scheme success chance
hbox = {
parentanchor = center
position = { 0 14 }
maximumsize = { 30 20 }
spacing = 2
background = {
using = Background_Area_Dark
}
icon = {
name = success_icon
size = { 20 20 }
texture = "gfx/interface/icons/schemes/icon_scheme_success.dds"
}
text_single = {
name = "success"
text = "SCHEME_WIDGET_SUCCESS_CHANCE"
align = nobaseline
fontsize = 13 # Smallest allowed fontsize
}
icon = {
visible = "[Scheme.IsExposed]"
size = { 20 20 }
alwaystransparent = yes
texture = "gfx/interface/icons/schemes/icon_discovered_scheme.dds"
tooltip = "INTRIGUE_WINDOW_AGENT_DISCOVERED_TT"
}
}
# Opportunities
widget = {
visible = "[GreaterThan_int32( Scheme.GetAgentCharges, '(int32)0' )]"
parentanchor = top|right
position = { 5 8 }
size = { 45 22 }
alwaystransparent = yes
background = {
using = Background_Area_Dark
margin_right = 10
modify_texture = {
texture = "gfx/interface/component_masks/mask_fade_horizontal_middle.dds"
blend_mode = alphamultiply
}
}
flowcontainer = {
parentanchor = center
icon = {
parentanchor = vcenter
size = { 20 20 }
texture = "gfx/interface/icons/schemes/icon_scheme_opportunity.dds"
}
text_single = {
text = "[Scheme.GetAgentCharges]"
default_format = "#high"
max_width = 25
align = nobaseline
}
}
}
### Countermeasure icon
widget = {
visible = "[And(Scheme.GetSchemeCountermeasureProtectingTarget.IsValid, Scheme.GetSchemeType.IsHostile)]"
datacontext = "[Scheme.GetSchemeCountermeasureProtectingTarget]"
parentanchor = top|left
position = { 0 2 }
size = { 30 30 }
tooltip = "SCHEME_COUNTERMEASURE_PROTECTING_TARGET"
background = {
using = Background_Area_ExtraDark
margin = { 2 2 }
modify_texture = {
texture = "gfx/interface/component_masks/mask_circle.dds"
blend_mode = alphamultiply
}
}
# The frame
icon = {
parentanchor = center
size = { 30 30 }
alwaystransparent = yes
texture = "gfx/interface/icons/scheme_countermeasure_types/frame_purple.dds"
}
icon = {
visible = "[SchemeCountermeasureType.IsValid]"
parentanchor = center
size = { 30 30 }
alwaystransparent = yes
texture = "[SchemeCountermeasureType.GetIcon]"
}
}
}
}
}
### Task Contacts ###
flowcontainer = {
name = "task_contracts"
datamodel = "[GetPlayer.GetAcceptedTaskContracts]"
parentanchor = vcenter
ignoreinvisible = yes
item = {
button_task_contract_banner = {}
}
}
### Epidemics in/near your realm ###
button_epidemics = {
name = "epidemics_hud"
parentanchor = vcenter
visible_at_creation = no
visible = "[Or( InGameBottomBar.HasGlobalNotificationEpidemic, Or( DataModelHasItems( InGameBottomBar.GetEpidemicsInRealm ), DataModelHasItems( InGameBottomBar.GetEpidemicsBorderingRealm ) ) )]"
}
### Wars ###
flowcontainer = {
name = "wars"
parentanchor = vcenter
ignoreinvisible = yes
flowcontainer = {
name = "great_holy_wars"
parentanchor = vcenter
ignoreinvisible = yes
flowcontainer = {
ignoreinvisible = yes
parentanchor = vcenter
datamodel = "[GetPlayer.GetFaith.GetDefensiveGreatHolyWars]"
item = {
button_ghw_banner = {
name = "defensive_ghw"
parentanchor = vcenter
blockoverride "ghw_tooltip"
{
tooltip = "GHW_OPEN_TOOLTIP_DEFENDER"
using = tooltip_ne
}
}
}
}
button_ghw_banner = {
name = "player_faith_ghw"
datacontext = "[GetPlayer.GetFaith.GetGreatHolyWar]"
visible = "[GetPlayer.GetFaith.HasOffensiveGreatHolyWar]"
visible_at_creation = no
parentanchor = vcenter
blockoverride "ghw_tooltip"
{
tooltip = "GHW_OPEN_TOOLTIP_ATTACKER"
using = tooltip_ne
}
}
}
flowcontainer = {
name = "raids_on_me"
datamodel = "[GetPlayer.GetHostileRaiders]"
parentanchor = vcenter
item = {
button_raid_banner = {
parentanchor = vcenter
tooltip = "RAID_ON_ME_TOOLTIP"
}
}
}
flowcontainer = {
name = "raids_by_me"
datamodel = "[GetPlayer.GetRaidTargets]"
parentanchor = vcenter
item = {
button_raid_banner = {
parentanchor = vcenter
tooltip = "RAID_BY_ME_TOOLTIP"
}
}
}
flowcontainer = {
name = "regular_wars"
datamodel = "[InGameBottomBar.GetWarItems]"
ignoreinvisible = yes
item = {
button_war_banner = {}
}
}
}
### Situations & Struggles ###
flowcontainer = {
name = "hud_situations_tutorial_uses_this"
parentanchor = vcenter
ignoreinvisible = yes
flowcontainer = {
name = "visible_situations"
parentanchor = vcenter
ignoreinvisible = yes
datamodel = "[InGameBottomBar.GetVisibleSituations]"
item = {
button_situation_banner = {
parentanchor = bottom
}
}
}
flowcontainer = {
name = "visible_struggles"
parentanchor = vcenter
ignoreinvisible = yes
datamodel = "[InGameBottomBar.GetVisibleStruggles]"
item = {
button_struggle_banner = {}
}
}
button_situation_banner = {
visible = "[InGameBottomBar.ShouldShowDynasticCycle]"
datacontext = "[InGameBottomBar.GetDynasticCycle]"
size = { 100 100 }
name = "dynastic_cycle_highlight"
onclick = "[OpenGuiTab( 'dynastic_cycle_tabs', 'dynastic_cycle' )]"
blockoverride "tooltipwidget"
{
tooltip = "DYNASTIC_CYCLE_OPEN_CYCLE_TT"
using = tooltip_ne
}
blockoverride "glow_visible"
{
visible = no
}
blockoverride "background_texture"
{
texture = "gfx/interface/hud/situation_background_dynastic_cycle.dds"
}
blockoverride "icon_size"
{
size = { 56 56 }
position = { 0 1 }
}
blockoverride "progress_pie_visibility"
{
visible = yes
}
blockoverride "progresspie_size"
{
size = { 66 66 }
position = { 0 1 }
}
}
}
}
## Map Modes
map_modes = {
visible = "[Not(IsGameViewOpen('barbershop'))]"
filter_mouse = all
using = Animation_ShowHide_Quick
alwaystransparent = no
parentanchor = vcenter
blockoverride "map_mode_tutorial"
{
widgetid = "map_mode_duchies_button"
}
}
}
}
######################################################
############# MESSAGES AND NOTIFICATIONS #############
######################################################
### Message Feed
notifications_message_feed = {
position = { -10 -135 }
layer = bottom
}
### Toasts
notifications_toasts = {
parentanchor = top|hcenter
layer = middle
}
### Suggestions / Current Situation
notifications_suggestions = {
layer = hud_layer
attachto = {
widgetid = "suggestions_placer"
}
}
######################################################
################ TYPES AND TEMPLATES #################
######################################################
types HUD
{
type icon_hud_background_container = container {
icon_hud_background = {
visible = "[LessThanOrEqualTo_int32( InGameBottomBar.GetHudOptionalItemsCount, '(int32)1' )]"
size = { 400 64 }
}
icon_hud_background = {
visible = "[EqualTo_int32( InGameBottomBar.GetHudOptionalItemsCount, '(int32)2' )]"
size = { 460 64 }
}
icon_hud_background = {
visible = "[EqualTo_int32( InGameBottomBar.GetHudOptionalItemsCount, '(int32)3' )]"
size = { 520 64 }
}
icon_hud_background = {
visible = "[EqualTo_int32( InGameBottomBar.GetHudOptionalItemsCount, '(int32)4' )]"
size = { 580 64 }
}
icon_hud_background = {
visible = "[EqualTo_int32( InGameBottomBar.GetHudOptionalItemsCount, '(int32)5' )]"
size = { 640 64 }
}
icon_hud_background = {
visible = "[GreaterThanOrEqualTo_int32( InGameBottomBar.GetHudOptionalItemsCount, '(int32)6' )]"
size = { 700 64 }
}
}
type bottom_left_temporary_statuses = flowcontainer {
name = "bottom_left_bar_temporary_statuses"
datacontext = "[GetPlayer]"
datacontext = "[Character.GetInvolvedActivity]"
visible = "[And( Not( IsPauseMenuShown ), And( And( IsDefaultGUIMode, Character.IsValid ), Not( GetVariableSystem.Exists( 'hide_bottom_left_HUD') ) ) )]"
visible_at_creation = no
ignoreinvisible = yes
alwaystransparent = no
flowcontainer = {
name = "involved_activity"
visible = "[And( Activity.IsValid, Not( Activity.IsComplete ) )]"
visible_at_creation = no
spacing = 8
activity_hud_button = {
name = "activity_button"
}
button_hud_travel = {
name = "activity_travel_button"
datacontext = "[Character.GetTravelPlan]"
visible = "[Character.IsTraveling]"
parentanchor = "vcenter"
text = "ACTIVITY_VIEW_TRAVEL"
tooltip = "[SelectLocalization(Character.GetTravelPlan.GetData.IsTravelWithDomicile, 'TT_TRAVELING_WITH_DOMICILE_WIDGET', 'TT_TRAVELING_GENERIC_WIDGET')]"
max_width = 160
onclick = "[ToggleGameViewData('travel_planner', TravelPlan.GetID)]"
onclick = "[Character.ZoomCameraTo]"
}
}
button_normal = {
name = "traveling"
datacontext = "[Character.GetTravelPlan]"
visible_at_creation = no
visible = "[And( Character.IsTraveling, Or( Not( Activity.IsValid ), Activity.IsComplete ) )]"
size = { 60 60 }
onclick = "[ToggleGameViewData('travel_planner', TravelPlan.GetID)]"
onclick = "[Character.ZoomCameraTo]"
tooltip = "[SelectLocalization(Character.GetTravelPlan.GetData.IsTravelWithDomicile, 'TT_TRAVELING_WITH_DOMICILE_WIDGET', 'TT_TRAVELING_GENERIC_WIDGET')]"
using = tooltip_above
icon_round_button_base = {}
icon = {
name = "progress_frame"
texture = "gfx/interface/progressbars/action_progress_frame.dds"
size = { 100% 100% }
parentanchor = center
alpha = 0.5
}
progresspie = {
name = "progress"
size = { 50 50 }
texture = "gfx/interface/progressbars/action_progress_thin.dds"
framesize = { 128 128 }
frame = 2
widgetanchor = center
parentanchor = center
value = "[TravelPlan.GetData.GetNextDestinationProgress]"
min = 0
max = 1
}
highlight_icon = {
texture = "gfx/interface/icons/travel/icon_travel_hud_placeholder.dds"
alwaystransparent = yes
size = { 45 45 }
parentanchor = center
}
}
button_normal = {
name = "away_from_capital"
visible_at_creation = no
visible = "[And( Not( Character.IsTraveling ), And( Character.IsAwayFromHome, Or( Not( Activity.IsValid ), Activity.IsComplete ) ) )]"
size = { 60 60 }
onclick = "[Character.ZoomCameraTo]"
tooltip = "TT_AWAY_FROM_HOME_WIDGET"
using = tooltip_above
icon = {
texture = "gfx/interface/icons/activity_phases/button_activity_base.dds"
size = { 100% 100% }
}
icon = {
texture = "gfx/interface/icons/character_interactions/request_camp_follower_interaction.dds"
alwaystransparent = yes
size = { 35 35 }
parentanchor = center
}
}
}
####
#
# NOTE: If you add a button in here, you must update InGameBottomBar.GetHudOptionalItemsCount and use a code defined function for visibility
# Otherwise, the background (which is placed behind the player portrait) will not extend properly
#
####
type bottom_left_button_row = flowcontainer {
name = "bottom_left_bar"
visible = "[And(And( Not(IsGameViewOpen('barbershop')), And( Not( IsPauseMenuShown ), And(And(IsDefaultGUIMode, GetPlayer.IsValid), Not(GetVariableSystem.Exists( 'hide_bottom_left_HUD'))))), Not( GreaterThan_CFixedPoint( GetPlayer.MakeScope.Var('hide_ui_bottom_left_bar').GetValue, '(CFixedPoint)0' ) ))]"
ignoreinvisible = yes
alwaystransparent = no
allow_outside = yes
spacing = 4
state = {
name = _show
using = Animation_Curve_Default
duration = 0.21
position = { 66 0 }
alpha = 1
}
state = {
name = _hide
using = Animation_Curve_Default
duration = 0.21
position = { 30 50 }
alpha = 0
}
button_normal = {
name = "legitimacy_button"
datacontext = "[Character.GetLegitimacyType]"
datacontext = "[Character.GetLegitimacyLevel]"
visible = "[InGameBottomBar.ShouldShowLegitimacyInHUD]"
parentanchor = vcenter
using = tooltip_ne
tooltipwidget = {
legitimacy_hud_tooltip = {
datacontext = "[InGameBottomBar.GetLegitimacyBar]"
}
}
size = { 48 48 }
icon = {
texture = "gfx/interface/icons/activity_phases/button_activity_base.dds"
size = { 100% 100% }
}
icon = {
name = "progress_frame"
texture = "gfx/interface/progressbars/action_progress_frame.dds"
size = { 100% 100% }
#alpha = 0.5
}
icon = {
parentanchor = vcenter
position = { 6 0 }
size = { 36 36 }
texture = "[Character.GetLegitimacyType.GetLevelsIcon]"
framesize = { 70 70 }
frame = "[IntToFrameIndex( LegitimacyLevel.GetIndex )]"
modify_texture = {
name = "lvl_increase"
texture = "gfx/interface/colors/gold.dds"
blend_mode = colordodge
alpha = 0
}
modify_texture = {
name = "lvl_decrease"
texture = "gfx/interface/colors/red.dds"
blend_mode = colordodge
alpha = 0
}
state = {
name = "legitimacy_level_increase"
next = "legitimacy_level_increase_2"
modify_texture = {
name = "lvl_increase"
alpha = 0
}
}
state = {
name = "legitimacy_level_increase_2"
next = "legitimacy_level_increase_3"
duration = 0.4
bezier = { 0.5 0 1 0.5 }
modify_texture = {
name = "lvl_increase"
alpha = 0.7
}
}
state = {
name = "legitimacy_level_increase_3"
duration = 0.5
bezier = { 0 0.5 0.5 1 }
modify_texture = {
name = "lvl_increase"
alpha = 0
}
}
state = {
name = "legitimacy_level_decrease"
next = "legitimacy_level_decrease_2"
modify_texture = {
name = "lvl_decrease"
alpha = 0
}
}
state = {
name = "legitimacy_level_decrease_2"
next = "legitimacy_level_decrease_3"
duration = 0.4
bezier = { 0.5 0 1 0.5 }
modify_texture = {
name = "lvl_decrease"
alpha = 0.7
}
}
state = {
name = "legitimacy_level_decrease_3"
duration = 0.5
bezier = { 0 0.5 0.5 1 }
modify_texture = {
name = "lvl_decrease"
alpha = 0
}
}
}
progresspie = {
name = "progress"
size = { 42 42 }
texture = "gfx/interface/progressbars/action_progress_thin_blue.dds"
framesize = { 128 128 }
frame = 2
value = "[InGameBottomBar.GetLegitimacyProgress]"
parentanchor = center
modify_texture = {
texture = "gfx/interface/colors/blue.dds"
blend_mode = normal
}
}
}
widget = {
name = "stress_widget"
size = { 110 55 }
alwaystransparent = no
filter_mouse = all
widget = {
parentanchor = center
size = { 180 108 }
tooltip = "PLAYER_STRESS_TOOLTIP"
using = tooltip_ne
widget = {
name = "progressbar"
parentanchor = center
widgetanchor = left|vcenter
position = { -13 0 }
size = { 60 20 }
background = {
texture = "gfx/interface/colors/white.dds"
color = { 0.1 0.1 0.1 0.8 }
}
icon = {
visible = "[EqualTo_int32(GetPlayer.GetStressLevel, '(int32)2')]"
size = { 100% 100% }
texture = "gfx/interface/colors/white.dds"
color = { 1 0.1 0.1 0.2 }
using = Animation_ShowHide_Standard
state = {
name = a
next = b
trigger_on_create = yes
using = Animation_Curve_Default
duration = 0.8
alpha = 0
}
state = {
name = b
next = a
using = Animation_Curve_Default
duration = 1.5
alpha = 1
}
}
hbox = {
widget = {
layoutpolicy_horizontal = expanding
layoutpolicy_vertical = expanding
layoutstretchfactor_horizontal = "[GetProgressBarValueMaxScaled( GetPlayer.GetStressProgress, '(float)100', '(int32)60' )]"
progressbar_hud_stress = {
visible = "[GreaterThanOrEqualTo_int32(GetPlayer.GetStressLevel, '(int32)3')]"
visible_at_creation = no
size = { 100% 100% }
using = Animation_ShowHide_Standard
blockoverride "bar_color"
{
texture = "gfx/interface/colors/red.dds"
}
blockoverride "bar_color_flow"
{
texture = "gfx/interface/colors/gold.dds"
alpha = 0.7
}
}
progressbar_hud_stress = {
visible = "[EqualTo_int32(GetPlayer.GetStressLevel, '(int32)2')]"
visible_at_creation = no
size = { 100% 100% }
using = Animation_ShowHide_Standard
blockoverride "bar_color"
{
texture = "gfx/interface/colors/orange.dds"
}
blockoverride "bar_color_flow"
{
texture = "gfx/interface/colors/white.dds"
alpha = 0.3
}
}
progressbar_hud_stress = {
visible = "[EqualTo_int32(GetPlayer.GetStressLevel, '(int32)1')]"
visible_at_creation = no
size = { 100% 100% }
using = Animation_ShowHide_Standard
blockoverride "bar_color"
{
texture = "gfx/interface/colors/gold_darker.dds"
}
blockoverride "bar_color_flow"
{
texture = "gfx/interface/colors/white.dds"
alpha = 0.3
}
}
progressbar_hud_stress = {
visible = "[EqualTo_int32(GetPlayer.GetStressLevel, '(int32)0')]"
size = { 100% 100% }
using = Animation_ShowHide_Standard
blockoverride "bar_color"
{
texture = "gfx/interface/colors/blue.dds"
}
blockoverride "bar_color_flow"
{
texture = "gfx/interface/colors/white.dds"
alpha = 0.3
}
}
}
widget = {
layoutpolicy_horizontal = expanding
layoutpolicy_vertical = expanding
layoutstretchfactor_horizontal = "[GetProgressBarValueMaxOtherScaled( GetPlayer.GetStressProgress, '(float)100', '(int32)60' )]"
}
}
}
widget = {
size = { 100% 100% }
progressbar_hud_stress_glow = {
texture = "gfx/interface/hud/hud_stress_glow_red.dds"
blockoverride "animation_trigger_1"
{
name = "stress_level_increase"
}
blockoverride "animation_trigger_2"
{
name = "stress_increase"
}
}
progressbar_hud_stress_glow = {
texture = "gfx/interface/hud/hud_stress_glow_blue.dds"
blockoverride "animation_trigger_1" {
name = "stress_level_decrease"
}
blockoverride "animation_trigger_2"
{
name = "stress_decrease"
}
}
progressbar_hud_stress_glow = {
visible = "[EqualTo_int32(GetPlayer.GetStressLevel, '(int32)3')]"
texture = "gfx/interface/hud/hud_stress_glow_red.dds"
blockoverride "animation_trigger_1" {
name = "lvl3_fire"
trigger_on_create = yes
}
blockoverride "animation_trigger_2" {}
blockoverride "lvl_3" {}
}
icon = {
parentanchor = center
position = { -30 0 }
size = { 30 30 }
texture = "gfx/interface/colors/white.dds"
using = Color_Red
modify_texture = {
name = "mask_1"
texture = "gfx/interface/component_masks/mask_glow.dds"
blend_mode = alphamultiply
rotate_uv = 1
}
modify_texture = {
name = "mask_2"
texture = "gfx/interface/component_masks/mask_glow.dds"
blend_mode = alphamultiply
rotate_uv = -1
}
modify_texture = {
name = "mask_3"
texture = "gfx/interface/component_masks/mask_clouds.dds"
blend_mode = alphamultiply
alpha = 0.1
}
modify_texture = {
name = "mask_4"
texture = "gfx/interface/component_masks/mask_circle.dds"
blend_mode = mask
}
modify_texture = {
name = "mask_3"
texture = "gfx/interface/colors/gold.dds"
blend_mode = add
}
state = {
name = "stress_level_increase"
next = b
using = Animation_Curve_Default
scale = 1
alpha = 0
}
state = {
name = b
next = c
duration = 0.6
bezier = { 0.5 0 1 0.5 }
scale = 5
alpha = 0.7
}
state = {
name = c
duration = 0.3
alpha = 0
scale = 6
}
state = {
name = rotate_a
next = rotate_b
trigger_on_create = yes
modify_texture = {
name = "mask_1"
rotate_uv = 1
}
}
state = {
name = rotate_a
next = rotate_b
duration = 1
modify_texture = {
name = "mask_1"
rotate_uv = 180
}
}
state = {
name = rotate_a_2
next = rotate_b_2
trigger_on_create = yes
modify_texture = {
name = "mask_2"
rotate_uv = -1
}
}
state = {
name = rotate_a_2
next = rotate_b_2
duration = 1
modify_texture = {
name = "mask_2"
rotate_uv = -180
}
}
state = {
name = rotate_a_3
next = rotate_b_3
trigger_on_create = yes
modify_texture = {
name = "mask_3"
rotate_uv = 0
alpha = 0.1
}
}
state = {
name = rotate_a_3
next = rotate_b_3
duration = 1
modify_texture = {
name = "mask_3"
rotate_uv = 40
alpha = 0.8
}
}
}
icon = {
size = { 100% 100% }
texture = "gfx/interface/skinned/hud_stress_bg.dds"
icon = {
parentanchor = vcenter
position = { 41 0 }
size = { 35 35 }
texture = "gfx/interface/icons/stress/icon_stress_level.dds"
framesize = { 70 70 }
frame = "[IntToFrameIndex( GetPlayer.GetStressLevel )]"
modify_texture = {
visible = "[GreaterThanOrEqualTo_int32(GetPlayer.GetStressLevel, '(int32)2')]"
name = "lvl3_glow"
texture = "gfx/interface/colors/gold.dds"
blend_mode = colordodge
alpha = 0
}
modify_texture = {
name = "lvl_increase"
texture = "gfx/interface/colors/gold.dds"
blend_mode = colordodge
alpha = 0
}
state = {
name = a
next = b
duration = 0.6
trigger_on_create = yes
using = Animation_Curve_Default
modify_texture = {
name = "lvl3_glow"
alpha = 0.3
}
}
state = {
name = b
next = a
duration = 1.5
using = Animation_Curve_Default
modify_texture = {
name = "lvl3_glow"
alpha = 0
}
}
state = {
name = "stress_level_increase"
next = "stress_level_increase_2"
modify_texture = {
name = "lvl_increase"
alpha = 0
}
}
state = {
name = "stress_level_increase_2"
next = "stress_level_increase_3"
duration = 0.4
bezier = { 0.5 0 1 0.5 }
modify_texture = {
name = "lvl_increase"
alpha = 0.7
}
}
state = {
name = "stress_level_increase_3"
duration = 0.5
bezier = { 0 0.5 0.5 1 }
modify_texture = {
name = "lvl_increase"
alpha = 0
}
}
}
}
}
}
}
spacer = {
size = { 5 0 }
}
flowcontainer = {
ignoreinvisible = yes
margin_bottom = 5
spacing = 4
button_normal = {
name = "lifestyle_button"
visible = "[GetPlayer.IsAdult]"
tooltip = "PLAYER_LIFESTYLE_TOOLTIP"
using = tooltip_ne
onclick = "[OpenGameViewData( 'lifestyle', GetPlayer.GetID )]"
size = { 56 56 }
icon_round_button_base = {}
icon = {
name = "progress_frame"
texture = "gfx/interface/progressbars/action_progress_frame.dds"
size = { 100% 100% }
alpha = 0.5
}
highlight_icon_lifestyle_focus = {
name = "tutorial_highlight_lifestyle_HUD_button"
texture = "[GetPlayer.GetFocus.GetIcon]"
alwaystransparent = yes
size = { 100% 100% }
modify_texture = {
texture = "gfx/interface/icons/focuses/hud_icon_mask.dds"
blend_mode = alphamultiply
}
}
icon = {
visible = "[And(Not( GreaterThan_CFixedPoint( GetPlayer.MakeScope.Var('hide_ui_pulsating_lifestyle').GetValue, '(CFixedPoint)0' ) ),Or(GetPlayer.CanPlayerChangeMyFocus, Not( GetPlayer.GetLifestyle.IsValid )))]"
size = { 100% 100% }
alwaystransparent = yes
texture = "[GetPlayer.GetFocus.GetIcon]"
modify_texture = {
texture = "gfx/interface/icons/focuses/hud_icon_mask.dds"
blend_mode = alphamultiply
}
modify_texture = {
texture = "gfx/interface/colors/gold.dds"
blend_mode = add
}
modify_texture = {
texture = "gfx/interface/colors/red.dds"
blend_mode = colordodge
}
state = {
name = a
next = b
alpha = 0
trigger_on_create = yes
duration = 1.2
using = Animation_Curve_Default
}
state = {
name = b
next = a
alpha = 0.8
duration = 0.6
using = Animation_Curve_Default
}
}
progresspie = {
name = "progress"
size = { 48 48 }
texture = "gfx/interface/progressbars/action_progress_thin.dds"
framesize = { 128 128 }
frame = 2
value = "[GetPlayer.GetLifestyleExperienceProgress( GetPlayer.GetLifestyle.Self )]"
widgetanchor = center
parentanchor = center
position = { 0 0 }
min = 0
max = 1
}
button_round = {
datacontext = "[GetPlayer]"
visible = "[And(GreaterThan_int32( Character.GetTotalPerkPoints, '(int32)0' ), Character.IsLocalPlayer)]"
parentanchor = bottom|right
position = { 7 3 }
size = { 28 28 }
framesize = { 82 82 }
upframe = 1
uphoverframe = 1
uppressedframe = 1
alwaystransparent = yes
text_single = {
parentanchor = center
datacontext = "[GetPlayer]"
text = "[Character.GetTotalPerkPoints]"
default_format = "#high"
max_width = 180
align = nobaseline
# animation_attention = {
# visible = "[GreaterThan_int32( GetPlayer.GetTotalPerkPoints, '(int32)0' )]"
# }
}
}
animation_sonar = {
texture = "gfx/interface/component_effects/effect_sonar_ring.dds"
visible = "[GreaterThan_int32( GetPlayer.GetTotalPerkPoints, '(int32)0' )]"
}
}
button_normal = {
name = "education_button"
visible = "[Not(GetPlayer.IsAdult)]"
tooltip = "PLAYER_EDUCATION_FOCUS_TOOLTIP"
using = tooltip_ne
onclick = "[ToggleGameViewData( 'character_focus', GetPlayer.GetID )]"
size = { 56 56 }
icon_round_button_base = {}
highlight_icon_lifestyle_focus = {
texture = "[GetPlayer.GetFocus.GetIcon]"
onclick = "[ToggleGameViewData( 'character_focus', GetPlayer.GetID )]"
size = { 100% 100% }
gfxtype = togglepushbuttongfx
effectname = "NoHighlight"
framesize = { 140 140 }
modify_texture = {
texture = "gfx/interface/icons/focuses/hud_icon_mask.dds"
blend_mode = alphamultiply
}
}
}
widget = {
size = { 56 56 }
button_open_inventory = {
name = "open_inventory_tutorial_uses_this"
using = tooltip_ne
size = { 55 55 }
datacontext = "[GetPlayer]"
blockoverride "highlight_icon_size"
{
size = { 40 40 }
}
}
widget_new_artifacts = {
position = { 6 2 }
parentanchor = bottom|right
visible = "[Or( GreaterThan_int32( LocalPlayerNewArtifacts.GetNumNewArtifactsOfCategory( 'inventory' ), '(int32)0' ), And( Not( GetPlayer.HasRoyalCourt ), GreaterThan_int32( LocalPlayerNewArtifacts.GetNumNewArtifactsOfCategory( 'court' ), '(int32)0' ) ) )]"
}
}
button_round = {
name = "open_diarchy_tutorial_uses_this"
parentanchor = left
onclick = "[ToggleGameViewData( 'diarchy', Character.GetID )]"
visible = "[InGameBottomBar.ShouldShowDiarchyInHUD]"
tooltip = "DIARCHY_WINDOW_OPEN_TOOLTIP"
using = tooltip_ne
size = { 56 56 }
icon_round_button_base = {}
button = {
size = { 40 40 }
alwaystransparent = yes
parentanchor = center
texture = "gfx/interface/icons/scale_of_power.dds"
}
icon_power_sharing_level = {
name = "your_power_sharing_level"
datacontext = "[GetPlayer.GetDiarchy]"
visible = "[Diarchy.IsValid]"
parentanchor = bottom|right
position = { 3 3 }
}
icon_power_sharing_level = {
name = "liege_power_sharing_level"
datacontext = "[GetPlayer.GetLiege.GetDiarchy]"
visible = "[And(GetPlayer.HasLiege, Diarchy.IsValid)]"
parentanchor = bottom|right
position = { 3 3 }
}
}
# Radiance (enabled)
button_normal = {
datacontext = "[Character.GetRadianceBreakdown]"
visible = "[InGameBottomBar.ShouldShowRadianceInHUD]"
size = { 56 56 }
using = tooltip_ne
tooltip_visible = "[ValueBreakdown.HasTooltip]"
tooltipwidget = {
visible = "[ValueBreakdown.HasTooltip]"
widget_value_breakdown_tooltip = {
blockoverride "input_info_text" {
text = "SELECT_MANDALA_MAPMODE"
default_format = "#I"
}
}
}
onclick = "[ToggleMapMode( 'mandala' )]"
icon_round_button_base = {
parentanchor = center
size = { 100% 100% }
}
button_icon = {
alwaystransparent = yes
texture = "gfx/interface/icons/flat_icons/mandala_radiance.dds"
size = { 60% 60% }
parentanchor = center
}
}
button_round = {
name = "hud_camp_button" #tutorial uses this
widgetid = "hud_camp_button"
datacontext = "[Character.GetDomicile]"
visible = "[InGameBottomBar.ShouldShowDomicileInHUD]"
parentanchor = left
size = { 56 56 }
using = tooltip_ne
onclick = "[ToggleGameViewData( 'domicile', Domicile.Self )]"
tooltip = "[Domicile.GetMapPinTooltip( Character.Self )]"
icon_round_button_base = {}
progresspie = {
name = "progress"
visible = "[Domicile.IsConstructing]"
size = { 48 48 }
texture = "gfx/interface/progressbars/action_progress_thin.dds"
framesize = { 128 128 }
frame = 2
value = "[Domicile.GetConstructionProgress]"
widgetanchor = center
parentanchor = center
position = { 0 0 }
min = 0
max = 1
}
button_icon = {
size = { 40 40 }
position = { 0 -1 }
parentanchor = center
alwaystransparent = yes
texture = "[Domicile.GetType.GetIcon]"
}
}
# Bloc
button_normal = {
name = "confederation_button" #tutorial uses this
datacontext = "[GetPlayer.GetConfederation]"
visible = "[InGameBottomBar.ShouldShowBlocInHUD]"
parentanchor = left
size = { 56 56 }
onclick = "[OpenGameViewData( 'confederation_window', Confederation.GetID )]"
using = tooltip_ne
tooltip_offset = { 20 0 }
tooltipwidget = {
using = confederation_tooltip
}
icon_round_button_base = {
alwaystransparent = yes
parentanchor = center
size = { 100% 100% }
button_icon = {
alwaystransparent = yes
texture = "gfx/interface/icons/flat_icons/confederations.dds"
size = { 60% 60% }
parentanchor = center
}
}
}
button_normal = {
name = "house_power_hud_button" #tutorial uses this
datacontext = "[Character.GetHouse]"
datacontext = "[DynastyHouse.GetHouseAspiration]"
visible = "[And(InGameBottomBar.ShouldShowHousePowerInHUD, Not( IsLandlessAdventurer( GetPlayer ) ) )]"
size = { 56 56 }
onclick = "[ToggleGameViewData( 'house_aspiration_window', DynastyHouse.Self )]"
tooltip = "OPEN_HOUSE_ASPIRATION_TT_SELECT"
using = tooltip_ne
icon_round_button_base = {
parentanchor = center
size = { 100% 100% }
}
powerful_family_bonus_icon = {
parentanchor = center
size = { 46 46 }
}
animation_sonar = {
texture = "gfx/interface/component_effects/effect_sonar_ring.dds"
visible = "[ObjectsEqual( GetHouseAspiration('no_aspect'), HouseAspiration.Self)]"
}
}
}
spacer = {
size = { 24 1 }
}
nomad_widget = {
visible = "[IsNomad( GetPlayer )]"
datacontext = "[InGameBottomBar.GetDomainFertilityProgressBar]"
}
widget_stress_sounds = {}
}
type left_edge_tabs = flowcontainer {
name = "side_bottom_left_tabs"
visible = "[And(And( Not( IsPauseMenuShown ), And(And(IsDefaultGUIMode, Character.IsValid), Not(GetVariableSystem.Exists( 'hide_bottom_left_HUD')))), Not( GreaterThan_CFixedPoint( GetPlayer.MakeScope.Var('hide_ui_bottom_left_bar').GetValue, '(CFixedPoint)0' ) ))]"
visible_at_creation = no
ignoreinvisible = yes
alwaystransparent = no
using = Animation_ShowHide_Standard
widget = {
parentanchor = left|top
size = { 100% 150% }
widget = {
size = { 100% 100% }
position = { -24 -20}
Background = {
texture = "gfx/interface/skinned/hud_maintab_bg_middle.dds"
mirror = horizontal
spriteType = CorneredTiled
texture_density = 2
margin = { 0 -50 }
}
Background = {
spriteType = CorneredStretched
spriteborder_top = 100
parentanchor = top|right
texture_density = 2
size = { 50 100 }
texture = "gfx/interface/skinned/hud_maintab_bg_top.dds"
mirror = horizontal
}
Background = {
spriteType = CorneredStretched
spriteborder_bottom = 100
parentanchor = top|right
texture_density = 2
size = { 50 100 }
texture = "gfx/interface/skinned/hud_maintab_bg_bottom.dds"
mirror = horizontal
}
Background = {
size = { 100% 100% }
margin_bottom = 100
using = Background_Area_Dark
modify_texture = {
texture = "gfx/interface/component_masks/mask_fade_vertical_up.dds"
blend_mode = alphaMultiply
}
}
}
}
flowcontainer = {
parentanchor = bottom
ignoreinvisible = yes
direction = vertical
button_hud_character_bar = {
name = "legend_tab"
visible = "[HasDlcFeature( 'legends' )]"
onclick = "[ToggleGameView( 'legends' )]"
tooltipwidget = {
legends_hud_tooltip = {}
}
using = tooltip_es
tooltip_offset = { 20 0 }
highlight_icon = {
parentanchor = center
position = { 0 1 }
size = { 40 40 }
texture = "gfx/interface/icons/legend_hud.dds"
scale = 0.9
glow = {
color = { 0 0 0 0.8 }
glow_radius = 3
using = Glow_Standard
}
}
}
button_hud_character_bar = {
name = "player_culture_button_tutorial_uses_this"
datacontext = "[GetPlayer.GetCulture]"
onclick = "[OpenGameViewData( 'culture_window', Culture.GetID )]"
using = tooltip_es
tooltip_offset = { 20 0 }
tooltipwidget = {
culture_tooltip_click = {}
}
highlight_icon = {
parentanchor = center
position = { 0 1 }
size = { 40 40 }
texture = "gfx/interface/icons/icon_culture.dds"
glow = {
color = { 0 0 0 0.8 }
glow_radius = 3
using = Glow_Standard
}
}
}
# Faith
button_hud_character_bar = {
name = "faith_button"
datacontext = "[GetPlayer.GetFaith]"
parentanchor = left
onclick = "[OpenGameViewData( 'faith', GetPlayer.GetFaith.GetID )]"
using = tooltip_es
tooltip_offset = { 20 0 }
tooltipwidget = {
faith_tooltip_click = {}
}
highlight_icon = {
texture = "[Faith.GetIcon]"
size = { 40 40 }
position = { 0 1 }
parentanchor = center
glow = {
color = { 0 0 0 0.8 }
glow_radius = 3
using = Glow_Standard
}
}
}
# Confederation
button_hud_character_bar = {
name = "confederation_button" #tutorial uses this
datacontext = "[GetPlayer.GetConfederation]"
visible = "[And(Confederation.IsValid, Not(Confederation.GetType.IsHouseBasedConfederation))]"
parentanchor = left
onclick = "[OpenGameViewData( 'confederation_window', Confederation.GetID )]"
using = tooltip_es
tooltip_offset = { 20 0 }
tooltipwidget = {
using = confederation_tooltip
}
button = {
visible = "[Not(Confederation.GetType.IsHouseBasedConfederation)]"
parentanchor = top|hcenter
alwaystransparent = yes
position = { 0 -10 }
size = { 42 42 }
texture = "gfx/interface/icons/diplomatic_icons.dds"
frame = "5"
framesize = { 120 120 }
tooltip_visible = no
}
coat_of_arms_icon = {
visible = "[Not(Confederation.GetType.IsHouseBasedConfederation)]"
parentanchor = center
position = { 0 1 }
size = { 28 28 }
coat_of_arms = "[Confederation.GetConfederationCoA.GetTexture('(int32)56','(int32)56')]"
coat_of_arms_slot = "[Confederation.GetConfederationCoA.GetSlot('(int32)56','(int32)56')]"
coat_of_arms_mask = "gfx/interface/coat_of_arms/title_mask.dds"
coat_of_arms_offset = "[DefaultCoATitleMaskOffset]"
coat_of_arms_scale = "[DefaultCoATitleMaskScale]"
modify_texture = {
texture = "gfx/interface/coat_of_arms/coa_overlay.dds"
blend_mode = overlay
alpha = 0.4
}
coa_confederation_frame = {
parentanchor = center
texture = "gfx/interface/coat_of_arms/title_28.dds"
size = { 36 36 }
}
}
}
# Dynasty House
button_hud_character_bar = {
name = "house_button"
datacontext = "[GetPlayer.GetHouse]"
onclick = "[DefaultOnHouseCoatOfArmsClick(DynastyHouse.GetID)]"
parentanchor = left
using = tooltip_es
tooltip_offset = { 20 0 }
tooltipwidget = {
using = dynasty_house_tooltip
}
coa_house_tiny = {
parentanchor = center
position = { 0 1 }
scale = 0.92
blockoverride "coa_button"
{
alwaystransparent = yes
}
blockoverride "coa_tooltip"
{}
}
}
}
}
type bottom_left_portrait = container {
datacontext = "[GetPlayer]"
visible = "[And(And( Not(IsGameViewOpen('barbershop')) , And(GetPlayer.IsValid, Not(GetVariableSystem.Exists( 'hide_bottom_left_HUD')))), Not( GreaterThan_CFixedPoint( GetPlayer.MakeScope.Var('hide_ui_character_model').GetValue, '(CFixedPoint)0' ) ))]"
visible_at_creation = no
state = {
name = _show
using = Animation_Curve_Default
duration = 0.15
position = { 0 0 }
alpha = 1
}
state = {
name = _hide
using = Animation_Curve_Default
duration = 0.15
position = { 0 50 }
alpha = 0
}
portrait_hud = {
scale = 1.3
parentanchor = center
position = { -20 -40 }
}
icon = {
texture = "gfx/interface/hud/bottom_left_portrait_fade.dds"
parentanchor = bottom|left
color = { 0.12 0.12 0.12 1 }
}
icon = {
texture = "gfx/interface/hud/bottom_left_portrait_fade.dds"
parentanchor = bottom|left
color = { 0.15 0.15 0.15 0.3 }
}
}
type Animation_HUD_daily_tick = widget {
using = Animation_ShowHide_Quick
icon = {
size = { 100% 100% }
texture = "gfx/interface/colors/white.dds"
shaderfile = "gfx/FX/pdxgui_repeat_texture.shader"
color = { 0.63 0.59 0.68 1 }
block "alpha"
{
alpha = 0.5
}
modify_texture = {
name = "pattern"
texture = "gfx/interface/component_masks/mask_clouds.dds"
spriteType = corneredtiled
blend_mode = alphamultiply
}
modify_texture = {
texture = "gfx/interface/component_masks/mask_fade_horizontal_middle_thick.dds"
blend_mode = alphamultiply
}
state = {
name = a
next = b
duration = 0
trigger_on_create = yes
modify_texture = {
name = "pattern"
translate_uv = { 0 0 }
}
}
state = {
name = b
next = a
block "duration"
{
duration = 2
}
modify_texture = {
name = "pattern"
translate_uv = { -1 0 }
}
}
}
}
type progressbar_hud_stress_glow = icon {
size = { 100% 100% }
block "lvl_3"
{
alpha = 0
}
shaderfile = "gfx/FX/pdxgui_repeat_texture.shader"
modify_texture = {
name = "clouds"
texture = "gfx/interface/component_masks/mask_clouds.dds"
blend_mode = alphamultiply
spriteType = corneredtiled
texture_density = 3
}
state = {
name = mask_a
next = mask_b
trigger_on_create = yes
modify_texture = {
name = "clouds"
translate_uv = { 0 -1 }
}
}
state = {
name = mask_b
next = mask_a
duration = 8
modify_texture = {
name = "clouds"
translate_uv = { 0 1 }
}
}
state = {
block "animation_trigger_1"
{
name = "stress_level_increase"
}
next = "fade_out"
duration = 0.2
delay = 0.3
bezier = { 0.5 0 1 0.5 }
alpha = 1
}
block "lvl_3" {
state = {
block "animation_trigger_2"
{
name = "stress_increase"
}
next = "fade_out"
duration = 0.2
delay = 0.3
bezier = { 0.5 0 1 0.5 }
alpha = 1
}
state = {
name = "fade_out"
duration = 1.5
bezier = { 0 0.5 0.5 1 }
alpha = 0
}
}
}
type progressbar_hud_stress = icon {
shaderfile = "gfx/FX/pdxgui_repeat_texture.shader"
alpha = 0.8
block "bar_color"
{
# texture = "gfx/interface/colors/red.dds"
}
modify_texture = {
texture = "gfx/interface/component_masks/mask_rough_edges.dds"
spriteType = Corneredtiled
spriteborder = { 20 20 }
blend_mode = alphamultiply
texture_density = 5
}
modify_texture = {
texture = "gfx/interface/component_masks/mask_fade_horizontal.dds"
blend_mode = alphamultiply
alpha = 0.3
}
modify_texture = {
texture = "gfx/interface/component_masks/mask_scratches.dds"
blend_mode = alphamultiply
spriteType = corneredtiled
alpha = 0.3
texture_density = 3
}
modify_texture = {
name = "flash"
texture = "gfx/interface/colors/white.dds"
blend_mode = colordodge
alpha = 0
}
modify_texture = {
visible = "[GreaterThanOrEqualTo_int32(GetPlayer.GetStressLevel, '(int32)2')]"
name = "lvl3_glow"
texture = "gfx/interface/colors/gold.dds"
blend_mode = colordodge
alpha = 0
}
modify_texture = {
name = "clouds"
texture = "gfx/interface/component_masks/mask_clouds_solid.dds"
blend_mode = mask
spriteType = corneredtiled
texture_density = 1
}
modify_texture = {
block "bar_color_flow"
{
# texture = "gfx/interface/colors/yellow.dds"
alpha = 0.3
}
blend_mode = colordodge
}
state = {
name = "lvl3_glow_a"
next = "lvl3_glow_b"
duration = 0.6
trigger_on_create = yes
using = Animation_Curve_Default
modify_texture = {
name = "lvl3_glow"
alpha = 0.5
}
}
state = {
name = "lvl3_glow_b"
next = "lvl3_glow_a"
duration = 1.5
using = Animation_Curve_Default
modify_texture = {
name = "lvl3_glow"
alpha = 0
}
}
state = {
name = "stress_level_increase"
next = "fade_out"
duration = 0.1
bezier = { 0.5 0 1 0.5 }
modify_texture = {
name = "flash"
alpha = 0.6
}
}
state = {
name = "stress_increase"
next = "fade_out"
duration = 0.1
bezier = { 0.5 0 1 0.5 }
modify_texture = {
name = "flash"
alpha = 0.6
}
}
state = {
name = "fade_out"
duration = 0.8
bezier = { 0 0.5 0.5 1 }
modify_texture = {
name = "flash"
alpha = 0
}
}
state = {
name = a
next = b
trigger_on_create = yes
modify_texture = {
name = "clouds"
translate_uv = { 1 0 }
}
}
state = {
name = b
next = a
duration = 15
modify_texture = {
name = "clouds"
translate_uv = { -1 0 }
}
}
}
type button_raise_disband_armies = button_standard {
size = { 200 64 }
datacontext = "[GetPlayer]"
parentanchor = vcenter
background = {
using = Background_Area_Dark_Border
}
background = {
using = Background_Area_Dark
}
margin_left = 45
block "text" {
text = "RAISE_ALL"
}
using = tooltip_ne
icon = {
texture = "gfx/interface/icons/icon_banner.dds"
size = { 40 40 }
alwaystransparent = yes
parentanchor = left|vcenter
position = { 10 0 }
}
state = {
name = _show
using = Animation_FadeIn_Quick
position_y = 0
}
state = {
name = _hide
using = Animation_FadeOut_Quick
position_y = 20
}
}
type button_hud_travel = button_standard {
size = { 170 36 }
datacontext = "[GetPlayer]"
parentanchor = vcenter
background = {
using = Background_Area_Dark_Border
}
margin_left = 34
using = tooltip_ne
icon = {
texture = "gfx/interface/icons/travel/icon_travel_hud_placeholder.dds"
size = { 30 30 }
alwaystransparent = yes
parentanchor = left|vcenter
position = { 8 0 }
}
state = {
name = _show
using = Animation_FadeIn_Quick
position_y = 0
}
state = {
name = _hide
using = Animation_FadeOut_Quick
position_y = 20
}
}
type button_war_banner = button_normal {
visible = "[Not(IsGameViewOpen('barbershop'))]"
size = { 78 82 }
onclick = "[WarItem.OnClick]"
tooltip = "[WarItem.GetTooltip]"
using = tooltip_ne
animation_sonar = {
visible = "[WarItem.CanEnforceVictory]"
texture = "gfx/interface/component_masks/mask_glow.dds"
using = Color_Orange
}
##Show animation
state = {
name = _show
next = banner_default
using = Animation_FadeIn_Quick
bezier = { 1 0 0.5 0.5 }
size = { 86 88 }
alpha = 1
trigger_on_create = yes
}
state = {
name = banner_default
using = Animation_FadeIn_Standard
size = { 78 82 }
}
state = {
name = _hide
using = Animation_FadeOut_Standard
bezier = { 1 0 0.5 0.5 }
size = { 66 70 }
alpha = 0
}
icon = {
name = "enforce_victory_glow"
visible = "[WarItem.CanEnforceVictory]"
parentanchor = center
size = { 100% 100% }
scale = 1.2
texture = "gfx/interface/icons/war_status/war_won_glow.dds"
state = {
trigger_on_create = yes
name = a
next = b
using = Animation_Curve_Default
duration = 1
alpha = 1
}
state = {
name = b
next = a
using = Animation_Curve_Default
duration = 1.6
alpha = 0.2
}
}
button = {
name = "enforce_victory_icon"
visible = "[WarItem.CanEnforceVictory]"
parentanchor = hcenter
position = { 0 -27 }
texture = "gfx/interface/icons/war_status/war_won_icon.dds"
modify_texture = {
name = "shimmer_war_banner"
texture = "gfx/interface/component_effects/effect_shimmer.dds"
blend_mode = colordodge
translate_uv = { 1 1 }
alpha = 0.8
}
state = {
name = shimmer
next = pause
trigger_when = "[WarItem.CanEnforceVictory]"
delay = 0.5
bezier = { 0 0.9 1 0.4 }
modify_texture = {
name = "shimmer_war_banner"
translate_uv = { 1 0.8 }
alpha = 0.5
}
}
state = {
name = pause
duration = 0.8
modify_texture = {
name = "shimmer_war_banner"
translate_uv = { -1 -1 }
alpha = 0.5
}
}
}
highlight_icon = {
name = "war_icon"
visible = "[WarItem.IsPlayerParticipant]"
parentanchor = center
size = { 100% 100% }
texture = "gfx/interface/icons/war_status/war_icon.dds"
modify_texture = {
name = "shimmer_war_banner"
texture = "gfx/interface/component_effects/effect_shimmer.dds"
blend_mode = colordodge
translate_uv = { 1 1 }
}
state = {
name = shimmer
next = pause
trigger_when = "[WarItem.CanEnforceVictory]"
delay = 0.5
bezier = { 0 0.9 1 0.4 }
modify_texture = {
name = "shimmer_war_banner"
translate_uv = { 1 0.5 }
alpha = 0.5
}
}
state = {
name = pause
duration = 0.8
modify_texture = {
name = "shimmer_war_banner"
translate_uv = { -1 -1 }
alpha = 0.5
}
}
}
highlight_icon = {
name = "war_icon_liege"
visible = "[Not(WarItem.IsPlayerParticipant)]"
parentanchor = center
size = { 100% 100% }
texture = "gfx/interface/icons/war_status/war_icon_liege.dds"
}
coa_realm_small = {
name = "enemy_realm"
datacontext = "[WarItem.GetWar.GetPrimaryPlayerEnemy]"
parentanchor = hcenter
scale = 0.9
position = { 0 25 }
tooltip_visible = no
alwaystransparent = yes
}
text_single = {
name = "warscore"
parentanchor = bottom|hcenter
position = { 0 -7 }
size = { 50 10 }
align = center
text = "[WarItem.GetWarScoreFraction|0%=+]"
background = {
using = Background_Area_Dark
}
}
widget = {
visible = "[WarItem.CanEnforceVictory]"
state = {
name = _show
start_sound = {
soundeffect = "event:/SFX/UI/War/sfx_ui_war_enforce_demand"
soundparam = {
name = StateChange
value = 1.5
}
}
}
}
}
type button_task_contract_banner = button_normal {
size = { 100 100 }
icon = {
visible = "[And( TaskContract.IsEasy, Not(TaskContract.IsCriminal) )]"
size = { 100% 100% }
texture = "gfx/interface/window_contract/pin_contract_1.dds"
}
icon = {
visible = "[And( TaskContract.IsEasy, TaskContract.IsCriminal )]"
size = { 100% 100% }
texture = "gfx/interface/window_contract/pin_contract_1_crime.dds"
}
icon = {
visible = "[And( TaskContract.IsMedium, Not(TaskContract.IsCriminal) )]"
size = { 100% 100% }
texture = "gfx/interface/window_contract/pin_contract_2.dds"
}
icon = {
visible = "[And( TaskContract.IsMedium, TaskContract.IsCriminal )]"
size = { 100% 100% }
texture = "gfx/interface/window_contract/pin_contract_2_crime.dds"
}
icon = {
visible = "[And( TaskContract.IsHard, Not(TaskContract.IsCriminal) )]"
size = { 100% 100% }
texture = "gfx/interface/window_contract/pin_contract_3.dds"
}
icon = {
visible = "[And( TaskContract.IsHard, TaskContract.IsCriminal )]"
size = { 100% 100% }
texture = "gfx/interface/window_contract/pin_contract_3_crime.dds"
}
highlight_icon = {
parentanchor = center
alwaystransparent = yes
texture = "[TaskContract.GetType.GetIcon]"
size = { 40% 40% }
position = { 0 -2 }
}
onclick = "[ToggleGameViewData('task_contract', TaskContract.Self )]"
tooltip = "[TaskContract.GetName]"
using = tooltip_ne
}
type button_situation_banner = button_normal {
name = "situation_banner_item"
size = { 90 90 }
onclick = "[ToggleGameViewData(Situation.GetWindowName, Situation.GetID)]"
block "tooltipwidget"
{
tooltipwidget = situation_tooltip
using = tooltip_nw
}
widget = {
name = "natural_disaster_highlight"
size = { 100% 100% }
visible = "[Or(EqualTo_string( 'impact' , Situation.GetTopCurrentPhase.GetType.GetKey ), EqualTo_string( 'warning' , Situation.GetTopCurrentPhase.GetType.GetKey ))]"
}
icon = {
name = "below_glow"
block "glow_visible"
{
visible = "[GreaterThan_CFixedPoint( Situation.GetTopCurrentPhase.GetRelativeProgress, '(CFixedPoint)0.8' )]"
}
size = { 100% 100% }
texture = "gfx/interface/icons/character_interactions/icon_bg.dds"
using = Animation_Glow_Pulse
glow = {
glow_radius = 5
using = Glow_Standard
using = Color_Bright_Yellow
}
}
# Current phase
widget = {
size = { 100% 100% }
datacontext = "[Situation.GetTopCurrentPhase]"
parentanchor = center
button = {
size = { 88% 88% }
parentanchor = center
block "background_texture"
{
texture = "gfx/interface/window_situations/hud_situation_widget.dds"
}
alwaystransparent = yes
}
icon = {
parentanchor = center
block "icon_size"
{
size = { 60% 60% }
}
block "button_icon"
{
texture = "[Situation.GetIcon]"
}
}
}
progresspie = {
block "progress_pie_visibility" {}
block "progresspie_size"
{
size = { 70% 70% }
}
parentanchor = center
value = "[Situation.GetTopCurrentPhase.GetRelativeProgress]"
max = 1
texture = "gfx/interface/progressbars/action_progress_thin.dds"
framesize = { 128 128 }
frame = 2
}
}
type button_situation_group_banner = button_normal {
name = "situation_group_banner_item"
size = { 56 56 }
onclick = "[ToggleGameViewData(Situation.GetWindowName, Situation.GetID)]"
onclick = "[OpenGuiTab( 'dynastic_cycle_tabs', 'movements' )]"
tooltip = "[SelectLocalization( And(SituationParticipantGroup.IsValid, InGameBottomBar.ShouldShowDynasticCycleOwnedLand), 'DYNASTIC_CYCLE_HUD_GROUP_OWNED_LAND_TOOLTIP', 'DYNASTIC_CYCLE_HUD_GROUP_POWER_TOOLTIP' )]"
using = tooltip_ne
# Current phase
widget = {
size = { 100% 100% }
parentanchor = center
button = {
size = { 56 56 }
parentanchor = center
texture = "gfx/interface/buttons/button_lifestyles_base.dds"
alwaystransparent = yes
}
button_icon = {
visible = "[InGameBottomBar.ShouldShowMovementPower]"
parentanchor = center
position = { 0 -5 }
size = { 27 27 }
texture = "[SituationParticipantGroup.GetType.GetIcon]"
alwaystransparent = yes
}
# Bigger icon that is centered in background when you don't have the banner with movement power
button_icon = {
visible = "[Not(InGameBottomBar.ShouldShowMovementPower)]"
parentanchor = center
size = { 35 35 }
texture = "[SituationParticipantGroup.GetType.GetIcon]"
alwaystransparent = yes
}
}
icon = {
visible = "[InGameBottomBar.ShouldShowMovementPower]"
parentanchor = bottom|hcenter
position = { 0 -3 }
size = { 60 24 }
texture = "gfx/interface/hud/tgp_widget_button_banner.dds"
datacontext = "[SituationParticipantGroup]"
using = tooltip_ne
tooltip_offset = { 3 38 }
flowcontainer = {
parentanchor = center
spacing = 3
tooltip = "DYNASTIC_CYCLE_HUD_PERSONAL_MOVEMENT_POWER_TT"
using = tooltip_ne
tooltip_offset = { 0 -5 }
widget = {
parentanchor = vcenter
size = { 12 24 }
icon_flat_standard_gold = {
parentanchor = vcenter
position = { 0 2 }
size = { 12 12 }
texture = "gfx/interface/icons/flat_icons/group_power.dds"
alwaystransparent = yes
}
}
text_single = {
parentanchor = vcenter
text = "[InGameBottomBar.GetDynasticCycleMovementPower]"
using = Font_Size_Tiny
max_width = 40
}
}
}
icon = {
size = { 25 25 }
position = { -5 10 }
texture = "gfx/interface/icons/dynastic_cycle/favored_by_hegemon.dds"
visible = "[InGameBottomBar.IsDynasticCycleMovementFavored]"
widgetanchor = center
parentanchor = top|right
tooltip = "DYNASTIC_CYCLE_WINDOW_FAVORED_MOVEMENT_TOOLTIP"
}
}
type button_situations_scroll = button_normal {
size = { 80 110 }
onclick = "[ToggleGameViewData(Situation.GetWindowName, Situation.GetID)]"
widget = {
parentanchor = bottom|hcenter
size = { 74 78 }
highlight_icon = {
size = { 74 78 }
texture = "gfx/interface/window_situations/silk_road_hud_widget_bg.dds"
}
widget = {
size = { 50 50 }
parentanchor = center
highlight_icon = {
size = { 46 46 }
parentanchor = center
texture = "gfx/interface/icons/struggle_banners/icon_background_02.dds"
}
highlight_icon = {
parentanchor = center
size = { 34 34 }
texture = "[Situation.GetIcon]"
}
}
tooltip = "SITUATION_LIST_HUD_BUTTON"
}
}
type button_struggle_banner = button_normal {
name = "struggle_banner_tutorial_uses_this"
size = { 110 110 }
onclick = "[ToggleGameViewData('struggle', Struggle.GetID)]"
onmousehierarchyenter = "[HighlightStruggle( Struggle.Self )]"
onmousehierarchyleave = "[ClearHighlightedStruggleBorder]"
state = {
name = _show
next = banner_default
using = Animation_FadeIn_Quick
bezier = { 1 0 0.5 0.5 }
size = { 80 80 }
alpha = 1
trigger_on_create = yes
}
state = {
name = banner_default
using = Animation_FadeIn_Standard
size = { 110 110 }
}
state = {
name = _hide
using = Animation_FadeOut_Standard
bezier = { 1 0 0.5 0.5 }
size = { 80 80 }
alpha = 0
}
# Animations
struggle_phase_based_widget = {
datacontext = "[Struggle.GetCurrentPhase]"
visible = "[Struggle.HasPossibleEndingDecision]"
parentanchor = center
animation_sonar = {
texture = "gfx/interface/component_masks/mask_glow.dds"
using = Color_Orange
}
blockoverride "point_based_widget_content" {
icon = {
size = { 100% 100% }
position = { 0 -12 }
texture = "gfx/interface/icons/struggle_banners/upper_point_glow.dds"
state = {
trigger_on_create = yes
name = a
next = b
using = Animation_Curve_Default
duration = 1
alpha = 1
}
state = {
name = b
next = a
using = Animation_Curve_Default
duration = 1.6
alpha = 0.2
}
}
}
blockoverride "time_based_widget_content" {
icon = {
position = { 0 -12 }
size = { 100% 100% }
texture = "gfx/interface/icons/struggle_banners/upper_time_glow.dds"
state = {
trigger_on_create = yes
name = a
next = b
using = Animation_Curve_Default
duration = 1
alpha = 1
}
state = {
name = b
next = a
using = Animation_Curve_Default
duration = 1.6
alpha = 0.2
}
}
}
}
# Leading phase
struggle_phase_based_widget = {
datacontext = "[Struggle.GetCurrentLeadingPhase]"
blockoverride "point_based_widget_content" {
icon = {
size = { 100% 100% }
texture = "gfx/interface/icons/struggle_banners/lower_point_banner.dds"
}
}
blockoverride "time_based_widget_content" {
icon = {
size = { 100% 100% }
texture = "gfx/interface/icons/struggle_banners/lower_time_banner.dds"
}
}
blockoverride "ending_widget_content" {
icon = {
size = { 100% 100% }
texture = "gfx/interface/icons/struggle_banners/lower_ending_banner.dds"
}
icon = {
size = { 100% 100% }
texture = "gfx/interface/component_effects/ending_banner_fire_01.dds"
alpha = 0.25
state = {
trigger_on_create = yes
name = a
next = b
using = Animation_Curve_Default
duration = 1
alpha = 0.25
}
state = {
name = b
next = a
using = Animation_Curve_Default
duration = 1
alpha = 0
}
}
icon = {
size = { 100% 100% }
texture = "gfx/interface/component_effects/ending_banner_fire_02.dds"
alpha = 0
state = {
trigger_on_create = yes
name = a
next = b
using = Animation_Curve_Default
duration = 1
alpha = 0
}
state = {
name = b
next = a
using = Animation_Curve_Default
duration = 1
alpha = 0.25
}
}
icon = {
name = "ending_phase_glow"
visible = "[Struggle.HasPossibleEndingDecision]"
parentanchor = center
size = { 100% 100% }
texture = "gfx/interface/icons/struggle_banners/lower_ending_glow.dds"
state = {
trigger_on_create = yes
name = a
next = b
using = Animation_Curve_Default
duration = 1
alpha = 0.5
}
state = {
name = b
next = a
using = Animation_Curve_Default
duration = 1.6
alpha = 0.2
}
}
}
widget = {
visible = "[Struggle.GetCurrentLeadingPhase.IsValid]"
parentanchor = bottom|left
size = { 25 25 }
position = { 20 -14 }
}
}
# Tie
icon = {
visible = "[Not(Struggle.GetCurrentLeadingPhase.IsValid)]"
size = { 100% 100% }
texture = "gfx/interface/icons/struggle_banners/lower_tied_banner.dds"
}
# Current phase
struggle_phase_based_widget = {
datacontext = "[Struggle.GetCurrentPhase]"
blockoverride "point_based_widget_content" {
struggle_highlight_icon = {
visible = "[Struggle.IsInvolvedCharacter(Character.Self)]"
blockoverride "texture" {
texture = "gfx/interface/icons/struggle_banners/upper_point_involved_banner.dds"
}
}
struggle_highlight_icon = {
visible = "[Not(Struggle.IsInvolvedCharacter(Character.Self))]"
blockoverride "texture" {
texture = "gfx/interface/icons/struggle_banners/upper_point_interloper_banner.dds"
}
}
widget = {
size = { 52 52 }
position = { 0 15 }
parentanchor = top|hcenter
icon = {
size = { 52 52 }
parentanchor = center
texture = "gfx/interface/icons/struggle_banners/icon_background_02.dds"
}
icon = {
parentanchor = center
size = { 40 40 }
texture = "[Struggle.GetCurrentPhase.GetIcon]"
}
}
progressbar_standard = {
size = { 60 12 }
parentanchor = bottom|hcenter
position = { 0 -20 }
value = "[Struggle.GetProgress]"
progresstexture = "gfx/interface/progressbars/progress_orange.dds"
}
widget_struggle_hourglass = { }
}
blockoverride "time_based_widget_content" {
struggle_highlight_icon = {
visible = "[Struggle.IsInvolvedCharacter(Character.Self)]"
blockoverride "texture" {
texture = "gfx/interface/icons/struggle_banners/upper_time_involved_banner.dds"
}
}
struggle_highlight_icon = {
size = { 100% 100% }
visible = "[Struggle.IsInterloperCharacter(Character.Self)]"
blockoverride "texture" {
texture = "gfx/interface/icons/struggle_banners/upper_time_interloper_banner.dds"
}
}
widget = {
size = { 52 52 }
parentanchor = top|hcenter
position = { 1 18 }
icon = {
parentanchor = center
texture = "gfx/interface/icons/struggle_banners/icon_background_02.dds"
size = { 60 60 }
}
progresspie = {
name = "progress"
parentanchor = center
size = { 52 52 }
position = { 0 -1}
texture = "gfx/interface/progressbars/action_progress_thin.dds"
framesize = { 124 124 }
frame = 2
value = "[Struggle.GetProgress]"
}
icon = {
parentanchor = center
size = { 40 40 }
texture = "[Struggle.GetCurrentPhase.GetIcon]"
}
}
widget_struggle_hourglass = { }
text_single = {
text = "[Struggle.GetPhaseValue(Struggle.GetCurrentLeadingPhase)]"
default_format = "#high"
parentanchor = bottom|hcenter
position = { 0 -14 }
}
}
}
widget = {
size = { 80 110 }
tooltipwidget = struggle_tooltip
parentanchor = center
}
}
type struggle_highlight_icon = highlight_icon {
size = { 100% 100% }
block "texture" {}
##Pulse glow
glow = {
name = "glow_defined"
glow_radius = 3
using = Glow_Standard
using = Color_Orange
glow_alpha = 0
}
state = {
name = struggle_pulse_glow
next = struggle_pulse_glow_stop
using = Animation_FadeIn_Quick
bezier = { 1 0 0.5 0.5 }
glow_alpha = 1
}
state = {
name = struggle_pulse_glow_stop
bezier = { 1 0 0.5 0.5 }
duration = 0.3
glow_alpha = 0
}
#white fill
state = {
name = struggle_pulse_icon
next = struggle_pulse_icon_stop
using = Animation_FadeIn_Quick
bezier = { 1 0 0.5 0.5 }
modify_texture = {
name = "white_icon"
alpha = 1
}
}
state = {
name = struggle_pulse_icon_stop
bezier = { 1 0 0.5 0.5 }
duration = 0.3
modify_texture = {
name = "white_icon"
alpha = 0
}
}
modify_texture = {
name = "white_icon"
texture = "gfx/interface/component_masks/mask_rough_edges.dds"
blend_mode = colordodge
alpha = 0
}
}
type widget_struggle_hourglass = widget {
visible = "[Struggle.IsInTransitionPhase]"
position = { 0 0 }
size = { 32 32 }
icon = {
parentanchor = center
size = { 32 32 }
texture = "gfx/interface/icons/struggle_banners/icon_background_dark.dds"
#white fill
state = {
name = struggle_pulse_icon
next = struggle_pulse_icon_stop
using = Animation_FadeIn_Quick
bezier = { 1 0 0.5 0.5 }
modify_texture = {
name = "white_icon"
alpha = 1
}
}
state = {
name = struggle_pulse_icon_stop
bezier = { 1 0 0.5 0.5 }
duration = 0.3
modify_texture = {
name = "white_icon"
alpha = 0
}
}
modify_texture = {
name = "white_icon"
texture = "gfx/interface/component_masks/mask_rough_edges.dds"
blend_mode = colordodge
alpha = 0
}
}
icon = {
parentanchor = center
size = { 30 30 }
texture = "gfx/interface/icons/icon_time.dds"
#white fill
state = {
name = struggle_pulse_icon
next = struggle_pulse_icon_stop
using = Animation_FadeIn_Quick
bezier = { 1 0 0.5 0.5 }
modify_texture = {
name = "white_icon"
alpha = 1
}
}
state = {
name = struggle_pulse_icon_stop
bezier = { 1 0 0.5 0.5 }
duration = 0.3
modify_texture = {
name = "white_icon"
alpha = 0
}
}
modify_texture = {
name = "white_icon"
texture = "gfx/interface/component_masks/mask_rough_edges.dds"
blend_mode = colordodge
alpha = 0
}
}
}
type button_ghw_banner = button_normal {
size = { 78 82 }
onclick = "[OpenGameViewData( 'great_holy_war', GreatHolyWar.GetID )]"
block "ghw_tooltip"
{
raw_tooltip = "#D no tooltip :(#!"
}
##Show animation
state = {
name = _show
next = banner_default
using = Animation_FadeIn_Quick
bezier = { 1 0 0.5 0.5 }
size = { 86 88 }
alpha = 1
trigger_on_create = yes
}
state = {
name = banner_default
using = Animation_FadeIn_Standard
size = { 78 82 }
}
state = {
name = _hide
using = Animation_FadeOut_Standard
bezier = { 1 0 0.5 0.5 }
size = { 66 70 }
alpha = 0
}
button = {
name = "holy_war_icon_started"
visible = "[GreatHolyWar.HasWarStarted]"
onclick = "[OpenGameViewData( 'great_holy_war', GreatHolyWar.GetID )]"
parentanchor = center
size = { 100% 100% }
texture = "gfx/interface/icons/war_status/holy_war_icon_started.dds"
}
button = {
name = "holy_war_icon_prep"
visible = "[Not(GreatHolyWar.HasWarStarted)]"
onclick = "[OpenGameViewData( 'great_holy_war', GreatHolyWar.GetID )]"
parentanchor = center
size = { 100% 100% }
texture = "gfx/interface/icons/war_status/holy_war_icon_prep.dds"
}
button = {
name = "faith_icon"
datacontext = "[GreatHolyWar.GetFaith]"
onclick = "[OpenGameViewData( 'great_holy_war', GreatHolyWar.GetID )]"
parentanchor = center
position = { 1 -3 }
size = { 35 35 }
texture = "[Faith.GetIcon]"
}
}
type button_raid_banner = button_normal {
size = { 78 82 }
onclick = "[DefaultOnCharacterClick(Character.GetID)]"
using = tooltip_ne
##Show animation
state = {
name = _show
next = banner_default
using = Animation_FadeIn_Quick
bezier = { 1 0 0.5 0.5 }
size = { 86 88 }
alpha = 1
trigger_on_create = yes
}
state = {
name = banner_default
using = Animation_FadeIn_Standard
size = { 78 82 }
}
state = {
name = _hide
using = Animation_FadeOut_Standard
bezier = { 1 0 0.5 0.5 }
size = { 66 70 }
alpha = 0
}
highlight_icon = {
texture = "gfx/interface/icons/war_status/raid_icon.dds"
size = { 100% 100% }
parentanchor = center
}
coa_realm_small = {
name = "enemy_realm"
parentanchor = hcenter
scale = 0.9
position = { 0 12 }
tooltip_visible = no
alwaystransparent = yes
}
text_single = {
name = "time_left"
parentanchor = bottom|hcenter
position = { 0 -7 }
size = { 50 10 }
align = center
text = "[GetPlayer.GetRaidHostilityEnd( Character.Self ).GetTimeDiffFromNow]"
}
}
type button_hud_character_bar = button_normal {
effectname = "NoHighlight"
framesize = { 103 102}
size = { 52 52 }
texture = "gfx/interface/skinned/button_hud_character_sidebar.dds"
using = tooltip_ne
state = {
name = _show
frame = 1
position_x = 0
using = Animation_Curve_Default
duration = 0.25
}
state = {
name = _mouse_hierarchy_enter
frame = 2
position_x = 3
using = Animation_Curve_Default
duration = 0.1
}
state = {
name = _mouse_leave
frame = 1
position_x = 0
using = Animation_Curve_Default
duration = 0.25
}
state = {
name = _mouse_press
frame = 3
position_x = 3
}
state = {
name = _mouse_release
frame = 2
position_x = 0
using = Animation_Curve_Default
duration = 0.25
}
}
type widget_hud_main_tab = widget {
size = { 45 45 }
using = tooltip_ws
tooltip_offset = { 35 0 }
button_normal = {
parentanchor = center
size = { 45 45 }
scale = 1
block "maintab_button" {}
modify_texture = {
name = "glow"
texture = "gfx/interface/component_effects/effect_shimmer.dds"
blend_mode = colordodge
translate_uv = { 1 0 }
alpha = 0
}
state = {
name = _mouse_enter
duration = 0.03
scale = 1.2
position_x = -3
using = Animation_Curve_Default
modify_texture = {
name = "glow"
translate_uv = { 0 0 }
alpha = 0.4
}
}
state = {
name = _mouse_leave
duration = 0.1
scale = 1
position_x = 0
using = Animation_Curve_Default
modify_texture = {
name = "glow"
translate_uv = { 1 0 }
alpha = 0
}
}
}
}
type hotkeys_HUD = widget {
# Mapmodes
button_normal = {
onclick = "[SetMapMode('players')]"
shortcut = "map_mode_8"
enabled = "[Or(GameHasMultiplePlayers, InDebugMode)]"
}
button_normal = {
onclick = "[SetMapMode('dejure_duchies')]"
shortcut = "map_mode_9"
shortcut = "mapmode_duchies_secondary"
}
button_normal = {
onclick = "[SetMapMode('dejure_kingdoms')]"
shortcut = "map_mode_10"
shortcut = "mapmode_kingdoms_secondary"
}
button_normal = {
onclick = "[SetMapMode('dejure_empires')]"
shortcut = "map_mode_11"
shortcut = "mapmode_empires_secondary"
}
button_normal = {
onclick = "[SetMapMode('religions')]"
shortcut = "map_mode_3"
shortcut = "mapmode_faith_secondary"
}
button_normal = {
onclick = "[SetMapMode('cultures')]"
shortcut = "map_mode_2"
shortcut = "mapmode_culture_secondary"
}
button_normal = {
onclick = "[SetMapMode('houses')]"
onclick = "[ClearExploringHouses]"
shortcut = "map_mode_4"
shortcut = "mapmode_house_secondary"
}
button_normal = {
onclick = "[SetMapMode('realms')]"
onclick = "[ClearExploringRealms]"
shortcut = "map_mode_1"
}
button_normal = {
onclick = "[SetMapMode('government')]"
shortcut = "map_mode_5"
}
button_normal = {
onclick = "[SetMapMode('epidemics')]"
shortcut = "map_mode_16"
}
button_normal = {
onclick = "[SetMapMode('legends')]"
shortcut = "map_mode_17"
}
button_normal = {
onclick = "[SetMapMode('landless_rulers')]"
shortcut = "map_mode_18"
}
button_normal = {
onclick = "[SetMapMode('migration_counties')]"
shortcut = "map_mode_19"
}
button_normal = {
onclick = "[SetMapMode('dejure_counties')]"
shortcut = "map_mode_6"
}
button_normal = {
onclick = "[SetMapMode('dejure_hegemonies')]"
shortcut = "map_mode_20"
}
button_normal = {
onclick = "[SetMapMode('court_languages')]"
shortcut = "map_mode_7"
}
button_normal = {
onclick = "[SetMapMode('terrain')]"
shortcut = "map_mode_terrain"
}
button_normal = {
onclick = "[SetMapMode('simple_terrain')]"
shortcut = "map_mode_12"
}
button_normal = {
onclick = "[SetMapMode('county_development')]"
shortcut = "map_mode_13"
}
button_normal = {
onclick = "[SetMapMode( 'economy_buildings' )]"
shortcut = "map_mode_14"
}
button_normal = {
onclick = "[SetMapMode( 'county_control' )]"
shortcut = "map_mode_15"
}
button_normal = {
onclick = "[SetMapMode( 'diplomatic_relations' )]"
shortcut = "map_mode_diplomatic_relations"
}
button_normal = {
onclick = "[SetMapMode( 'confederations' )]"
shortcut = "map_mode_confederations"
}
button_normal = {
name = "find_title_shortcut"
onclick = "[ToggleGameView( 'find_title' )]"
onclick = "[GetVariableSystem.Clear( 'extra_buttons_expand' )]"
shortcut = "find_title_shortcut"
}
button_normal = {
name = "plagues_shortcut"
onclick = "[ToggleGameView( 'epidemics' )]"
onclick = "[GetVariableSystem.Clear( 'extra_buttons_expand' )]"
shortcut = "explore_plagues"
}
button_normal = {
name = "legends_shortcut"
onclick = "[ToggleGameView( 'legends' )]"
onclick = "[GetVariableSystem.Clear( 'extra_buttons_expand' )]"
shortcut = "explore_legends"
}
# 0 size button for shortcut to work
button_normal = {
name = "find_character_shortcut"
onclick = "[ToggleGameView( 'character_finder' )]"
onclick = "[GetVariableSystem.Clear( 'extra_buttons_expand' )]"
shortcut = "character_finder"
}
# 0 size button for shortcut to work
button_normal = {
name = "encyclopedia_shortcut"
onclick = "[ToggleEncyclopedia]"
onclick = "[GetVariableSystem.Clear( 'extra_buttons_expand' )]"
shortcut = "encyclopedia"
}
button_normal = {
onclick = "[SetMapMode( 'mandala' )]"
shortcut = "map_mode_mandala"
}
}
type button_pause_hud = button_round {
size = { 33 33 }
enabled = "[Not(IsGameOver)]"
onclick = "[OnPause]"
oversound = "event:/SFX/UI/Generic/sfx_ui_generic_pointer_over"
clicksound = "event:/SFX/UI/Generic/sfx_ui_generic_select"
button_play = {
visible = "[IsGamePaused]"
size = { 35 35 }
tooltip = "[SelectLocalization( IsGameOver, 'UNPAUSE_GAME_OVER', 'UNPAUSE_GAME')]"
using = tooltip_ne
alwaystransparent = yes
parentanchor = center
}
button_pause = {
visible = "[Not(IsGamePaused)]"
size = { 35 35 }
tooltip = "PAUSE_GAME"
using = tooltip_ne
alwaystransparent = yes
parentanchor = center
}
}
type container_resource_balance = container {
text_single = {
name = "balance_pos"
visible = "[GreaterThanOrEqualTo_CFixedPoint(PlayerValueItem.GetBalance, '(CFixedPoint)0')]"
text = "[PlayerValueItem.GetBalance|1=]"
max_width = 110
default_format = "#low"
}
text_single = {
name = "balance_neg"
visible = "[LessThan_CFixedPoint(PlayerValueItem.GetBalance, '(CFixedPoint)0')]"
text = "[PlayerValueItem.GetBalance|1=]"
max_width = 110
default_format = "#N"
}
}
type container_saving_indicator = container {
visible = yes
background = {
name = "bg"
texture = "gfx/interface/tooltips/tooltip_bg.dds"
spriteType = Corneredtiled
gfxtype = icongfx
spriteborder = { 2 2 }
shaderfile = "gfx/FX/pdxgui_default.shader"
}
background = {
name = "frame"
texture = "gfx/interface/tooltips/tooltip_frame.dds"
gfxtype = icongfx
spriteType = Corneredtiled
spriteborder = { 20 20 }
shaderfile = "gfx/FX/pdxgui_default.shader"
modify_texture = {
name = "overlay"
texture = "gfx/interface/component_overlay/overlay_window.dds"
spriteType = Corneredstretched
spriteborder = { 0 0 }
blend_mode = overlay
}
}
flowcontainer = {
spacing = 15
margin = { 20 15 }
progressbar = {
size = { 44 44 }
gfxtype = framedprogressbargfx
texture = "gfx/interface/frontend/loading_progress.dds"
framesize = { 88 88 }
loopinterval = 2.0
max = 0
}
text_single = {
parentanchor = vcenter
align = nobaseline
using = Font_Size_Medium
block "csi_text"
{
text = "AUTOSAVE_IN_PROGRESS"
}
}
}
}
type resources_top_right_bar = hbox
{
layer = top
using = Animation_ShowHide_Quick
## Resources
hbox = {
name = "resources"
visible = "[Not( IsGameViewOpen('barbershop') )]"
hbox = {
name = "spendables"
layoutpolicy_horizontal = expanding
layoutpolicy_vertical = expanding
hbox = {
name = "tutorial_highlight_resources_bar"
layoutpolicy_horizontal = expanding
layoutpolicy_vertical = expanding
widget = {
name = "gold"
size = { 144 70 }
state = {
name = _mouse_enter
on_start = "[InGameTopbar.ResetLastUpdateFrame]"
}
widget = {
size = { 144 45 }
tooltipwidget = {
widget_gold_breakdown_tooltip = {
blockoverride "income"
{
datacontext = "[InGameTopbar.GetGoldIncomeBreakdown]"
}
blockoverride "expenses"
{
datacontext = "[InGameTopbar.GetGoldExpensesBreakdown]"
}
}
}
using = tooltip_ne
}
background = {
texture = "gfx/interface/skinned/resource_panel_start.dds"
}
vbox = {
margin_top = -2
hbox = {
layoutpolicy_horizontal = expanding
expand = {}
hbox = {
spacing = 7
icon = {
name = "gold_icon"
size = { 30 30 }
texture = "gfx/interface/icons/icon_gold.dds"
}
flowcontainer = {
margin_bottom = 7
spacing = -6
direction = vertical
ignoreinvisible = yes
text_single = {
name = "gold_value_positive"
visible = "[GreaterThanOrEqualTo_CFixedPoint(GetPlayer.GetGold, '(CFixedPoint)0')]"
text = "[GetPlayer.GetGold|0]"
max_width = 50
default_format = "#high"
using = Font_Size_Medium
}
text_single = {
name = "gold_value_negative"
visible = "[LessThan_CFixedPoint(GetPlayer.GetGold, '(CFixedPoint)0')]"
text = "[GetPlayer.GetGold|0]"
max_width = 50
default_format = "#N"
using = Font_Size_Medium
}
container = {
text_single = {
name = "balance_positive"
visible = "[GreaterThanOrEqualTo_CFixedPoint(InGameTopbar.GetGoldBalance, '(CFixedPoint)0')]"
text = "[InGameTopbar.GetGoldBalance|=1]"
max_width = 50
default_format = "#low"
}
text_single = {
name = "balance_negative"
visible = "[LessThan_CFixedPoint(InGameTopbar.GetGoldBalance, '(CFixedPoint)0')]"
text = "[InGameTopbar.GetGoldBalance|=1]"
max_width = 50
default_format = "#N"
}
}
}
}
spacer = {
size = { 10 1}
}
divider_light = {
layoutpolicy_vertical = expanding
alpha = 0.8
}
}
expand = {}
}
}
widget = {
name = "treasury"
visible = "[GetPlayer.HasTreasury]"
size = { 112 70 }
allow_outside = yes
state = {
name = _mouse_enter
on_start = "[InGameTopbar.ResetLastUpdateFrame]"
}
button = {
size = { 112 45 }
onclick = "[ToggleGameViewData( 'treasury_budget_change', GetPlayer.GetTopLiege.Self )]"
enabled = "[GetPlayer.IsIndependentRuler]"
tooltipwidget = {
widget_gold_breakdown_tooltip = {
blockoverride "my_gold"
{
text_single = {
layoutpolicy_horizontal = expanding
text = "[treasury_i] [GetPlayer.GetPrimaryTitle.GetNameNoTierNoTooltip] [treasury|E]"
default_format = "#T"
}
}
blockoverride "income"
{
datacontext = "[InGameTopbar.GetTreasuryIncomeBreakdown]"
}
blockoverride "expenses"
{
datacontext = "[InGameTopbar.GetTreasuryExpensesBreakdown]"
}
blockoverride "extra_info"
{
text_single = {
visible = "[And( GetPlayer.IsIndependentRuler, IsAdministrativeRuler( GetPlayer ) )]"
layoutpolicy_horizontal = expanding
text = "CLICK_TO_OPEN_TREASURY_BUDGETING"
default_format = "#I"
}
}
}
}
using = tooltip_ne
}
background = {
texture = "gfx/interface/skinned/resource_panel_piece.dds"
}
vbox = {
margin_top = -2
allow_outside = yes
hbox = {
layoutpolicy_horizontal = expanding
allow_outside = yes
widget = {
size = { 20 40 }
allow_outside = yes
vbox = {
position = { -10 0 }
parentanchor = center
button_round = {
size = { 20 20 }
datacontext = "[GetPlayer]"
datacontext = "[GetDecisionWithKey( 'extract_gold_from_treasury' )]"
visible = "[Decision.IsShownForPlayer]"
onclick = "[OpenGameViewData( 'decision_detail', Decision.Self)]"
tooltip = "TRANSFER_TREASURY_TO_GOLD_DECISION_TOOLTIP"
using = tooltip_se
button_icon = {
size = { 100% 100% }
alwaystransparent = yes
texture = "gfx/interface/icons/flat_icons/transfer_left.dds"
enabled = "[Decision.IsPossibleForPlayer]"
}
}
button_round = {
size = { 20 20 }
name = "transfer_gold_to_treasury_button_tutorial_uses_this"
datacontext = "[GetPlayer]"
enabled = "[Character.CanSendPlayerInteraction('transfer_small_gold_amount_to_treasury_interaction')]"
onclick = "[Character.SendPlayerInteraction( Select_CString( IsCtrlDown, 'transfer_huge_gold_amount_to_treasury_interaction', 'transfer_small_gold_amount_to_treasury_interaction' ) )]"
onrightclick = "[Character.SendPlayerInteraction( 'transfer_large_gold_amount_to_treasury_interaction' )]"
button_ignore = none
tooltip = "TRANSFER_GOLD_TO_TREASURY_INTERACTION_TOOLTIP"
using = tooltip_se
button_icon = {
size = { 100% 100% }
alwaystransparent = yes
texture = "gfx/interface/icons/flat_icons/transfer_right.dds"
}
tooltip_offset = { 0 10 }
}
}
}
expand = {}
hbox = {
spacing = 7
name = "treasury_tutorial_uses_this"
icon = {
name = "treasury_icon"
size = { 30 30 }
texture = "gfx/interface/icons/icon_imperial_treasury.dds"
}
flowcontainer = {
margin_bottom = 7
spacing = -6
direction = vertical
ignoreinvisible = yes
text_single = {
name = "treasury_value_positive"
visible = "[GreaterThanOrEqualTo_CFixedPoint(GetPlayer.GetTreasury, '(CFixedPoint)0')]"
text = "[GetPlayer.GetTreasury|0]"
max_width = 50
default_format = "#high"
using = Font_Size_Medium
}
text_single = {
name = "treasury_value_negative"
visible = "[LessThan_CFixedPoint(GetPlayer.GetTreasury, '(CFixedPoint)0')]"
text = "[GetPlayer.GetTreasury|0]"
max_width = 50
default_format = "#N"
using = Font_Size_Medium
}
container = {
text_single = {
name = "treasury_balance_positive"
visible = "[GreaterThanOrEqualTo_CFixedPoint(InGameTopbar.GetTreasuryBalance, '(CFixedPoint)0')]"
text = "[InGameTopbar.GetTreasuryBalance|=1]"
max_width = 50
default_format = "#low"
}
text_single = {
name = "treasury_balance_negative"
visible = "[LessThan_CFixedPoint(InGameTopbar.GetTreasuryBalance, '(CFixedPoint)0')]"
text = "[InGameTopbar.GetTreasuryBalance|=1]"
max_width = 50
default_format = "#N"
}
}
}
}
spacer = {
size = { 10 1}
}
divider_light = {
layoutpolicy_vertical = expanding
alpha = 0.8
}
}
expand = {}
}
}
widget = {
name = "barter_goods"
datacontext = "[GetPlayer]"
visible = "[GetPlayer.HasBarterGoods]"
size = { 112 70 }
state = {
name = _mouse_enter
on_start = "[InGameTopbar.ResetLastUpdateFrame]"
}
widget = {
size = { 112 45 }
using = tooltip_ne
tooltipwidget = {
widget_gold_breakdown_tooltip = {
blockoverride "income"
{
datacontext = "[InGameTopbar.GetBarterGoodsIncomeBreakdown]"
}
blockoverride "expenses"
{
datacontext = "[InGameTopbar.GetBarterGoodsExpensesBreakdown]"
}
}
}
}
background = {
texture = "gfx/interface/skinned/resource_panel_piece.dds"
}
vbox = {
margin_top = -2
hbox = {
layoutpolicy_horizontal = expanding
expand = {}
hbox = {
spacing = 7
icon = {
name = "barter_goods_icon"
size = { 30 30 }
texture = "gfx/interface/icons/icon_barter.dds"
}
flowcontainer = {
margin_bottom = 7
spacing = -6
direction = vertical
ignoreinvisible = yes
text_single = {
name = "barter_goods_value_positive"
text = "[GetPlayer.GetCurrency('barter_goods')|0]"
max_width = 50
default_format = "#high"
using = Font_Size_Medium
}
container = {
text_single = {
name = "barter_goods_balance_positive"
visible = "[GreaterThanOrEqualTo_CFixedPoint(InGameTopbar.GetBarterGoodsBalance, '(CFixedPoint)0')]"
text = "[InGameTopbar.GetBarterGoodsBalance|=1]"
max_width = 50
default_format = "#low"
}
text_single = {
name = "barter_goods_balance_negative"
visible = "[LessThan_CFixedPoint(InGameTopbar.GetBarterGoodsBalance, '(CFixedPoint)0')]"
text = "[InGameTopbar.GetBarterGoodsBalance|=1]"
max_width = 50
default_format = "#N"
}
}
}
}
expand = {}
divider_light = {
layoutpolicy_vertical = expanding
alpha = 0.8
}
}
expand = {}
}
}
widget = {
name = "prestige"
datacontext = "[InGameTopbar.GetPrestigeItem]"
size = { 112 70 }
widget = {
size = { 112 45 }
tooltipwidget = {
widget_resource_value_tooltip = {}
}
using = tooltip_ne
}
background = {
texture = "gfx/interface/skinned/resource_panel_piece.dds"
}
vbox = {
margin_top = -2
hbox = {
layoutpolicy_horizontal = expanding
expand = {}
hbox = {
spacing = 7
icon = {
name = "prestige_icon"
size = { 30 30 }
texture = "[GetPlayer.GetPrestigeLevelTexture]"
}
flowcontainer = {
margin_bottom = 7
spacing = -6
direction = vertical
text_single = {
name = "prestige_value"
text = "[GetPlayer.GetPrestige|0]"
max_width = 50
default_format = "#high"
using = Font_Size_Medium
}
container_resource_balance = {}
}
}
expand = {}
divider_light = {
layoutpolicy_vertical = expanding
alpha = 0.8
}
}
expand = {}
}
}
widget = {
name = "piety"
datacontext = "[InGameTopbar.GetPietyItem]"
size = { 112 70 }
button = {
size = { 112 45 }
onclick = "[OpenGameViewData( 'faith', GetPlayer.GetFaith.GetID )]"
using = tooltip_ne
tooltipwidget = {
widget_resource_value_tooltip = {}
}
}
background = {
texture = "gfx/interface/skinned/resource_panel_piece.dds"
}
vbox = {
margin_top = -2
hbox = {
layoutpolicy_horizontal = expanding
expand = {}
hbox = {
spacing = 6
icon = {
name = "piety_icon"
size = { 30 30 }
texture = "[GetPlayer.GetPietyLevelTexture]"
}
flowcontainer = {
margin_bottom = 7
spacing = -6
direction = vertical
text_single = {
name = "piety_value"
text = "[GetPlayer.GetPiety|0]"
max_width = 50
default_format = "#high"
using = Font_Size_Medium
}
container_resource_balance = {}
}
}
expand = {}
divider_light = {
layoutpolicy_vertical = expanding
alpha = 0.8
}
}
expand = {}
}
}
widget = {
name = "provisions"
visible = "[Or(IsLandlessAdventurer( GetPlayer ) GetPlayer.GetGovernment.IsType( 'landless_minority_government' ) )]"
size = { 112 70 }
widget = {
datacontext = "[GetPlayer.GetDomicile]"
size = { 112 45 }
tooltip = "[Domicile.GetProvisionsBreakdown]"
using = tooltip_ne
}
background = {
texture = "gfx/interface/skinned/resource_panel_piece.dds"
}
vbox = {
datacontext = "[GetPlayer.GetDomicile]"
margin_top = -2
hbox = {
layoutpolicy_horizontal = expanding
expand = {}
hbox = {
spacing = 7
icon = {
name = "provisions_icon"
size = { 30 30 }
framesize = { 60 60 }
frame = 0
texture = "gfx/interface/icons/icon_camp_supply.dds"
}
flowcontainer = {
margin_bottom = 7
spacing = -6
direction = vertical
ignoreinvisible = yes
text_single = {
name = "provisions_value_positive"
visible = "[Not( Or( Domicile.IsProvisionsLow, Domicile.IsProvisionsCritical ) )]"
text = "[Domicile.GetProvisions|0]"
max_width = 50
default_format = "#high"
using = Font_Size_Medium
}
text_single = {
name = "provisions_value_low"
visible = "[Domicile.IsProvisionsLow]"
text = "[Domicile.GetProvisions|0]"
max_width = 50
default_format = "#color_yellow"
using = Font_Size_Medium
}
text_single = {
name = "provisions_value_critical"
visible = "[Domicile.IsProvisionsCritical]"
text = "[Domicile.GetProvisions|0]"
max_width = 50
default_format = "#N"
using = Font_Size_Medium
}
container = {
text_single = {
name = "provisions_max"
text = "[Domicile.GetProvisionsMax]"
max_width = 50
default_format = "#low"
}
}
}
}
expand = {}
divider_light = {
layoutpolicy_vertical = expanding
alpha = 0.8
}
}
expand = {}
hbox = {
layoutpolicy_horizontal = expanding
spacing = 6
vbox = {
margin_top = -2
layoutpolicy_vertical = expanding
expand = {}
}
}
expand = {}
}
}
widget = {
name = "influence"
datacontext = "[InGameTopbar.GetInfluenceItem]"
visible = "[GetPlayer.GetGovernment.HasGovernmentFlag( 'government_has_influence')]"
size = { 112 70 }
widget = {
size = { 112 45 }
tooltipwidget = {
widget_resource_value_tooltip = {}
}
using = tooltip_ne
}
background = {
texture = "gfx/interface/skinned/resource_panel_piece.dds"
}
vbox = {
margin_top = -2
hbox = {
layoutpolicy_horizontal = expanding
expand = {}
hbox = {
spacing = 7
icon = {
name = "influence_icon"
size = { 30 30 }
texture = "[GetPlayer.GetInfluenceLevelTexture]"
}
flowcontainer = {
margin_bottom = 7
spacing = -6
direction = vertical
text_single = {
name = "influence_value"
text = "[GetPlayer.GetInfluence|0]"
max_width = 50
default_format = "#high"
using = Font_Size_Medium
}
container_resource_balance = {}
}
}
expand = {}
divider_light = {
layoutpolicy_vertical = expanding
alpha = 0.8
}
}
expand = {}
}
}
widget = {
name = "renown"
datacontext = "[InGameTopbar.GetDynastyPrestigeItem]"
size = { 112 70 }
layoutpolicy_vertical = expanding
button = {
size = { 112 45 }
onclick = "[DefaultOnHouseCoatOfArmsClick(GetPlayer.GetHouse.GetID)]"
using = tooltip_ne
tooltipwidget = {
widget_resource_value_tooltip = {}
}
}
background = {
texture = "gfx/interface/skinned/resource_panel_piece.dds"
}
vbox = {
margin_top = -2
hbox = {
layoutpolicy_horizontal = expanding
expand = {}
hbox = {
spacing = 6
icon = {
visible = "[GetPlayer.IsDynast]"
texture = "[GetPlayer.GetDynasty.GetDynastyPrestigeLevelTexture]"
size = { 30 30 }
}
icon = {
visible = "[Not(GetPlayer.IsDynast)]"
texture = "[GetPlayer.GetDynasty.GetDynastyPrestigeLevelTexture]"
size = { 30 30 }
alpha = 0.3
}
flowcontainer = {
visible = "[GetPlayer.IsDynast]"
margin_bottom = 7
spacing = -6
direction = vertical
text_single = {
name = "prestige_value"
text = "[GetPlayer.GetDynasty.GetPrestige|0]"
max_width = 50
default_format = "#high"
using = Font_Size_Medium
}
container_resource_balance = {}
}
flowcontainer = {
visible = "[Not(GetPlayer.IsDynast)]"
margin_bottom = 7
spacing = -6
direction = vertical
text_single = {
name = "prestige_value_nodynast"
text = "[GetPlayer.GetDynasty.GetPrestige|0]"
max_width = 50
default_format = "#low"
using = Font_Size_Medium
}
container_resource_balance = {}
}
}
expand = {}
divider_light = {
layoutpolicy_vertical = expanding
alpha = 0.8
}
}
expand = {}
}
}
widget = {
name = "herd"
datacontext = "[GetPlayer]"
datacontext = "[Character.GetDomicile]"
visible = "[Or( IsNomad( GetPlayer ), Character.GetGovernment.HasGovernmentFlag( 'government_is_prepublic') )]"
size = { 112 70 }
state = {
name = _mouse_enter
on_start = "[InGameTopbar.ResetLastUpdateFrame]"
}
widget = {
size = { 112 45 }
using = tooltip_ne
tooltipwidget = {
herd_breakdown_hud_toolip = {}
}
}
background = {
texture = "gfx/interface/skinned/resource_panel_piece.dds"
}
vbox = {
margin_top = -2
hbox = {
layoutpolicy_horizontal = expanding
expand = {}
hbox = {
spacing = 7
icon = {
name = "herd_icon"
size = { 30 30 }
texture = "gfx/interface/icons/icon_herd.dds"
}
flowcontainer = {
margin_bottom = 7
spacing = -6
direction = vertical
ignoreinvisible = yes
text_single = {
name = "herd_value_positive"
visible = "[Not( Domicile.IsAboveHerdLimit )]"
text = "[Domicile.GetHerd|0]"
max_width = 50
default_format = "#high"
using = Font_Size_Medium
}
text_single = {
name = "above_herd_limit"
visible = "[Domicile.IsAboveHerdLimit]"
text = "[Domicile.GetHerd|0]"
max_width = 50
default_format = "#color_yellow"
using = Font_Size_Medium
}
container = {
text_single = {
name = "army_from_herd"
text = "[InGameTopbar.GetHerdChangeValue|=1]"
max_width = 50
default_format = "#low"
}
}
}
}
expand = {}
divider_light = {
layoutpolicy_vertical = expanding
alpha = 0.8
}
}
expand = {}
}
}
}
hbox = {
name = "military"
datacontext = "[GetPlayer]"
widget = {
button = {
size = { 112 45 }
onclick = "[ToggleGameViewData('military', GetPlayer.GetID)]"
tooltip = "[InGameTopbar.GetMilitaryTooltip]"
using = tooltip_ne
}
size = { 112 70 }
background = {
texture = "gfx/interface/skinned/resource_panel_piece_light.dds"
}
### Stiches for the Nomadic UI skin placed as a separate texture to be able to place it perfectly aligned with texture change and tiling.
### Placed on top of the divider that is there normally.
widget = {
name = "nomadic_stiches_divider"
visible = "[IsNomad( GetPlayer )]"
parentanchor = vcenter
size = { 10 42 }
position = { -6 -17 }
icon = {
parentanchor = center
position = { 0 0 }
size = { 10 42 }
texture = "gfx/interface/hud/nomadic_resource_panel_stiches.dds"
}
}
vbox = {
margin_top = 4
hbox = {
layoutpolicy_horizontal = expanding
expand = {}
hbox = {
spacing = 5
icon = {
name = "icon_soldier"
texture = "gfx/interface/icons/icon_soldier.dds"
size = { 25 25 }
}
flowcontainer = {
direction = vertical
datacontext = "[GetPlayerArmyComposition]"
flowcontainer = {
spacing = 2
text_single = {
name = "strength"
text = "[InGameTopbar.GetCurrentTroopsCount]"
default_format = "#high"
align = nobaseline
}
army_quality_icon = {}
}
progressbar_standard = {
name = "soldiers_max"
size = { 40 8 }
visible = "[NotEqualTo_int32(ArmyComposition.GetMaxNumberOfSoldiers, '(int32)0')]"
min = 0
max = "[IntToFloat(ArmyComposition.GetMaxNumberOfSoldiers)]"
value = "[IntToFloat(ArmyComposition.GetCurrentNumberOfSoldiers)]"
}
}
}
expand = {}
}
expand = {}
}
}
widget = {
name = "domain_limit"
visible = "[Not( IsLandlessAdventurer( GetPlayer ) )]"
layoutpolicy_vertical = expanding
button = {
size = { 112 45 }
onclick = "[ToggleGameViewData( 'my_realm', 'bookmark_domain' )]"
tooltip = "[Character.GetDomainLimitTooltip]"
using = tooltip_ne
}
size = { 112 70 }
background = {
texture = "gfx/interface/skinned/resource_panel_end.dds"
}
vbox = {
margin_top = 4
hbox = {
margin_bottom = 16
expand = {}
hbox = {
margin = { 5 5 }
spacing = 5
background = {
visible = "[GreaterThan_int32( Character.GetDomainSize, Character.GetDomainLimit )]"
using = Status_Bad
margin_bottom = -3
}
icon = {
texture = "gfx/interface/icons/icon_domain.dds"
size = { 25 25 }
}
text_single = {
name = "value"
text = "[Character.GetDomainSize]/[Character.GetDomainLimit]"
align = nobaseline
margin_bottom = 1
max_width = 110
}
}
expand = {}
}
expand = {}
}
}
}
}
}
}
type container_royal_court_tooltip = container
{
using = GeneralTooltipSetup
alwaystransparent = no
object_tooltip_pop_out = {
blockoverride "title_text"
{
margin = { 0 8 }
text = "ROYAL_COURT"
default_format = "#T"
}
blockoverride "concept_link"
{
visible = no
}
blockoverride "main_description"
{
vbox = {
layoutpolicy_horizontal = expanding
cooltip_paragraph = {
visible = "[Not( Character.HasRoyalCourt )]"
text = "[Character.GetRoyalCourtBlockers]"
}
cooltip_paragraph = {
visible = "[GreaterThan_int32( Character.GetNumPendingCourtEvents, '(int32)0' )]"
text = "ROYAL_COURT_STATUS_PENDING_EVENTS_BULLET"
}
cooltip_paragraph = {
visible = "[GreaterThan_int32( LocalPlayerNewArtifacts.GetNumNewArtifactsOfCategory( 'court' ), '(int32)0' )]"
text = "ROYAL_COURT_STATUS_NEW_COURT_ARTIFACTS_BULLET"
}
cooltip_paragraph = {
visible = "[And(LessThan_int32( CourtGrandeurData.GetCurrentLevel, CourtGrandeurData.GetMinimumExpectedLevel ),HasDlcFeature( 'royal_court' ))]"
text = "ROYAL_COURT_STATUS_CGV_EXPECTATIONS_BULLET"
}
cooltip_paragraph = {
visible = "[GreaterThan_int32( LocalPlayerCourtEvents.GetNumberCourtEvents, '(int32)0' )]"
text = "ROYAL_COURT_STATUS_CURRENT_EVENTS_BULLET"
}
}
}
}
}
type activity_hud_button = button_normal
{
size = { 58 58 }
tooltip = "TT_ACTIVITY_WIDGET"
using = tooltip_above
onclick = "[Activity.OpenActivityView]"
icon_round_button_base = {}
icon = {
name = "progress_frame"
texture = "gfx/interface/progressbars/action_progress_frame.dds"
size = { 100% 100% }
parentanchor = center
alpha = 0.5
}
progresspie = {
name = "progress"
visible = "[Character.HasActivityState( 'travel' )]"
size = { 50 50 }
texture = "gfx/interface/progressbars/action_progress_thin.dds"
framesize = { 128 128 }
frame = 2
widgetanchor = center
parentanchor = center
min = 0
max = 1
value = "[Character.GetTravelPlan.GetData.GetNextDestinationProgress]"
}
highlight_icon = {
texture = "[Activity.GetType.GetIcon]"
alwaystransparent = yes
size = { 45 45 }
parentanchor = center
}
}
type icon_hud_background = icon {
size = { 200 64 }
texture = "gfx/interface/skinned/hud_bg_character_bar.dds"
spritetype = corneredtiled
spriteborder_left = 70
spriteborder_right = 240
texture_density = 2
state = {
name = _show
using = Animation_Curve_Default
duration = 0.21
position = { 0 0 }
alpha = 1
}
state = {
name = _hide
using = Animation_Curve_Default
duration = 0.21
position = { -36 50 }
alpha = 0
}
}
type tax_jurisdictions_button_tooltip = widget {
alwaystransparent = no
datacontext = "[GetPlayer]"
vbox = {
using = Background_Tooltip
spacing = 10
margin = { 20 10 }
parentanchor = right|vcenter
text_single = {
text = "TAX_JURISDICTIONS_BUTTON"
layoutpolicy_horizontal = expanding
}
hbox = {
layoutpolicy_horizontal = expanding
visible = "[Or( Or( GreaterThan_int32( Character.GetUnassignedVassalsCount, '(int32)0' ), Not( Character.HasTaxSlots ) ), GreaterThan_int32( Character.GetUntaxedJurisdictionCount, '(int32)0' ) )]"
icon = {
size = { 25 25 }
texture = "gfx/interface/icons/symbols/icon_warning.dds"
}
vbox = {
layoutpolicy_horizontal = expanding
margin_left = 5
text_single = {
visible = "[GreaterThan_int32( Character.GetUntaxedJurisdictionCount, '(int32)0' )]"
layoutpolicy_horizontal = expanding
text = "TAX_SLOT_OVERVIEW_WINDOW_TAX_SLOTS_WARNING"
default_format = "#N"
max_width = 320
}
text_single = {
visible = "[GreaterThan_int32( Character.GetUnassignedVassalsCount, '(int32)0' )]"
layoutpolicy_horizontal = expanding
text = "TAX_SLOT_OVERVIEW_WINDOW_UNASSIGNED_VASSALS_WARNING"
default_format = "#N"
max_width = 320
}
text_single = {
visible = "[Not( Character.HasTaxSlots )]"
layoutpolicy_horizontal = expanding
text = "NO_TAX_SLOT_AVAILABLE"
default_format = "#N"
max_width = 320
}
}
}
expand = {}
}
}
type administrative_button_tooltip = widget {
alwaystransparent = no
datacontext = "[GetPlayer]"
vbox = {
using = DefaultTooltipBackground
spacing = 10
margin = { 20 10 }
parentanchor = right|vcenter
text_single = {
text = "ADMINISTRATIVE_BUTTON"
layoutpolicy_horizontal = expanding
}
expand = {}
}
}
type epidemic_hud_tooltip_list = vbox
{
layoutpolicy_horizontal = expanding
spacing = 10
background = {
using = Background_Area_With_Header
margin = { 10 7 }
using = Mask_Rough_Edges
}
cooltip_paragraph = {
block "heading_text"
{
raw_text = "#D Fill me#!"
}
default_format = "#S"
}
vbox = {
layoutpolicy_horizontal = expanding
spacing = 10
block "epidemic_datamodel"
{
}
item = {
hbox = {
layoutpolicy_horizontal = expanding
spacing = 10
visible = "[Epidemic.IsValidCheck]"
background = {
using = Background_Area
using = Mask_Rough_Edges
using = Background_Alternate_Datamodel
margin = { 10 7 }
}
icon_epidemic = {
tooltipwidget = epidemic_tooltip
}
vbox = {
layoutpolicy_horizontal = expanding
cooltip_paragraph = {
text = "[Epidemic.GetName]"
default_format = "#S"
}
cooltip_paragraph = {
text = "EPIDEMIC_TOTAL_DEATH_TOLL"
}
block "item_extra_data"
{
}
}
expand = {}
}
}
}
}
type epidemic_hud_tooltip = object_tooltip_pop_out
{
blockoverride "title_text"
{
text = "EPIDEMICS_TITLE"
default_format = "#T"
}
blockoverride "concept_link"
{
visible = no
}
blockoverride "main_description"
{
vbox = {
layoutpolicy_horizontal = expanding
spacing = 16
epidemic_hud_tooltip_list = {
name = "realm_epidemics"
visible = "[DataModelHasItems( InGameBottomBar.GetEpidemicsInRealm )]"
blockoverride "heading_text"
{
text = "HUD_EPIDEMICS_IN_REALM"
}
blockoverride "epidemic_datamodel"
{
datamodel = "[InGameBottomBar.GetEpidemicsInRealm]"
}
blockoverride "item_extra_data"
{
cooltip_paragraph = {
text = "EPIDMIC_TOOLTIP_DOMAIN_INFECTIONS"
}
}
}
epidemic_hud_tooltip_list = {
name = "nearby_epidemics"
visible = "[DataModelHasItems( InGameBottomBar.GetEpidemicsBorderingRealm )]"
blockoverride "heading_text"
{
text = "HUD_EPIDEMICS_BORDERING_REALM"
}
blockoverride "epidemic_datamodel"
{
datamodel = "[InGameBottomBar.GetEpidemicsBorderingRealm]"
}
}
epidemic_hud_tooltip_list = {
name = "global_epidemics"
visible = "[DataModelHasItems( InGameBottomBar.GetGlobalNotificationEpidemics )]"
blockoverride "heading_text"
{
text = "HUD_EPIDEMICS_GLOBAL_NOTIFICATIONS"
}
blockoverride "epidemic_datamodel"
{
datamodel = "[InGameBottomBar.GetGlobalNotificationEpidemics]"
}
blockoverride "item_extra_data"
{
cooltip_paragraph = {
text = "HUD_EPIDEMIC_GLOBAL_NOTIFICATION"
default_format = "#flavor"
}
}
}
}
}
}
type button_epidemics = button
{
size = { 80 80 }
using = tooltip_ne
onclick = "[ToggleGameView( 'epidemics' )]"
tooltipwidget = {
epidemic_hud_tooltip = {}
}
video_icon = {
name = "epidemic_particules"
size = { 80 80 }
visible = "[InGameBottomBar.HasGlobalNotificationEpidemic]"
gfxtype = videogfx
shaderfile = ""
video = "gfx/particles/fly.bk2"
loop = yes
modify_texture = {
texture = "gfx/interface/component_masks/mask_fade_horizontal_right.dds"
blend_mode = alphamultiply
spriteType = corneredTiled
alpha = 0.8
}
modify_texture = {
texture = "gfx/interface/component_masks/mask_fade_horizontal_right.dds"
blend_mode = alphamultiply
spriteType = corneredTiled
mirror = horizontal
alpha = 0.8
}
}
button = {
name = "epidemic_icon_global_notify"
visible = "[InGameBottomBar.HasGlobalNotificationEpidemic]"
texture = "gfx/interface/hud/button_epidemics_black_plague.dds"
size = { 100% 100% }
alwaystransparent = yes
}
button = {
name = "epidemic_icon"
visible = "[Not( InGameBottomBar.HasGlobalNotificationEpidemic )]"
texture = "gfx/interface/hud/button_epidemics.dds"
size = { 100% 100% }
alwaystransparent = yes
}
}
type legends_hud_tooltip = object_tooltip_pop_out
{
blockoverride "title_text"
{
text = "LEGENDS_TITLE"
default_format = "#T"
margin = { 0 5 }
}
blockoverride "concept_link"
{
visible = no
}
blockoverride "main_description"
{
vbox = {
layoutpolicy_horizontal = expanding
spacing = 15
datacontext = "[GetPlayer]"
datacontext = "[Character.GetPromotedLegend]"
datacontext = "[AccessLocalPlayerCachedData]"
vbox = {
name = "promoted_legend"
layoutpolicy_horizontal = expanding
spacing = 15
visible = "[And( Legend.IsValid, Not( Legend.IsCompleted ) )]"
background = {
using = Background_Area_With_Header
margin = { 10 7 }
using = Mask_Rough_Edges
}
cooltip_paragraph = {
datacontext = "[Character.GetPromotedLegend]"
text = "PROMOTED_LEGEND"
default_format = "#S"
}
hbox = {
layoutpolicy_horizontal = expanding
spacing = 10
background = {
using = Background_Area
using = Mask_Rough_Edges
using = Background_Alternate_Datamodel
margin = { 10 7 }
}
icon_legend = {
datacontext = "[Legend.GetType]"
tooltipwidget = legend_tooltip
}
vbox = {
layoutpolicy_horizontal = expanding
cooltip_paragraph = {
text = "[Legend.GetName]"
default_format = "#S"
}
legend_summary_vbox = {}
}
expand = {}
}
}
vbox = {
name = "legend_seeds"
layoutpolicy_horizontal = expanding
cooltip_paragraph = {
text = "LEGEND_SEEDS"
default_format = "#S"
}
cooltip_paragraph = {
text = "HUD_LEGEND_SEEDS"
visible = "[Or( DataModelHasItems( Character.GetLegendSeeds ), DataModelHasItems( LocalPlayerCachedData.GetTriggeredLegendSeeds ) )]"
}
cooltip_paragraph = {
text = "LEGEND_SEEDS_EMPTY"
visible = "[And( IsDataModelEmpty( Character.GetLegendSeeds ), IsDataModelEmpty( LocalPlayerCachedData.GetTriggeredLegendSeeds ) )]"
}
}
}
}
}
type icon_power_sharing_level = highlight_icon {
size = { 28 28 }
texture = "gfx/interface/window_regency/regency_level_button_badge.dds"
text_single = {
align = nobaseline
parentanchor = center
raw_text = "[Diarchy.GetPowerLevel]"
}
}
type legitimacy_hud_tooltip = object_tooltip_pop_out
{
visible = "[And(LegitimacyType.IsValid, Character.GetGovernment.HasRule( 'legitimacy' ))]"
blockoverride "title_text"
{
margin = { 0 8 }
text = "legitimacy_hud_tt"
default_format = "#T"
}
blockoverride "concept_link"
{
text = "[legitimacy|E]"
}
blockoverride "subheading"
{
text_single = {
layoutpolicy_horizontal = expanding
autoresize = yes
fontsize_min = 14
using = Font_Size_Small
text = "legitimacy_hud_tt_subheading"
default_format = "#weak"
fonttintcolor = "[TooltipInfo.GetTintColor]"
max_width = 400
margin_top = -4
}
}
blockoverride "header_additions"
{
widget = {
size = { 120 74 }
widget = {
size = { 240 74 }
position = { -16 0 }
visible = "[And( Not( IsNomad( GetPlayer ) ), Not( GetPlayer.GetGovernment.IsType( 'celestial_government' ) ) )]"
proportional_icon = {
size = { 100% 100% }
visible = "[GreaterThanOrEqualTo_int32( LegitimacyLevel.GetIndex, Character.GetAveragePowerfulVassalLegitimacyExpectation.GetIndex )]"
texture = "gfx/interface/window_legend_chronicle/expected_legitimacy_decoration.dds"
using = Mask_Rough_Edges
modify_texture = {
texture = "gfx/interface/component_masks/mask_fade_horizontal_right.dds"
blend_mode = alphaMultiply
}
}
proportional_icon = {
size = { 100% 100% }
visible = "[LessThan_int32( LegitimacyLevel.GetIndex, Character.GetAveragePowerfulVassalLegitimacyExpectation.GetIndex )]"
texture = "gfx/interface/window_legend_chronicle/under_expected_legitimacy_decoration.dds"
using = Mask_Rough_Edges
modify_texture = {
texture = "gfx/interface/component_masks/mask_fade_horizontal_right.dds"
blend_mode = alphaMultiply
}
}
}
widget = {
size = { 240 74 }
position = { -16 0 }
visible = "[IsNomad( GetPlayer )]"
proportional_icon = {
size = { 100% 100% }
visible = "[GreaterThanOrEqualTo_int32( LegitimacyLevel.GetIndex, Character.GetAveragePowerfulVassalLegitimacyExpectation.GetIndex )]"
texture = "gfx/interface/illustrations/decisions/mpo_decision_great_khan.dds"
mirror = horizontal
using = Mask_Rough_Edges
modify_texture = {
texture = "gfx/interface/component_masks/mask_fade_horizontal.dds"
blend_mode = alphaMultiply
}
}
proportional_icon = {
size = { 100% 100% }
visible = "[LessThan_int32( LegitimacyLevel.GetIndex, Character.GetAveragePowerfulVassalLegitimacyExpectation.GetIndex )]"
texture = "gfx/interface/illustrations/event_scenes/mpo_raid_burning_asian.dds"
mirror = horizontal
using = Mask_Rough_Edges
modify_texture = {
texture = "gfx/interface/component_masks/mask_fade_horizontal.dds"
blend_mode = alphaMultiply
}
}
}
widget = {
size = { 240 74 }
position = { -16 0 }
visible = "[GetPlayer.GetGovernment.IsType( 'celestial_government' )]"
proportional_icon = {
size = { 100% 100% }
visible = "[GreaterThanOrEqualTo_int32( LegitimacyLevel.GetIndex, Character.GetAveragePowerfulVassalLegitimacyExpectation.GetIndex )]"
texture = "gfx/interface/illustrations/event_story/tgp_dynastic_cycle_stability.dds"
mirror = horizontal
using = Mask_Rough_Edges
modify_texture = {
texture = "gfx/interface/component_masks/mask_fade_horizontal.dds"
blend_mode = alphaMultiply
}
}
proportional_icon = {
size = { 100% 100% }
visible = "[LessThan_int32( LegitimacyLevel.GetIndex, Character.GetAveragePowerfulVassalLegitimacyExpectation.GetIndex )]"
texture = "gfx/interface/illustrations/event_story/tgp_dynastic_cycle_consolidation.dds"
mirror = horizontal
using = Mask_Rough_Edges
modify_texture = {
texture = "gfx/interface/component_masks/mask_fade_horizontal.dds"
blend_mode = alphaMultiply
}
}
}
}
}
blockoverride "main_description"
{
vbox = {
layoutpolicy_horizontal = expanding
margin_right = 10
hbox = {
layoutpolicy_horizontal = expanding
cooltip_paragraph = {
text = "LEGITIMACY_EFFECTS"
max_width = 500
}
expand = {
layoutpolicy_horizontal = expanding
}
}
spacer = {
size = { 0 15 }
}
### LEGITIMACY BREAKDOWN
hbox = {
datacontext = "[Character.GetMonthlyLegitimacyTooltip]"
visible = "[Not( EqualTo_CFixedPoint( Character.GetLegitimacy, '(CFixedPoint)0' ))]"
layoutpolicy_horizontal = expanding
using = tooltip_se
text_single = {
layoutpolicy_horizontal = expanding
text = "[Character.GetMonthlyLegitimacy]"
align = nobaseline
}
tooltip_visible = "[ValueBreakdown.HasTooltip]"
tooltipwidget = {
visible = "[ValueBreakdown.HasTooltip]"
widget_value_breakdown_tooltip = {}
}
expand = {}
}
spacer = {
size = { 0 15 }
}
hbox = {
name = "track_header"
layoutpolicy_horizontal = expanding
spacing = 5
margin_left = -10
min_height = 45
background = {
using = Background_Area
margin = { -5 -5 }
modify_texture = {
texture = "gfx/interface/component_masks/mask_fade_horizontal_right.dds"
blend_mode = alphaMultiply
}
}
icon_legitimacy_flat = {}
text_single = {
text = "LEGITIMACY_TRACK_TITLE"
layoutpolicy_horizontal = expanding
align = nobaseline
}
}
margin_widget = {
size = { 500 50 }
margin = { 10 0 }
datacontext = "[Character.GetLegitimacyType]"
datacontext = "[Character.GetLegitimacyLevel]"
hbox_complex_bar_progress = {
layoutpolicy_horizontal = expanding
margin_top = 30
}
hbox_complex_bar_levels = {
layoutpolicy_horizontal = expanding
position = { 0 -10 }
blockoverride "marker"
{
widget_level_marker = {
scale = 0.75
# Hide last one, it is the maximum not an actual level
visible = "[LessThan_int32( PdxGuiWidget.GetIndexInDataModel, GetDataModelSize( LegitimacyType.GetLevels ) )]"
blockoverride "marker_addon" {
icon = {
texture = "gfx/interface/colors/white.dds"
using = Mask_Rough_Edges
position = { -4 28 }
size = { 8 40 }
alpha = 0.4
visible = "[GreaterThan_int32( PdxGuiWidget.GetIndexInDataModel, '(int32)0' )]"
}
widget = {
size = { 52 52 }
position = { -26 24 }
visible = "[And( EqualTo_int32( Character.GetAveragePowerfulVassalLegitimacyExpectation.GetIndex, PdxGuiWidget.GetIndexInDataModel ), Not( Character.GetGovernment.HasRule( 'deny_powerful_vassal' ) ) ) ]"
icon = {
size = { 100% 100% }
visible = "[Not(LessThan_int32( LegitimacyLevel.GetIndex, Character.GetAveragePowerfulVassalLegitimacyExpectation.GetIndex ))]"
texture = "gfx/interface/window_legend_chronicle/pin_expected_legitimacy.dds"
}
icon = {
size = { 100% 100% }
visible = "[LessThan_int32( LegitimacyLevel.GetIndex, Character.GetAveragePowerfulVassalLegitimacyExpectation.GetIndex )]"
texture = "gfx/interface/window_legend_chronicle/pin_under_expected_legitimacy.dds"
}
widget = {
parentanchor = center
size = { 28 28 }
icon_flat_standard_red = {
size = { 100% 100% }
visible = "[LessThan_int32( LegitimacyLevel.GetIndex, Character.GetAveragePowerfulVassalLegitimacyExpectation.GetIndex )]"
texture = "[LegitimacyType.GetFlatIcon]"
}
icon_flat_standard = {
size = { 100% 100% }
visible = "[Not(LessThan_int32( LegitimacyLevel.GetIndex, Character.GetAveragePowerfulVassalLegitimacyExpectation.GetIndex ))]"
texture = "[LegitimacyType.GetFlatIcon]"
}
}
}
widget = {
size = { 52 52 }
position = { -26 24 }
visible = "[And( EqualTo_int32( Character.GetAverageVassalLegitimacyExpectation.GetIndex, PdxGuiWidget.GetIndexInDataModel ), Character.GetGovernment.HasRule( 'deny_powerful_vassal' ) ) ]"
icon = {
size = { 100% 100% }
visible = "[Not(LessThan_int32( LegitimacyLevel.GetIndex, Character.GetAverageVassalLegitimacyExpectation.GetIndex ))]"
texture = "gfx/interface/window_legend_chronicle/pin_expected_legitimacy.dds"
}
icon = {
size = { 100% 100% }
visible = "[LessThan_int32( LegitimacyLevel.GetIndex, Character.GetAverageVassalLegitimacyExpectation.GetIndex )]"
texture = "gfx/interface/window_legend_chronicle/pin_under_expected_legitimacy.dds"
}
widget = {
parentanchor = center
size = { 28 28 }
icon_flat_standard_red = {
size = { 100% 100% }
visible = "[LessThan_int32( LegitimacyLevel.GetIndex, Character.GetAverageVassalLegitimacyExpectation.GetIndex )]"
texture = "[LegitimacyType.GetFlatIcon]"
}
icon_flat_standard = {
size = { 100% 100% }
visible = "[Not(LessThan_int32( LegitimacyLevel.GetIndex, Character.GetAverageVassalLegitimacyExpectation.GetIndex ))]"
texture = "[LegitimacyType.GetFlatIcon]"
}
}
}
}
blockoverride "visible_active"
{
visible = "[EqualTo_int32( LegitimacyLevel.GetIndex, PdxGuiWidget.GetIndexInDataModel )]"
}
blockoverride "visible_inactive"
{
visible = "[NotEqualTo_int32( LegitimacyLevel.GetIndex, PdxGuiWidget.GetIndexInDataModel )]"
}
blockoverride "marker_tooltip"
{
datacontext_from_model = {
datamodel = "[LegitimacyType.GetLevels]"
index = "[PdxGuiWidget.GetIndexInDataModel]"
}
tooltip = "LEGITIMACY_TRACK_TOOLTIP"
using = tooltip_se
}
blockoverride "marker_text"
{
text = "[PdxGuiWidget.GetIndexInDataModel|V]"
}
}
}
}
}
spacer = {
size = { 0 15 }
}
hbox = {
layoutpolicy_horizontal = expanding
vbox = {
visible = "[Character.HasVassals]"
spacing = 10
layoutpolicy_horizontal = expanding
cooltip_paragraph = {
text = "LEGITIMACY_AVERAGE_EXPECTATIONS"
visible = "[Not(Character.GetGovernment.HasRule( 'deny_powerful_vassal' ))]"
}
cooltip_paragraph = {
text = "LEGITIMACY_AVERAGE_EXPECTATIONS_NO_POWERFUL_VASSALS"
visible = "[Character.GetGovernment.HasRule( 'deny_powerful_vassal' )]"
}
cooltip_paragraph = {
visible = "[And( LessThan_int32( LegitimacyLevel.GetIndex, Character.GetAveragePowerfulVassalLegitimacyExpectation.GetIndex ), Not( Character.GetGovernment.HasRule( 'deny_powerful_vassal' ) ) ) ]"
text = "LEGITIMACY_BELOW_AVERAGE_EXPECTATIONS"
}
cooltip_paragraph = {
visible = "[And( LessThan_int32( LegitimacyLevel.GetIndex, Character.GetAverageVassalLegitimacyExpectation.GetIndex ), Character.GetGovernment.HasRule( 'deny_powerful_vassal' ) ) ]"
text = "LEGITIMACY_BELOW_AVERAGE_EXPECTATIONS"
}
}
expand = {
layoutpolicy_horizontal = expanding
}
}
}
}
}
type hbox_merit_with_label = hbox {
visible = "[Character.ShouldShowMerit]"
spacing = 4
margin = { 4 0 }
block "hbox_merit_with_label_background"
{
background = {
using = Background_Area
margin = { 4 4 }
}
}
widget_merit = {
blockoverride "merit_widget_tooltip"
{
# use our own hitbox for the tooltip
}
}
text_single = {
name = "rank_number"
visible = "[GreaterThanOrEqualTo_int32( Character.GetMeritLevel, '(int32)1' )]"
text = "[GetMeritLevelShortNameNoTooltip( MeritItem.GetCurrentLevel )|V]"
align = nobaseline
}
text_single = {
name = "no_rank"
visible = "[LessThanOrEqualTo_int32( Character.GetMeritLevel, '(int32)0' )]"
text = "[GetMeritLevelShortNameNoTooltip( MeritItem.GetCurrentLevel )]"
default_format = "#weak"
max_width = 50
align = nobaseline
}
tooltipwidget = {
merit_hud_tooltip = {
block "merit_tooltip" {}
}
}
}
type widget_merit = widget {
visible = "[Character.ShouldShowMerit]"
block "icon_size"
{
size = { 32 32 }
}
using = tooltip_ne
block "merit_widget_tooltip"
{
tooltipwidget = {
merit_hud_tooltip = {
block "merit_tooltip" {}
}
}
}
block "background_texture"
{
icon = {
texture = "gfx/interface/icons/activity_phases/button_activity_base.dds"
size = { 100% 100% }
}
}
icon = {
name = "progress_frame"
texture = "gfx/interface/progressbars/action_progress_frame.dds"
size = { 100% 100% }
}
icon = {
parentanchor = center
size = { 66% 66% }
texture = "[Character.GetMeritLevelTexture]"
frame = "[IntToFrameIndex( Character.GetMeritLevel )]"
modify_texture = {
name = "lvl_increase"
texture = "gfx/interface/colors/gold.dds"
blend_mode = colordodge
alpha = 0
}
modify_texture = {
name = "lvl_decrease"
texture = "gfx/interface/colors/red.dds"
blend_mode = colordodge
alpha = 0
}
state = {
name = "merit_level_increase"
next = "merit_level_increase_2"
modify_texture = {
name = "lvl_increase"
alpha = 0
}
}
state = {
name = "merit_level_increase_2"
next = "merit_level_increase_3"
duration = 0.4
bezier = { 0.5 0 1 0.5 }
modify_texture = {
name = "lvl_increase"
alpha = 0.7
}
}
state = {
name = "merit_level_increase_3"
duration = 0.5
bezier = { 0 0.5 0.5 1 }
modify_texture = {
name = "lvl_increase"
alpha = 0
}
}
state = {
name = "merit_level_decrease"
next = "merit_level_decrease_2"
modify_texture = {
name = "lvl_decrease"
alpha = 0
}
}
state = {
name = "merit_level_decrease_2"
next = "merit_level_decrease_3"
duration = 0.4
bezier = { 0.5 0 1 0.5 }
modify_texture = {
name = "lvl_decrease"
alpha = 0.7
}
}
state = {
name = "merit_level_decrease_3"
duration = 0.5
bezier = { 0 0.5 0.5 1 }
modify_texture = {
name = "lvl_decrease"
alpha = 0
}
}
}
widget = {
size = { 87% 87% }
parentanchor = center
progresspie = {
name = "progress"
size = { 100% 100% }
texture = "gfx/interface/progressbars/action_progress_thin_blue.dds"
framesize = { 128 128 }
frame = 2
min = 0
max = 100
value = "[MeritItem.GetProgress]"
}
icon = {
name = "progress_capped"
visible = "[And(Character.IsMeritCapped, Not( EqualTo_int32( Character.GetMeritLevel, '(int32)9' ) ) )]"
size = { 100% 100% }
texture = "gfx/interface/progressbars/action_progress_thin_red.dds"
framesize = { 128 128 }
frame = 2
}
}
}
type widget_merit_hud = widget {
visible = "[And(Character.ShouldShowMerit, Character.IsAlive)]"
size = { 74 94 }
using = tooltip_ne
block "merit_widget_tooltip"
{
tooltipwidget = {
merit_hud_tooltip = {
block "merit_tooltip" {}
}
}
}
# WIDGET BACKGROUND TEXTURE
icon = {
texture = "gfx/interface/hud/tgp_widget_merit_background.dds"
size = { 100% 100% }
}
# MERIT ICON
icon = {
parentanchor = top|hcenter
position = { 0 17 }
size = { 40 40 }
texture = "[Character.GetMeritLevelTexture]"
frame = "[IntToFrameIndex( Character.GetMeritLevel )]"
modify_texture = {
name = "lvl_increase"
texture = "gfx/interface/colors/gold.dds"
blend_mode = colordodge
alpha = 0
}
modify_texture = {
name = "lvl_decrease"
texture = "gfx/interface/colors/red.dds"
blend_mode = colordodge
alpha = 0
}
state = {
name = "merit_level_increase"
next = "merit_level_increase_2"
modify_texture = {
name = "lvl_increase"
alpha = 0
}
}
state = {
name = "merit_level_increase_2"
next = "merit_level_increase_3"
duration = 0.4
bezier = { 0.5 0 1 0.5 }
modify_texture = {
name = "lvl_increase"
alpha = 0.7
}
}
state = {
name = "merit_level_increase_3"
duration = 0.5
bezier = { 0 0.5 0.5 1 }
modify_texture = {
name = "lvl_increase"
alpha = 0
}
}
state = {
name = "merit_level_decrease"
next = "merit_level_decrease_2"
modify_texture = {
name = "lvl_decrease"
alpha = 0
}
}
state = {
name = "merit_level_decrease_2"
next = "merit_level_decrease_3"
duration = 0.4
bezier = { 0.5 0 1 0.5 }
modify_texture = {
name = "lvl_decrease"
alpha = 0.7
}
}
state = {
name = "merit_level_decrease_3"
duration = 0.5
bezier = { 0 0.5 0.5 1 }
modify_texture = {
name = "lvl_decrease"
alpha = 0
}
}
}
# PROGRESS BAR
widget = {
parentanchor = top|hcenter
position = { 0 9 }
size = { 56 56 }
progresspie = {
name = "progress"
size = { 100% 100% }
texture = "gfx/interface/progressbars/action_progress_thin_blue.dds"
framesize = { 128 128 }
frame = 2
min = 0
max = 100
value = "[MeritItem.GetProgress]"
}
icon = {
name = "progress_capped"
visible = "[And(Character.IsMeritCapped, Not( EqualTo_int32( Character.GetMeritLevel, '(int32)9' ) ) )]"
size = { 100% 100% }
framesize = { 128 128 }
texture = "gfx/interface/progressbars/action_progress_thin_red.dds"
frame = 2
}
}
# RANK
text_single = {
visible = "[GreaterThan_int32( Character.GetMeritLevel, '(int32)0' )]"
parentanchor = bottom|hcenter
position = { 0 -6 }
text = "[GetMeritLevelShortNameNoTooltip( MeritItem.GetCurrentLevel )|V]"
align = nobaseline
using = Font_Size_Small
}
# IF YOU HAVE NO RANK
text_single = {
visible = "[EqualTo_int32( Character.GetMeritLevel, '(int32)0' )]"
parentanchor = bottom|hcenter
position = { 0 -5 }
raw_text = "-"
align = nobaseline
using = Font_Size_Small
}
}
type hbox_merit_complex_bar_progress = hbox {
allow_outside = yes
hbox = {
layoutpolicy_horizontal = expanding
layoutpolicy_vertical = expanding
layoutstretchfactor_horizontal = "[MeritItem.GetMeritStretchFactor]"
allow_outside = yes
block "filled" {
background = {
spriteType = Corneredstretched
spriteborder = { 3 3 }
block "texture_merit" {
texture = "gfx/interface/progressbars/progress_standard.dds"
}
}
}
}
hbox = {
layoutpolicy_horizontal = expanding
layoutpolicy_vertical = expanding
layoutstretchfactor_horizontal = "[MeritItem.GetOverflowMeritStretchFactor]"
visible = "[GreaterThan_int32( MeritItem.GetOverflowMeritStretchFactor, '(int32)0' )]"
allow_outside = yes
tooltip = "MERIT_RANK_CAP_TT"
block "next" {
background = {
spriteType = Corneredstretched
spriteborder = { 3 3 }
block "texture_overflow_merit" {
texture = "gfx/interface/progressbars/progress_red.dds"
}
}
}
}
hbox = {
layoutpolicy_horizontal = expanding
layoutpolicy_vertical = expanding
layoutstretchfactor_horizontal = "[MeritItem.GetLeftoverSpaceStretchFactor]"
allow_outside = yes
block "empty" {
background = {
spriteType = Corneredstretched
spriteborder = { 3 3 }
block "texture_empty" {
texture = "gfx/interface/progressbars/progress_black.dds"
}
}
}
}
}
type merit_hud_tooltip = object_tooltip_pop_out {
datacontext = "[MeritItem.GetValueItem]"
datacontext = "[MeritItem.GetComplexBar]"
visible = "[Character.HasMerit]"
blockoverride "title_text"
{
text = "[GetMeritModifierByLevel( Character.GetMeritLevel ).GetName]"
default_format = "#T"
}
blockoverride "concept_link"
{
text = "[merit_level|E]"
}
blockoverride "subheading"
{
text_single = {
max_width = 400
layoutpolicy_horizontal = expanding
text = "[Character.GetCareerPathDesc]"
fonttintcolor = "[TooltipInfo.GetTintColor]"
using = Font_Size_Small
fontsize_min = 14
autoresize = yes
default_format = "#weak_glow"
}
}
blockoverride "header_additions"
{
widget = {
size = { 60 74 }
icon = {
size = { 64 64 }
parentanchor = center
position = { -8 0 }
texture = "[Character.GetMeritLevelTexture]"
frame = "[IntToFrameIndex( Character.GetMeritLevel )]"
}
}
}
blockoverride "main_description"
{
vbox = {
layoutpolicy_horizontal = expanding
margin_right = 5
spacing = 16
### MERIT EFFECTS
vbox = {
layoutpolicy_horizontal = expanding
### modifier effects
cooltip_paragraph = {
visible = "[Not( StringIsEmpty( GetMeritLevelEffects( Character.GetMeritLevel ) ) )]"
max_width = 500
text = "[GetMeritLevelEffects( Character.GetMeritLevel )]"
}
### Merit affecting Movement Power
cooltip_paragraph = {
visible = "[Character.ShouldShowMovementPower]"
max_width = 500
text = "MERIT_MOVEMENT_POWER"
}
### Merit enabling appointment
cooltip_paragraph = {
max_width = 500
name = "merit_appointment"
layoutpolicy_horizontal = expanding
text = "[GetMaxAppointmentRankDescription( 'merit', Character.GetMeritLevel )]"
}
}
text_label_left = {
layoutpolicy_horizontal = expanding
text = "MERIT_PROGRESS_HEADING"
}
### MERIT COMPLEX PROGRESS BAR
widget = {
layoutpolicy_horizontal = expanding
size = { 500 50 }
hbox_merit_complex_bar_progress = {
layoutpolicy_horizontal = expanding
margin_top = 30
margin_right = 16
margin_left = 5
}
hbox_complex_bar_levels = {
layoutpolicy_horizontal = expanding
position = { 0 -10 }
margin_right = 16
blockoverride "marker"
{
widget_level_marker = {
visible = "[And( GreaterThan_int32( ComplexBarItem.GetIndex, '(int32)0' ), LessThan_int32( PdxGuiWidget.GetIndexInDataModel, GetDataModelSize( ComplexBar.GetItems ) ) )]"
scale = 0.75
blockoverride "marker_size"
{
size = { 55 55 }
}
blockoverride "marker_size_inactive"
{
size = { 45 45 }
}
blockoverride "marker_addon" {
icon = {
texture = "gfx/interface/colors/white.dds"
using = Mask_Rough_Edges
position = { -4 42 }
size = { 8 23 }
alpha = 0.3
visible = "[GreaterThan_int32( PdxGuiWidget.GetIndexInDataModel, '(int32)0' )]"
}
widget = {
size = { 52 52 }
position = { -26 24 }
visible = "[EqualTo_int32( Add_int32( Character.GetMaxMeritLevelForCharacter, '(int32)1' ), PdxGuiWidget.GetIndexInDataModel )]"
tooltip = "MERIT_RANK_CAP_TT"
icon = {
size = { 100% 100% }
texture = "gfx/interface/window_legend_chronicle/pin_under_expected_legitimacy.dds"
}
icon_flat_standard_red = {
parentanchor = center
size = { 26 26 }
texture = "gfx/interface/icons/domicile_building/domicile_lock_wagons.dds"
}
}
}
blockoverride "visible_active"
{
visible = "[EqualTo_int32( MeritItem.GetCurrentLevel, ComplexBarItem.GetIndex )]"
}
blockoverride "level_inactive_style"
{
datacontext = "[ComplexBarItem]"
allow_outside = yes
datacontext_from_model = {
datamodel = "[MeritItem.GetLevels]"
index = "[PdxGuiWidget.GetIndexInDataModel]"
}
modify_texture = {
visible = "[GreaterThan_int32( ComplexBarItem.GetIndex, PlayerValueItem.GetMaxLevelIndex( Character.Self ) )]"
texture = "gfx/interface/colors/black.dds"
blend_mode = multiply
alpha = 0.1
}
}
blockoverride "visible_inactive"
{
visible = "[NotEqualTo_int32( MeritItem.GetCurrentLevel, ComplexBarItem.GetIndex )]"
}
blockoverride "marker_tooltip"
{
datacontext = "[ComplexBarItem]"
datacontext_from_model = {
datamodel = "[MeritItem.GetLevels]"
index = "[PdxGuiWidget.GetIndexInDataModel]"
}
tooltip = "MERIT_PROGRESSBAR_MARKER_TOOLTIP"
using = tooltip_se
}
blockoverride "marker_text"
{
text = "[GetMeritLevelShortNameNoTooltip( ComplexBarItem.GetIndex )]"
}
}
}
}
}
vbox = {
layoutpolicy_horizontal = expanding
hbox = {
layoutpolicy_horizontal = expanding
### MERIT TOTAL
text_single = {
layoutpolicy_horizontal = expanding
text = "[Character.GetTotalMerit]"
align = nobaseline
}
### MERIT CAP
text_single = {
visible = "[PlayerValueItem.HasNonStandardLevel( Character.Self )]"
layoutpolicy_horizontal = expanding
text = "[PlayerValueItem.GetMaxLevel( Character.Self )]"
align = right|nobaseline
default_format = "#underline"
tooltip = "MAX_MERIT_RANK_BREAKDOWN_TOOLTIP"
}
}
hbox = {
layoutpolicy_horizontal = expanding
### MERIT BREAKDOWN WITH TOOLTIP
text_single = {
datacontext = "[PlayerValueItem.GetBalanceGained]"
text = "[Character.GetMeritBalanceBreakdown]"
align = nobaseline
tooltip_visible = "[ValueBreakdown.HasTooltip]"
tooltipwidget = {
widget_value_breakdown_tooltip = { }
}
}
expand = {}
}
}
### MERIT EXAMINATIONS
vbox = {
layoutpolicy_horizontal = expanding
spacing = 5
text_label_left = {
layoutpolicy_horizontal = expanding
text = "MERIT_TOOLTIP_COMPLETED_EXAMINATIONS"
}
hbox = {
datacontext = "[Character.MakeScope]"
spacing = 50
widget_childrens_exam_status = {}
widget_provincial_exam_status = {}
widget_metropolitan_exam_status = {}
widget_palace_exam_status = {}
}
text_single = {
layoutpolicy_horizontal = expanding
text = "MERIT_TOOLTIP_EXAMINATION_DISCLAIMER"
default_format = "#weak"
}
}
}
}
}
type passed_examination_icon = icon_flat_standard_green
{
size = { 30 30 }
texture = "gfx/interface/icons/flat_icons/passed_examination_icon.dds"
background = {
using = Background_Area_Solid
block "background_margins"
{
margin = { -1 -1 }
}
}
}
type failed_examination_icon = icon_flat_standard_red
{
size = { 30 30 }
texture = "gfx/interface/icons/flat_icons/failed_examination_icon.dds"
background = {
using = Background_Area_Solid
margin = { -1 -1 }
}
}
type herd_breakdown_hud_toolip = container
{
using = GeneralTooltipSetup
alwaystransparent = no
object_tooltip_pop_out = {
blockoverride "title_text"
{
margin = { 0 8 }
text = "DOMICILE_HERD_TITLE"
default_format = "#T"
block "herd_limit_breakdown"
{
datacontext = "[InGameTopbar.GetHerdLimitBreakdown( Domicile.Self )]"
}
tooltipwidget = {
widget_value_breakdown_tooltip = {}
}
}
blockoverride "concept_link"
{
visible = no
}
blockoverride "main_description"
{
vbox = {
layoutpolicy_horizontal = expanding
cooltip_paragraph = {
visible = "[Domicile.IsAboveHerdLimit]"
text = "[Domicile.GetAboveHerdLimitEffects]"
}
spacer = {
visible = "[Domicile.IsAboveHerdLimit]"
size = { 0 15 }
}
cooltip_paragraph = {
block "herd_change_breakdown"
{
datacontext = "[InGameTopbar.GetHerdChangeBreakdown]"
}
text = "VALUE_BREAKDOWN_TEXT_LINK"
tooltip_visible = "[ValueBreakdown.HasTooltip]"
tooltipwidget = {
widget_value_breakdown_tooltip = {}
}
}
cooltip_paragraph = {
block "herd_conversion_breakdown"
{
datacontext = "[InGameTopbar.GetHerdConversionBreakdown( Domicile.Self )]"
}
text = "VALUE_BREAKDOWN_TEXT_LINK"
tooltip_visible = "[ValueBreakdown.HasTooltip]"
tooltipwidget = {
widget_value_breakdown_tooltip = {}
}
}
spacer = {
size = { 0 15 }
}
cooltip_paragraph = {
visible = "[Character.HasRaisedHorde]"
text = "DOMICILE_HERD_ALREADY_RAISED"
}
cooltip_paragraph = {
visible = "[Not( Character.HasRaisedHorde )]"
text = "DOMICILE_HERD_HERD_TO_RAISE"
}
}
}
}
}
}