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

◆ DrawWOFBody()

static void Terraria.Main.DrawWOFBody ( )
inlinestaticprivate

Definition at line 35045 of file Main.cs.

35046 {
35047 int num = TextureAssets.Wof.Height() / 3;
35048 float num2 = wofDrawAreaTop;
35049 float num3 = wofDrawAreaBottom;
35050 num3 = screenPosition.Y + (float)screenHeight;
35051 float num4 = (int)((num2 - screenPosition.Y) / (float)num) + 1;
35052 if (num4 > 12f)
35053 {
35054 return;
35055 }
35056 float num5 = num4 * (float)num;
35057 if (num5 > 0f)
35058 {
35059 num2 -= num5;
35060 }
35061 float num6 = npc[wofNPCIndex].position.X;
35062 if (npc[wofNPCIndex].direction > 0)
35063 {
35064 num6 -= 80f;
35065 }
35066 SpriteEffects effects = SpriteEffects.None;
35067 if (npc[wofNPCIndex].spriteDirection == 1)
35068 {
35069 effects = SpriteEffects.FlipHorizontally;
35070 }
35071 int num7 = wofDrawFrameIndex / 6 * num;
35072 if (!gamePaused && ++wofDrawFrameIndex >= 18)
35073 {
35075 }
35076 float num8 = num3 - num2;
35077 for (int i = (int)num2; (float)i < num3; i += num)
35078 {
35079 num8 = num3 - (float)i;
35080 if (num8 > (float)num)
35081 {
35082 num8 = num;
35083 }
35084 for (int j = 0; (float)j < num8; j += 16)
35085 {
35086 int x = (int)(num6 + (float)(TextureAssets.Wof.Width() / 2)) / 16;
35087 int y = (i + j) / 16;
35088 spriteBatch.Draw(TextureAssets.Wof.Value, new Vector2(num6 - screenPosition.X, (float)(i + j) - screenPosition.Y), new Microsoft.Xna.Framework.Rectangle(0, num7 + j, TextureAssets.Wof.Width(), 16), Lighting.GetColor(x, y), 0f, default(Vector2), 1f, effects, 0f);
35089 }
35090 }
35091 }
static Asset< Texture2D > Wof
static int wofDrawAreaBottom
Definition Main.cs:832
static SpriteBatch spriteBatch
Definition Main.cs:974
static int wofNPCIndex
Definition Main.cs:828
static int screenHeight
Definition Main.cs:1721
static Vector2 screenPosition
Definition Main.cs:1715
static int wofDrawFrameIndex
Definition Main.cs:834
static NPC[] npc
Definition Main.cs:1685
static int wofDrawAreaTop
Definition Main.cs:830
static bool gamePaused
Definition Main.cs:1072

References Terraria.Main.gamePaused, Terraria.Lighting.GetColor(), System.Text.RegularExpressions.i, Terraria.Main.npc, Terraria.Main.screenHeight, Terraria.Main.screenPosition, Terraria.Main.spriteBatch, Terraria.GameContent.TextureAssets.Wof, Terraria.Main.wofDrawAreaBottom, Terraria.Main.wofDrawAreaTop, Terraria.Main.wofDrawFrameIndex, and Terraria.Main.wofNPCIndex.

Referenced by Terraria.Main.DrawWoF().