6586 {
6587
6588
6589
6590
6591
6592
6593
6594
6595
6596
6597
6600 {
6601 num++;
6602 if ((double)num > Main.worldSurface)
6603 {
6604 return false;
6605 }
6606 }
6607 if (Main.tile[
X, num].type != 0 && Main.tile[
X, num].type != 2)
6608 {
6609 return false;
6610 }
6611 if (Main.tile[
X, num].wall > 0)
6612 {
6613 return false;
6614 }
6622 {
6624 {
6625 if (Main.tile[i,
j].active() && (Main.tile[
i,
j].type == 367 || Main.tile[
i,
j].type == 191))
6626 {
6627 return false;
6628 }
6629 }
6630 }
6631 num--;
6635 val2.X =
genRand.NextDouble() * 0.6 - 0.3;
6636 val2.Y =
genRand.NextDouble() * 0.5 + 0.5;
6639 {
6641 }
6644 {
6646 for (
int k =
X - (
int)
num8 * 5; (double)
k <= (
double)
X +
num8 * 5.0;
k++)
6647 {
6649 while ((
double)
num10 > (double)num -
num8 * 3.0)
6650 {
6654 {
6656 val2.X =
genRand.NextDouble() * 0.6 - 0.3;
6657 val2.Y =
genRand.NextDouble() * 0.5 + 0.5;
6658 }
6659 else
6660 {
6661 val3.X *= 0.25;
6662 val3.Y *= 0.8;
6664 {
6667 Main.tile[
k,
num10].slope(0);
6668 Main.tile[
k,
num10].type = 367;
6670 {
6672 }
6673 }
6674 }
6676 }
6677 }
6679 val2.X +=
genRand.NextDouble() * 0.2 - 0.1;
6680 val2.Y += (0.1 +
genRand.NextDouble() * 0.1) * 0.8;
6681 Utils.Clamp(
val2.X, -0.3, 0.3);
6682 Utils.Clamp(
val2.Y, 0.5, 1.0);
6683 }
6685 for (
int l =
X - (
int)
num8 * 5; (double)
l <= (
double)
X +
num8 * 5.0;
l++)
6686 {
6688 {
6689 break;
6690 }
6692 {
6693 int num13 = (int)val.Y - 20;
6695 while (tile != null && !tile.active())
6696 {
6698 tile = Main.tile[
l,
num13];
6699 }
6700 if (tile !=
null && tile.type == 367 && !Main.tile[
l,
num13 - 1].active() &&
Statue(
l,
num13 - 1, 26))
6701 {
6703 }
6704 }
6705 }
6706 return true;
6707 }
static float Clamp(float value, float min, float max)
static UnifiedRandom genRand
static bool Statue(int x, int y, byte paint)
static void SquareTileFrame(int i, int j, bool resetFrame=true)