Hands-On Usage
has_shine_effect_on_focus is commonly used in focus tree UI logic to determine whether a particular focus is currently highlighted and glowing (whether activated manually by the player or actively being researched), thereby controlling whether to display related tooltips, activate follow-up decisions, or trigger events. A typical scenario is checking in a decision's available block whether the player is already "actively pursuing" a focus, then unlocking the corresponding auxiliary decision.
# In the available block of a decision, only usable when the Soviet Union is actively highlighting this focus
available = {
tag = SOV
has_shine_effect_on_focus = SOV_collectivization_drive
}
Synergy
[activate_shine_on_focus](/wiki/effect/activate_shine_on_focus) — The most direct companion: use this effect to manually activate a focus's glow effect, then use has_shine_effect_on_focus to verify the effect is active, forming a complete "activate → verify" loop.
[deactivate_shine_on_focus](/wiki/effect/deactivate_shine_on_focus) — When used together, enables the logic pattern "turn off highlight when conditions are met"; first verify the effect exists with the trigger, then disable it in the effect block, preventing duplicate operations.
[has_completed_focus](/wiki/trigger/has_completed_focus) — Often written alongside in the same trigger block to distinguish between "focus still in progress (has shine)" and "focus completed" states, avoiding logic overlap.
[activate_decision](/wiki/effect/activate_decision) — When has_shine_effect_on_focus returns true, activate the corresponding decision in the effect block, enabling the linked design of "pursue specific focus → unlock additional options."
Common Pitfalls
- Tooltip only visible in debug mode: The tooltip text for this trigger itself is only visible in debug mode. Newcomers relying on it to convey information to players in officially released mods will find nothing displays on screen—you need to manually wrap it with
custom_trigger_tooltip to specify display text.
- Incorrect scope causes perpetual false returns:
has_shine_effect_on_focus must be called within COUNTRY scope. If mistakenly written in state or character scope (for example, nested inside any_owned_state), the game will not error but the result will always be false, making it extremely difficult to debug.