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

◆ DrawWOFTongueToPlayer()

static void Terraria.Main.DrawWOFTongueToPlayer ( int i)
inlinestaticprivate

Definition at line 35145 of file Main.cs.

35146 {
35147 float num = npc[wofNPCIndex].position.X + (float)(npc[wofNPCIndex].width / 2);
35148 float num2 = npc[wofNPCIndex].position.Y + (float)(npc[wofNPCIndex].height / 2);
35149 Vector2 vector = new Vector2(player[i].position.X + (float)player[i].width * 0.5f, player[i].position.Y + (float)player[i].height * 0.5f);
35150 float num3 = num - vector.X;
35151 float num4 = num2 - vector.Y;
35152 float rotation = (float)Math.Atan2(num4, num3) - 1.57f;
35153 bool flag = true;
35154 while (flag)
35155 {
35156 float num5 = (float)Math.Sqrt(num3 * num3 + num4 * num4);
35157 if (num5 < 40f)
35158 {
35159 flag = false;
35160 continue;
35161 }
35162 num5 = (float)TextureAssets.Chain12.Height() / num5;
35163 num3 *= num5;
35164 num4 *= num5;
35165 vector.X += num3;
35166 vector.Y += num4;
35167 num3 = num - vector.X;
35168 num4 = num2 - vector.Y;
35169 Microsoft.Xna.Framework.Color color = Lighting.GetColor((int)vector.X / 16, (int)(vector.Y / 16f));
35170 spriteBatch.Draw(TextureAssets.Chain12.Value, new Vector2(vector.X - screenPosition.X, vector.Y - screenPosition.Y), new Microsoft.Xna.Framework.Rectangle(0, 0, TextureAssets.Chain12.Width(), TextureAssets.Chain12.Height()), color, rotation, new Vector2((float)TextureAssets.Chain12.Width() * 0.5f, (float)TextureAssets.Chain12.Height() * 0.5f), 1f, SpriteEffects.None, 0f);
35171 }
35172 }
static double Atan2(double y, double x)
static double Sqrt(double d)
static Asset< Texture2D > Chain12
static SpriteBatch spriteBatch
Definition Main.cs:974
static int wofNPCIndex
Definition Main.cs:828
static Vector2 screenPosition
Definition Main.cs:1715
static NPC[] npc
Definition Main.cs:1685
static Player[] player
Definition Main.cs:1803

References System.Math.Atan2(), Terraria.GameContent.TextureAssets.Chain12, Terraria.Lighting.GetColor(), System.Text.RegularExpressions.i, Terraria.Main.npc, Terraria.Main.player, Terraria.Main.screenPosition, Terraria.Main.spriteBatch, System.Math.Sqrt(), Microsoft.Xna.Framework.Graphics.Vector2, and Terraria.Main.wofNPCIndex.

Referenced by Terraria.Main.DrawWoF().