Terraria.Mount.DrillSmartCursor C# (CSharp) Method

DrillSmartCursor() private method

private DrillSmartCursor ( Player mountedPlayer, Mount data ) : Point16
mountedPlayer Player
data Mount
return Terraria.DataStructures.Point16
        private Point16 DrillSmartCursor(Player mountedPlayer, Mount.DrillMountData data)
        {
            Vector2 vector2_1 = mountedPlayer.whoAmI != Main.myPlayer ? data.crosshairPosition : Main.screenPosition + new Vector2((float)Main.mouseX, (float)Main.mouseY);
            Vector2 center = mountedPlayer.Center;
            Vector2 vector2_2 = vector2_1 - center;
            float num1 = vector2_2.Length();
            if ((double)num1 > 224.0)
                num1 = 224f;
            float num2 = num1 + 32f;
            vector2_2.Normalize();
            Vector2 start = center;
            Vector2 end = center + vector2_2 * num2;
            Point16 tilePoint = new Point16(-1, -1);
            if (!Utils.PlotTileLine(start, end, 65.6f, (Utils.PerLinePoint)((x, y) =>
            {
                tilePoint = new Point16(x, y);
                for (int index = 0; index < data.beams.Length; ++index)
                {
                    if (data.beams[index].curTileTarget == tilePoint)
                        return true;
                }
                return !WorldGen.CanKillTile(x, y) || Main.tile[x, y] == null || (Main.tile[x, y].inActive() || !Main.tile[x, y].active());
            })))
                return tilePoint;
            return new Point16(-1, -1);
        }