@@ -49,67 +49,128 @@
 
 	<Frame name="EclipseBarFrame" parent="PlayerFrame" frameStrata="LOW" toplevel="true" hidden="true">
 		<Animations>
+			<AnimationGroup looping="REPEAT" parentKey="pulse">
+				<Scale target="$parentGlow" scaleX="1.08" scaleY="1.08" duration="0.5" smoothing="IN_OUT" order="1"/>
+				<Scale target="$parentGlow" scaleX="0.9259" scaleY="0.9259" duration="0.5" smoothing="IN_OUT" order="2"/>
+			</AnimationGroup>
 			<AnimationGroup parentKey="sunActivate">
 				<Alpha target="$parentSunBar" 		change="1" duration="0.6" order="1"/>
-				<Alpha target="$parentGlow" 			change="1" duration="0.6" order="1"/>
+				<Alpha target="$parentGlow" 		change="1" duration="0.6" order="1"/>
 				<Alpha target="$parentDarkMoon" 	change="1" duration="0.6" order="1"/>
 				<Scripts>
 					<OnPlay>
-						self:GetParent().moonBar:SetAlpha(0);
-						self:GetParent().darkSun:SetAlpha(0);
+						self:GetParent().MoonBar:SetAlpha(0);
+						self:GetParent().DarkSun:SetAlpha(0);
 					</OnPlay>
 					<OnFinished>
-						self:GetParent().sunBar:SetAlpha(1);
-						self:GetParent().glow:SetAlpha(1);
-						self:GetParent().darkMoon:SetAlpha(1);
-						self:GetParent().glow.pulse:Play();
+						self:GetParent().SunBar:SetAlpha(1);
+						self:GetParent().Glow:SetAlpha(1);
+						self:GetParent().DarkMoon:SetAlpha(1);
+						self:GetParent().MoonCover:SetAlpha(1);
+						self:GetParent().pulse:Play();
 					</OnFinished>
 				</Scripts>
 			</AnimationGroup>
 			<AnimationGroup parentKey="sunDeactivate">
-				<Alpha target="$parentSunBar" 		change="-1" duration="0.6" order="1"/>
-				<Alpha target="$parentGlow" 			change="-1" duration="0.6" order="1"/>
-				<Alpha target="$parentDarkMoon" 	change="-1" duration="0.6" order="1"/>
+				<Alpha target="$parentSunBar"		change="-1" duration="2" order="1"/>
+				<Alpha target="$parentGlow" 		change="-1" duration="2" order="1"/>
+				<Alpha target="$parentDarkMoon"		change="-1" duration="2" order="1"/>
+				<Alpha target="$parentMoonCover"	change="-1" duration="2" order="1"/>
 				<Scripts>
 					<OnPlay>
-						self:GetParent().glow.pulse:Stop();
+						self:GetParent().pulse:Stop();
 					</OnPlay>
 					<OnFinished>
-						self:GetParent().sunBar:SetAlpha(0);
-						self:GetParent().glow:SetAlpha(0);
-						self:GetParent().darkMoon:SetAlpha(0);
+						self:GetParent().SunBar:SetAlpha(0);
+						self:GetParent().Glow:SetAlpha(0);
+						self:GetParent().DarkMoon:SetAlpha(0);
+						self:GetParent().MoonCover:SetAlpha(0);
+					</OnFinished>
+				</Scripts>
+			</AnimationGroup>
+			<AnimationGroup parentKey="switchToSun">
+				<Alpha target="$parentMoonBar"		change="-1" duration="0.5" order="1"/>
+				<Alpha target="$parentGlow" 		change="-1" duration="0.5" order="1"/>
+				<Alpha target="$parentDarkSun"		change="-1" duration="0.5" order="1"/>
+				<Alpha target="$parentSunCover"		change="-1" duration="0.5" order="1"/>
+				<Alpha target="$parentSunBar" 		change="1" duration="0.5" order="2"/>
+				<Alpha target="$parentGlow" 		change="1" duration="0.5" order="2"/>
+				<Alpha target="$parentDarkMoon" 	change="1" duration="0.5" order="2"/>
+				<Alpha target="$parentMoonCover"	change="1" duration="0.5" order="2"/>
+				<Scripts>
+					<OnPlay>
+						self:GetParent().Glow:SetAlpha(0);
+						self:GetParent().MoonCover:SetAlpha(0);
+					</OnPlay>
+					<OnFinished>
+						self:GetParent().MoonBar:SetAlpha(0);
+						self:GetParent().DarkSun:SetAlpha(0);
+						self:GetParent().SunCover:SetAlpha(0);
+						self:GetParent().SunBar:SetAlpha(1);
+						self:GetParent().Glow:SetAlpha(1);
+						self:GetParent().DarkMoon:SetAlpha(1);
+						self:GetParent().MoonCover:SetAlpha(1);
+						self:GetParent().pulse:Play();
 					</OnFinished>
 				</Scripts>
 			</AnimationGroup>
 			<AnimationGroup parentKey="moonActivate">
 				<Alpha target="$parentMoonBar" 	change="1" duration="0.6" order="1"/>
