com.cupkekgames.textpopup — backend-agnostic floating-text popup contracts (damage / heal / shield / status numbers and freeform text). Pair with a bridge package (e.g. com.cupkekgames.textpopup.damagenumberspro) for a concrete implementation.
A single entry point dispatches every popup:
popupManager.Show(PopupKinds.Damage, hitPoint, damageAmount, new DamagePopupContext { IsCrit = isCrit });
popupManager.Show(PopupKinds.Heal, healerPos, healAmount);
popupManager.Show(PopupKinds.StatusNegative, target.position, 0, new TextPopupContext { LeftText = "STUN" });Kinds are open string keys. Reserved ones (Damage, DamageWeak, DamageStrong, Heal, Shield, StatusPositive, StatusNegative) live in PopupKinds; domain games add new kinds (Block, Miss, Counter, …) by registering (kind, prefab) entries on the bridge adapter. PopupKinds.DamageVariant(elementMultiplier) is a helper that maps a damage multiplier to the right Damage* kind for elemental hits.
Per-call extras go through IPopupContext. Two standard contexts ship:
DamagePopupContext { IsCrit } — toggles the kind's authored crit prefix (e.g. ★-99).TextPopupContext { LeftText } — overrides the kind's default left text on a single call (used by status effects to show the effect name).Bridges pattern-match the contexts they care about; unknown contexts are ignored.
IPopupManager — kind-driven dispatch contract. Show(kind, center, value, context) / SetScaleMaxValue(maxValue).IPopupContext + DamagePopupContext + TextPopupContext — per-call extras.PopupKinds — reserved kind constants (open catalog) + DamageVariant helper.CupkekGames.TextPopup (runtime).
None.
com.cupkekgames.textpopup.damagenumberspro — DamageNumbersPro asset adapterSettings
Theme
Light
Contrast
Material
Dark
Dim
Material Dark
System
Sidebar(Light & Contrast only)
Font Family
DM Sans
Wix
Inclusive Sans
AR One Sans
Direction