-
Notifications
You must be signed in to change notification settings - Fork 20
/
SpellActivationOverlay.xml
141 lines (141 loc) · 6.51 KB
/
SpellActivationOverlay.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
<Ui xmlns="http://www.blizzard.com/wow/ui/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.blizzard.com/wow/ui/
..\FrameXML\UI.xsd">
<Script file="SpellActivationOverlay.lua"/>
<Frame name="SpellActivationOverlayTemplate" virtual="true">
<Animations>
<AnimationGroup name="$parentAnimIn" parentKey="animIn">
<Alpha fromAlpha="0" toAlpha="0.5" duration="0.1" order="1" parentKey="alpha1">
<!-- Split alpha animation in 2 steps , whose goal in to plug in a function to circumvent a bug with pulse animations -->
<!-- If this script is not called slightly early (0.1 secs in, instead of 0.2 sec), starting the pulse may cause a weird flash -->
<Scripts>
<OnFinished function="SpellActivationOverlayTexture_PreStartPulse"/>
</Scripts>
</Alpha>
<Alpha fromAlpha="0.5" toAlpha="1" duration="0.1" order="2" parentKey="alpha2"/>
<Scripts>
<OnPlay function="SpellActivationOverlayTexture_OnFadeInPlay"/>
<OnFinished function="SpellActivationOverlayTexture_OnFadeInFinished"/>
</Scripts>
</AnimationGroup>
<AnimationGroup name="$parentAnimOut" parentKey="animOut">
<Alpha fromAlpha="1" toAlpha="0" duration="0.1">
<Scripts>
<OnFinished function="SpellActivationOverlayTexture_OnFadeOutFinished"/>
</Scripts>
</Alpha>
</AnimationGroup>
<AnimationGroup name="$parentPulse" looping="REPEAT" parentKey="pulse">
<Scale scaleX="1.08" scaleY="1.08" duration="0.5" smoothing="IN_OUT" order="1"/>
<Scale scaleX="0.9259" scaleY="0.9259" duration="0.5" smoothing="IN_OUT" order="2"/>
</AnimationGroup>
</Animations>
<Layers>
<Layer level="ARTWORK">
<Texture parentKey="texture" setAllPoints="true"/>
<MaskTexture parentKey="mask" file="Interface/Addons/SpellActivationOverlay/textures/mask" hWrapMode="CLAMP" vWrapMode="CLAMP">
<!-- Mask for shrinking effect -->
<Size x="256" y="256"/><!-- Must match, or be quivalent to, overlay size -->
<Anchors>
<Anchor point="CENTER" relativeKey="$parent.texture" relativePoint="CENTER"/>
</Anchors>
<MaskedTextures>
<MaskedTexture childKey="texture"/>
</MaskedTextures>
<Animations>
<AnimationGroup name="$parentAnimTimeoutX" parentKey="timeoutX">
<Scale scaleX="0.05" scaleY="1" duration="10" smoothing="IN" parentKey="scaleX" order="1"/>
<Scale scaleX="0.01" scaleY="0.01" duration="0.1" smoothing="NONE" order="2"/>
<Scripts>
<OnFinished function="SpellActivationOverlayFrame_OnTimeoutFinished"/>
</Scripts>
</AnimationGroup>
<AnimationGroup name="$parentAnimTimeoutY" parentKey="timeoutY">
<Scale scaleX="1" scaleY="0.05" duration="10" smoothing="IN" parentKey="scaleY" order="1"/>
<Scale scaleX="0.01" scaleY="0.01" duration="0.1" smoothing="NONE" order="2"/>
<Scripts>
<OnFinished function="SpellActivationOverlayFrame_OnTimeoutFinished"/>
</Scripts>
</AnimationGroup>
<AnimationGroup name="$parentAnimTimeoutXY" parentKey="timeoutXY">
<Scale scaleX="0.05" scaleY="0.05" duration="10" smoothing="IN" parentKey="scaleXY" order="1"/>
<Scale scaleX="0.01" scaleY="0.01" duration="0.1" smoothing="NONE" order="2"/>
<Scripts>
<OnFinished function="SpellActivationOverlayFrame_OnTimeoutFinished"/>
</Scripts>
</AnimationGroup>
</Animations>
</MaskTexture>
<MaskTexture parentKey="combat" file="Interface/Addons/SpellActivationOverlay/textures/maskzero" hWrapMode="CLAMP" vWrapMode="CLAMP">
<!-- Mask for out-of-combat fade-out, used by infinite overlays registered as 'combat-only' auras -->
<!-- This mask is *not* used for non-combat-only auras, because such auras are intended to be visible out of combat -->
<Size x="256" y="256"/><!-- Must match, or be quivalent to, overlay size -->
<Anchors>
<Anchor point="CENTER" relativeKey="$parent.texture" relativePoint="CENTER"/>
</Anchors>
<MaskedTextures>
<MaskedTexture childKey="texture"/>
</MaskedTextures>
<Animations>
<AnimationGroup name="$parentCombatAnimIn" parentKey="animIn">
<Translation duration="0.01" order="1" offsetX="0" offsetY="0" parentKey="point1">
<Scripts>
<OnPlay function="SpellActivationOverlayTexture_OnCombatAnimInPlay"/>
<OnFinished function="SpellActivationOverlayTexture_OnCombatAnimInFinished"/>
<OnStop function="SpellActivationOverlayTexture_OnCombatAnimInStop"/>
</Scripts>
</Translation>
<Translation duration="0.99" order="2" offsetX="0" offsetY="0" parentKey="point2"/>
</AnimationGroup>
<AnimationGroup name="$parentCombatAnimOut" parentKey="animOut">
<Translation duration="5" order="1" offsetX="0" offsetY="0" parentKey="point1">
<Scripts>
<OnPlay function="SpellActivationOverlayTexture_OnCombatAnimOutPlay"/>
</Scripts>
</Translation>
<Translation duration="25" order="2" offsetX="0" offsetY="0" parentKey="point2"/>
</AnimationGroup>
</Animations>
</MaskTexture>
</Layer>
</Layers>
<Scripts>
<OnShow function="SpellActivationOverlayTexture_OnShow"/>
</Scripts>
</Frame>
<Frame name="SpellActivationOverlayContainerFrame" parent="UIParent">
<Size x="256" y="256"/>
<Anchors>
<Anchor point="CENTER"/>
</Anchors>
<Frames>
<Frame name="SpellActivationOverlayFrame" alpha="0.5">
<Anchors>
<Anchor point="TOPLEFT"/>
<Anchor point="BOTTOMRIGHT"/>
</Anchors>
<Animations>
<AnimationGroup name="$parentEnteringCombatAnim" parentKey="combatAnimIn" setToFinalAlpha="true">
<Alpha order="1" duration="0.1" fromAlpha="0.5" toAlpha="1"/>
<Alpha order="2" duration="4.9" fromAlpha="1" toAlpha="1"/>
<Scripts>
<OnPlay function="SpellActivationOverlayFrame_OnEnterCombat"/>
<OnFinished function="SpellActivationOverlayFrame_OnFadeInFinished"/>
</Scripts>
</AnimationGroup>
<AnimationGroup name="$parentLeavingCombatAnim" parentKey="combatAnimOut" setToFinalAlpha="true">
<Alpha order="1" duration="0.2" fromAlpha="1" toAlpha="0.5"/>
<Alpha order="2" duration="27.8" fromAlpha="0.5" toAlpha="0.5"/>
<Alpha order="3" duration="2" fromAlpha="0.5" toAlpha="0"/>
<Scripts>
<OnPlay function="SpellActivationOverlayFrame_OnLeaveCombat"/>
</Scripts>
</AnimationGroup>
</Animations>
<Scripts>
<OnLoad function="SpellActivationOverlay_OnLoad"/>
<OnEvent function="SpellActivationOverlay_OnEvent"/>
</Scripts>
</Frame>
</Frames>
</Frame>
</Ui>