-				<Alpha target="$parentGlow" 		change="1" duration="0.6" order="1"/>
+				<Alpha target="$parentGlow" 	change="1" duration="0.6" order="1"/>
 				<Alpha target="$parentDarkSun" 	change="1" duration="0.6" order="1"/>
 				<Scripts>
 					<OnPlay>
-						self:GetParent().sunBar:SetAlpha(0);
-						self:GetParent().darkMoon:SetAlpha(0);
+						self:GetParent().SunBar:SetAlpha(0);
+						self:GetParent().DarkMoon:SetAlpha(0);
 					</OnPlay>
 					<OnFinished>
-						self:GetParent().moonBar:SetAlpha(1);
-						self:GetParent().glow:SetAlpha(1);
-						self:GetParent().darkSun:SetAlpha(1);
-						self:GetParent().glow.pulse:Play();
+						self:GetParent().MoonBar:SetAlpha(1);
+						self:GetParent().Glow:SetAlpha(1);
+						self:GetParent().DarkSun:SetAlpha(1);
+						self:GetParent().SunCover:SetAlpha(1);
+						self:GetParent().pulse:Play();
 					</OnFinished>
 				</Scripts>
 			</AnimationGroup>
 			<AnimationGroup parentKey="moonDeactivate">
-				<Alpha target="$parentMoonBar" 	change="-1" duration="0.6" order="1"/>
-				<Alpha target="$parentGlow" 		change="-1" duration="0.6" order="1"/>
-				<Alpha target="$parentDarkSun" 	change="-1" duration="0.6" order="1"/>
+				<Alpha target="$parentMoonBar" 	change="-1" duration="2" order="1"/>
+				<Alpha target="$parentGlow" 	change="-1" duration="2" order="1"/>
+				<Alpha target="$parentDarkSun" 	change="-1" duration="2" order="1"/>
+				<Alpha target="$parentSunCover" change="-1" duration="2" order="1"/>
+				<Scripts>
+					<OnPlay>
+						self:GetParent().pulse:Stop();
+					</OnPlay>
+					<OnFinished>
+						self:GetParent().MoonBar:SetAlpha(0);
+						self:GetParent().Glow:SetAlpha(0);
+						self:GetParent().DarkSun:SetAlpha(0);
+						self:GetParent().SunCover:SetAlpha(0);
+					</OnFinished>
+				</Scripts>
+			</AnimationGroup>
+			<AnimationGroup parentKey="switchToMoon">
+				<Alpha target="$parentSunBar"		change="-1" duration="0.5" order="1"/>
+				<Alpha target="$parentDarkMoon"		change="-1" duration="0.5" order="1"/>
+				<Alpha target="$parentMoonCover"		change="-1" duration="0.5" order="1"/>
+				<Alpha target="$parentMoonBar" 		change="1" duration="0.5" order="2"/>
+				<Alpha target="$parentGlow" 		change="1" duration="0.5" order="2"/>
+				<Alpha target="$parentDarkSun" 	change="1" duration="0.5" order="2"/>
+				<Alpha target="$parentSunCover"	change="1" duration="0.5" order="2"/>
 				<Scripts>
 					<OnPlay>
