Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ DrawMana()

void Terraria.GameContent.UI.ResourceSets.ClassicPlayerResourcesDisplaySet.DrawMana ( )
inlineprivate

Definition at line 126 of file ClassicPlayerResourcesDisplaySet.cs.

127 {
128 Player localPlayer = Main.LocalPlayer;
129 SpriteBatch spriteBatch = Main.spriteBatch;
130 Color color = new Color(Main.mouseTextColor, Main.mouseTextColor, Main.mouseTextColor, Main.mouseTextColor);
132 if (localPlayer.ghost || localPlayer.statManaMax2 <= 0)
133 {
134 return;
135 }
136 _ = localPlayer.statManaMax2 / 20;
137 Vector2 vector = FontAssets.MouseText.Value.MeasureString(Lang.inter[2].Value);
138 int num = 50;
139 if (vector.X >= 45f)
140 {
141 num = (int)vector.X + 5;
142 }
143 DynamicSpriteFontExtensionMethods.DrawString(spriteBatch, FontAssets.MouseText.Value, Lang.inter[2].Value, new Vector2(800 - num + UI_ScreenAnchorX, 6f), color, 0f, default(Vector2), 1f, SpriteEffects.None, 0f);
144 for (int i = 1; i < localPlayer.statManaMax2 / UIDisplay_ManaPerStar + 1; i++)
145 {
146 int num2 = 255;
147 bool flag = false;
148 float num3 = 1f;
149 if (localPlayer.statMana >= i * UIDisplay_ManaPerStar)
150 {
151 num2 = 255;
152 if (localPlayer.statMana == i * UIDisplay_ManaPerStar)
153 {
154 flag = true;
155 }
156 }
157 else
158 {
159 float num4 = (float)(localPlayer.statMana - (i - 1) * UIDisplay_ManaPerStar) / (float)UIDisplay_ManaPerStar;
160 num2 = (int)(30f + 225f * num4);
161 if (num2 < 30)
162 {
163 num2 = 30;
164 }
165 num3 = num4 / 4f + 0.75f;
166 if ((double)num3 < 0.75)
167 {
168 num3 = 0.75f;
169 }
170 if (num4 > 0f)
171 {
172 flag = true;
173 }
174 }
175 if (flag)
176 {
177 num3 += Main.cursorScale - 1f;
178 }
179 int a = (int)((double)num2 * 0.9);
180 spriteBatch.Draw(TextureAssets.Mana.Value, new Vector2(775 + UI_ScreenAnchorX, (float)(30 + TextureAssets.Mana.Height() / 2) + ((float)TextureAssets.Mana.Height() - (float)TextureAssets.Mana.Height() * num3) / 2f + (float)(28 * (i - 1))), new Rectangle(0, 0, TextureAssets.Mana.Width(), TextureAssets.Mana.Height()), new Color(num2, num2, num2, a), 0f, new Vector2(TextureAssets.Mana.Width() / 2, TextureAssets.Mana.Height() / 2), num3, SpriteEffects.None, 0f);
181 }
182 }
void Draw(Texture2D texture, Vector2 position, Color color)
static void DrawString(this SpriteBatch spriteBatch, DynamicSpriteFont spriteFont, string text, Vector2 position, Color color)

References Microsoft.Xna.Framework.Graphics.Color, Microsoft.Xna.Framework.Graphics.SpriteBatch.Draw(), ReLogic.Graphics.DynamicSpriteFontExtensionMethods.DrawString(), Terraria.Player.ghost, Terraria.Lang.inter, Terraria.Main.LocalPlayer, Terraria.GameContent.TextureAssets.Mana, Terraria.GameContent.FontAssets.MouseText, Terraria.Main.mouseTextColor, Terraria.Main.spriteBatch, Terraria.Player.statMana, Terraria.Player.statManaMax2, Terraria.GameContent.UI.ResourceSets.ClassicPlayerResourcesDisplaySet.UI_ScreenAnchorX, Terraria.GameContent.UI.ResourceSets.ClassicPlayerResourcesDisplaySet.UIDisplay_ManaPerStar, Microsoft.Xna.Framework.Graphics.Vector2, and Microsoft.Xna.Framework.Vector2.X.

Referenced by Terraria.GameContent.UI.ResourceSets.ClassicPlayerResourcesDisplaySet.Draw().