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

◆ DrawPlayer_05_ForbiddenSetRing()

static void Terraria.DataStructures.PlayerDrawLayers.DrawPlayer_05_ForbiddenSetRing ( ref PlayerDrawSet drawinfo)
inlinestatic

Definition at line 219 of file PlayerDrawLayers.cs.

220 {
221 if (drawinfo.drawPlayer.setForbidden && drawinfo.shadow == 0f)
222 {
223 Color color = Color.Lerp(drawinfo.colorArmorBody, Color.White, 0.7f);
226 bool num = !drawinfo.drawPlayer.setForbiddenCooldownLocked;
227 int num2 = 0;
228 num2 = (int)(((float)drawinfo.drawPlayer.miscCounter / 300f * ((float)Math.PI * 2f)).ToRotationVector2().Y * 6f);
229 float num3 = ((float)drawinfo.drawPlayer.miscCounter / 75f * ((float)Math.PI * 2f)).ToRotationVector2().X * 4f;
230 Color color2 = new Color(80, 70, 40, 0) * (num3 / 8f + 0.5f) * 0.8f;
231 if (!num)
232 {
233 num2 = 0;
234 num3 = 2f;
235 color2 = new Color(80, 70, 40, 0) * 0.3f;
236 color = color.MultiplyRGB(new Color(0.5f, 0.5f, 1f));
237 }
238 Vector2 vector = new Vector2((int)(drawinfo.Position.X - Main.screenPosition.X - (float)(drawinfo.drawPlayer.bodyFrame.Width / 2) + (float)(drawinfo.drawPlayer.width / 2)), (int)(drawinfo.Position.Y - Main.screenPosition.Y + (float)drawinfo.drawPlayer.height - (float)drawinfo.drawPlayer.bodyFrame.Height + 4f)) + drawinfo.drawPlayer.bodyPosition + new Vector2(drawinfo.drawPlayer.bodyFrame.Width / 2, drawinfo.drawPlayer.bodyFrame.Height / 2);
239 int num4 = 10;
240 int num5 = 20;
241 if (drawinfo.drawPlayer.head == 238)
242 {
243 num4 += 4;
244 num5 += 4;
245 }
246 vector += new Vector2(-drawinfo.drawPlayer.direction * num4, (float)(-num5) * drawinfo.drawPlayer.gravDir + (float)num2 * drawinfo.drawPlayer.gravDir);
247 DrawData item = new DrawData(value, vector, null, color, drawinfo.drawPlayer.bodyRotation, value.Size() / 2f, 1f, drawinfo.playerEffect);
248 item.shader = drawinfo.cBody;
249 drawinfo.DrawDataCache.Add(item);
250 for (float num6 = 0f; num6 < 4f; num6 += 1f)
251 {
252 item = new DrawData(value2, vector + (num6 * ((float)Math.PI / 2f)).ToRotationVector2() * num3, null, color2, drawinfo.drawPlayer.bodyRotation, value.Size() / 2f, 1f, drawinfo.playerEffect);
253 drawinfo.DrawDataCache.Add(item);
254 }
255 }
256 }
void Add(TKey key, TValue value)
const double PI
Definition Math.cs:16
static Asset< Texture2D >[] GlowMask
static Asset< Texture2D >[] Extra
static Color Lerp(Color value1, Color value2, float amount)
Definition Color.cs:491

References System.Collections.Generic.Dictionary< TKey, TValue >.Add(), Microsoft.Xna.Framework.Graphics.Color, Terraria.GameContent.TextureAssets.Extra, Terraria.GameContent.TextureAssets.GlowMask, System.item, Microsoft.Xna.Framework.Color.Lerp(), System.Math.PI, Terraria.Main.screenPosition, System.value, Microsoft.Xna.Framework.Graphics.Vector2, and Microsoft.Xna.Framework.Color.White.

Referenced by Terraria.Graphics.Renderers.LegacyPlayerRenderer.DrawPlayer_UseNormalLayers().