-						self:GetParent().glow.pulse:Stop();
+						self:GetParent().Glow:SetAlpha(0);
+						self:GetParent().SunCover:SetAlpha(0);
 					</OnPlay>
 					<OnFinished>
-						self:GetParent().moonBar:SetAlpha(0);
-						self:GetParent().glow:SetAlpha(0);
-						self:GetParent().darkSun:SetAlpha(0);
+						self:GetParent().SunBar:SetAlpha(0);
+						self:GetParent().DarkMoon:SetAlpha(0);
+						self:GetParent().MoonCover:SetAlpha(0);
+						self:GetParent().MoonBar:SetAlpha(1);
+						self:GetParent().Glow:SetAlpha(1);
+						self:GetParent().DarkSun:SetAlpha(1);
+						self:GetParent().SunCover:SetAlpha(1);
+						self:GetParent().pulse:Play();
 					</OnFinished>
 				</Scripts>
 			</AnimationGroup>
@@ -127,84 +188,73 @@
 		</HitRectInsets>
 		<Layers>
 			<Layer level="ARTWORK">
-				<Texture name="$parentBar" file="Interface\PlayerFrame\UI-DruidEclipse">
-					<Size x="140" y="38"/>
+				<Texture name="$parentBar" atlas="DruidEclipse-BaseBar" useAtlasSize="true">
 					<Anchors>
 						<Anchor point="CENTER"/>
 					</Anchors>
-					<TexCoords left="0.00390625" right="0.55078125" top="0.63281250" bottom="0.92968750"/>
 				</Texture>
 			</Layer>
 			<Layer level="BACKGROUND">
-				<Texture name="$parentSun" file="Interface\PlayerFrame\UI-DruidEclipse" parentKey="sun">
-					<Size x="23" y="23"/>
+				<Texture parentKey="Sun" name="$parentSun" atlas="DruidEclipse-BaseSun" useAtlasSize="true">
 					<Anchors>
 						<Anchor point="CENTER" relativeTo="$parentBar"  relativePoint="RIGHT" x="-17" y="1"/>
 					</Anchors>
-					<TexCoords left="0.65625000" right="0.74609375" top="0.37500000" bottom="0.55468750"/>
 				</Texture>
-				<Texture name="$parentMoon" file="Interface\PlayerFrame\UI-DruidEclipse" parentKey="moon">
-					<Size x="23" y="23"/>
+				<Texture parentKey="Moon" name="$parentMoon" atlas="DruidEclipse-BaseMoon" useAtlasSize="true">
 					<Anchors>
 						<Anchor point="CENTER" relativeTo="$parentBar" relativePoint="LEFT" x="17" y="1"/>
 					</Anchors>
-					<TexCoords left="0.55859375" right="0.64843750" top="0.57031250" bottom="0.75000000"/>
 				</Texture>
 			</Layer>
 			<Layer level="BACKGROUND" textureSubLevel="1">
-				<Texture name="$parentDarkSun" file="Interface\PlayerFrame\UI-DruidEclipse" parentKey="darkSun">
-					<Size x="23" y="23"/>
+				<Texture parentKey="DarkSun" name="$parentDarkSun" atlas="DruidEclipse-LunarSun" useAtlasSize="true">
 					<Anchors>
 						<Anchor point="CENTER" relativeTo="$parentSun"/>
 					</Anchors>
-					<TexCoords left="0.55859375" right="0.64843750" top="0.76562500" bottom="0.94531250"/>
 				</Texture>
-				<Texture name="$parentDarkMoon" file="Interface\PlayerFrame\UI-DruidEclipse" parentKey="darkMoon">
-					<Size x="23" y="23"/>
+				<Texture parentKey="DarkMoon" name="$parentDarkMoon" atlas="DruidEclipse-SolarMoon" useAtlasSize="true">
 					<Anchors>
 						<Anchor point="CENTER" relativeTo="$parentMoon"/>
 					</Anchors>
-					<TexCoords left="0.55859375" right="0.64843750" top="0.37500000" bottom="0.55468750"/>
 				</Texture>
 			</Layer>
 			<Layer level="ARTWORK" textureSubLevel="1">
