1482 {
1486 {
1491 {
1494 }
1496 {
1497 num = 0;
1499 }
1505 if (
num2 == -1 && num != 0)
1506 {
1508 }
1509 int num4 = (int)((
providedInfo.position.X + (
float)(width / 2) + (
float)((width / 2 - 1) * num)) / 16f);
1510 int num5 = (int)(((
double)providedInfo.position.Y + 0.1) / 16.0);
1512 {
1514 }
1515 int num6 = width / 16 + ((width % 16 != 0) ? 1 : 0);
1516 int num7 = height / 16 + ((height % 16 != 0) ? 1 : 0);
1517 if (num != 0)
1518 {
1519 for (
int i = 0;
i <
num7;
i++)
1520 {
1522 {
1524 }
1525 }
1526 }
1528 {
1529 for (
int j = 0;
j <
num6;
j++)
1530 {
1532 {
1534 }
1535 }
1536 }
1537 int num8 = (int)((
providedInfo.mouse.X + (
float)((width / 2 - 1) * num)) / 16f);
1538 int num9 = (int)(((
double)providedInfo.mouse.Y + 0.1 - (double)(height / 2 + 1)) / 16.0);
1540 {
1542 }
1544 {
1546 }
1548 {
1550 }
1551 if (
num9 > Main.maxTilesY - 10)
1552 {
1553 num9 = Main.maxTilesY - 10;
1554 }
1555 int num10 = width / 16 + ((width % 16 != 0) ? 1 : 0);
1556 int num11 = height / 16 + ((height % 16 != 0) ? 1 : 0);
1557 if (num != 0)
1558 {
1560 {
1562 {
1564 }
1565 }
1566 }
1568 {
1570 {
1571 if (Main.tile[(
int)((
providedInfo.mouse.X - (
float)(width / 2)) / 16f) +
l,
num9] !=
null)
1572 {
1574 }
1575 }
1576 }
1579 {
1584 {
1587 continue;
1588 }
1590 {
1592 }
1594 if (Collision.HitWallSubstep(
tuple3.Item1,
tuple3.Item2))
1595 {
1597 }
1600 }
1602 {
1606 {
1608 {
1611 {
1614 }
1615 }
1616 }
1618 {
1619 providedInfo.player.poundRelease = false;
1622 }
1623 }
1627 }
1629 {
1630 return;
1631 }
1634 {
1636 {
1637 if (Main.tile[
n,
num14].wall > 0 && Collision.HitWallSubstep(
n,
num14))
1638 {
1640 }
1641 }
1642 }
1644 {
1648 {
1650 {
1653 {
1656 }
1657 }
1658 }
1660 {
1661 providedInfo.player.poundRelease = false;
1664 }
1665 }
1667 }
static double Abs(double value)
static int Sign(decimal value)
static List< Tuple< int, int > > _endpoints
static List< Tuple< int, int > > _targets
static List< Tuple< int, int > > _points
static float Distance(Vector2 value1, Vector2 value2)