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

◆ DrawMarkedArea()

void Terraria.Graphics.Capture.CaptureInterface.ModeEdgeSelection.DrawMarkedArea ( SpriteBatch sb)
inlineprivate

Definition at line 117 of file CaptureInterface.cs.

118 {
119 if (!EdgeAPinned || !EdgeBPinned)
120 {
121 return;
122 }
123 int num = Math.Min(EdgeA.X, EdgeB.X);
124 int num2 = Math.Min(EdgeA.Y, EdgeB.Y);
125 int num3 = Math.Abs(EdgeA.X - EdgeB.X);
126 int num4 = Math.Abs(EdgeA.Y - EdgeB.Y);
127 if (!Main.mapFullscreen)
128 {
129 Rectangle value = Main.ReverseGravitySupport(new Rectangle(num * 16, num2 * 16, (num3 + 1) * 16, (num4 + 1) * 16));
130 Rectangle value2 = Main.ReverseGravitySupport(new Rectangle((int)Main.screenPosition.X, (int)Main.screenPosition.Y, Main.screenWidth + 1, Main.screenHeight + 1));
132 if (result.Width != 0 && result.Height != 0)
133 {
134 result.Offset(-value2.X, -value2.Y);
135 sb.Draw(TextureAssets.MagicPixel.Value, result, Settings.MarkedAreaColor);
136 for (int i = 0; i < 2; i++)
137 {
138 sb.Draw(TextureAssets.MagicPixel.Value, new Rectangle(result.X, result.Y + ((i == 1) ? result.Height : (-2)), result.Width, 2), Color.White);
139 sb.Draw(TextureAssets.MagicPixel.Value, new Rectangle(result.X + ((i == 1) ? result.Width : (-2)), result.Y, 2, result.Height), Color.White);
140 }
141 }
142 return;
143 }
144 GetMapCoords(num, num2, 1, out var result2);
145 GetMapCoords(num + num3 + 1, num2 + num4 + 1, 1, out var result3);
147 Rectangle value4 = new Rectangle(0, 0, Main.screenWidth + 1, Main.screenHeight + 1);
149 if (result4.Width != 0 && result4.Height != 0)
150 {
151 result4.Offset(-value4.X, -value4.Y);
152 sb.Draw(TextureAssets.MagicPixel.Value, result4, Settings.MarkedAreaColor);
153 for (int j = 0; j < 2; j++)
154 {
155 sb.Draw(TextureAssets.MagicPixel.Value, new Rectangle(result4.X, result4.Y + ((j == 1) ? result4.Height : (-2)), result4.Width, 2), Color.White);
156 sb.Draw(TextureAssets.MagicPixel.Value, new Rectangle(result4.X + ((j == 1) ? result4.Width : (-2)), result4.Y, 2, result4.Height), Color.White);
157 }
158 }
159 }
void Draw(Texture2D texture, Vector2 position, Color color)
static byte Min(byte val1, byte val2)
Definition Math.cs:912
static double Abs(double value)
static Asset< Texture2D > MagicPixel
static bool GetMapCoords(int PinX, int PinY, int Goal, out Point result)
static Rectangle Intersect(Rectangle value1, Rectangle value2)
Definition Rectangle.cs:143

References System.Math.Abs(), Microsoft.Xna.Framework.Graphics.SpriteBatch.Draw(), Terraria.Graphics.Capture.CaptureInterface.EdgeA, Terraria.Graphics.Capture.CaptureInterface.EdgeAPinned, Terraria.Graphics.Capture.CaptureInterface.EdgeB, Terraria.Graphics.Capture.CaptureInterface.EdgeBPinned, Terraria.Graphics.Capture.CaptureInterface.GetMapCoords(), Microsoft.Xna.Framework.Rectangle.Intersect(), Terraria.GameContent.TextureAssets.MagicPixel, Terraria.Main.mapFullscreen, Terraria.Graphics.Capture.CaptureInterface.Settings.MarkedAreaColor, System.Math.Min(), Terraria.Main.ReverseGravitySupport(), Terraria.Main.screenHeight, Terraria.Main.screenPosition, Terraria.Main.screenWidth, System.value, and Microsoft.Xna.Framework.Color.White.

Referenced by Terraria.Graphics.Capture.CaptureInterface.ModeEdgeSelection.Draw().