-				<Texture name="$parentSunBar" file="Interface\PlayerFrame\UI-DruidEclipse" parentKey="sunBar">
-					<Size x="140" y="38"/>
+				<Texture parentKey="SunBar" name="$parentSunBar" atlas="DruidEclipse-SolarBar" useAtlasSize="true">
 					<Anchors>
-						<Anchor point="CENTER"/>
+						<Anchor point="CENTER" x="15"/>
 					</Anchors>
-					<TexCoords left="0.00390625" right="0.55078125" top="0.32031250" bottom="0.61718750"/>
 				</Texture>
-				<Texture name="$parentMoonBar" file="Interface\PlayerFrame\UI-DruidEclipse" parentKey="moonBar">
-					<Size x="140" y="38"/>
+				<Texture parentKey="MoonBar" name="$parentMoonBar" atlas="DruidEclipse-LunarBar" useAtlasSize="true">
 					<Anchors>
-						<Anchor point="CENTER"/>
+						<Anchor point="CENTER" x="-15"/>
+					</Anchors>
+				</Texture>
+			</Layer>
+			<Layer level="OVERLAY" textureSubLevel="-1">
+				<Texture parentKey="MoonCover" name="$parentMoonCover" atlas="DruidEclipse-SolarCover" useAtlasSize="true" hidden="true">
+					<Anchors>
+						<Anchor point="LEFT" x="20" y="1"/>
+					</Anchors>
+				</Texture>
+				<Texture parentKey="SunCover" name="$parentSunCover" atlas="DruidEclipse-LunarCover" useAtlasSize="true" hidden="true">
+					<Anchors>
+						<Anchor point="RIGHT" x="-30"/>
 					</Anchors>
-					<TexCoords left="0.00390625" right="0.55078125" top="0.00781250" bottom="0.30468750"/>
 				</Texture>
 			</Layer>
 			<Layer level="OVERLAY">
-				<Texture name="$parentMarker" file="Interface\PlayerFrame\UI-DruidEclipse" parentKey="marker" alphaMode="ADD">
-					<Size x="20" y="20"/>
+				<Texture parentKey="Marker" name="$parentMarker" atlas="DruidEclipse-Arrow" useAtlasSize="true" alphaMode="ADD">
 					<Anchors>
 						<Anchor point="CENTER" y="2"/>
 					</Anchors>
-					<TexCoords left="1.0" right="0.914" top="0.82" bottom="1.0"/>
 				</Texture>
-				<Texture name="$parentGlow" file="Interface\PlayerFrame\UI-DruidEclipse" parentKey="glow" >
-					<Animations>
-						<AnimationGroup 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>
+				<Texture parentKey="Glow" name="$parentGlow" atlas="DruidEclipse-SolarSun">
 					<Size x="43" y="45"/>
 					<Anchors>
 						<Anchor point="CENTER"/>
 					</Anchors>
-					<TexCoords left="0.55859375" right="0.72656250" top="0.00781250" bottom="0.35937500"/>
 				</Texture>
-				<FontString name="$parentPowertext" inherits="TextStatusBarText" parentKey="powerText" hidden="true">
+				<FontString name="$parentPowertext" inherits="TextStatusBarText" justifyH="CENTER" parentKey="PowerText" hidden="true">
 					<Anchors>
 						<Anchor point="CENTER" x="0" y="0"/>
 					</Anchors>
@@ -213,7 +263,7 @@
 		</Layers>
 		<Scripts>
 			<OnEnter>
-				self.powerText:Show();
+				self.PowerText:Show();
 				GameTooltip_SetDefaultAnchor(GameTooltip, self);
 				GameTooltip:SetText(BALANCE, 1, 1, 1);
 				GameTooltip:AddLine(BALANCE_TOOLTIP, nil, nil, nil, true);
@@ -221,7 +271,7 @@
 			</OnEnter>
 			<OnLeave>
 				if not self.lockShow then
-					self.powerText:Hide();
+					self.PowerText:Hide();
 				end
 				GameTooltip:Hide();
 			</OnLeave>