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

◆ Framing_CheckTile()

static void Terraria.GameContent.Tile_Entities.TETeleportationPylon.Framing_CheckTile ( int callX,
int callY )
inlinestatic

Definition at line 88 of file TETeleportationPylon.cs.

89 {
90 if (WorldGen.destroyObject)
91 {
92 return;
93 }
94 int num = callX;
95 int num2 = callY;
96 Tile tileSafely = Framing.GetTileSafely(callX, callY);
97 num -= tileSafely.frameX / 18 % 3;
98 num2 -= tileSafely.frameY / 18 % 4;
99 int pylonStyleFromTile = GetPylonStyleFromTile(tileSafely);
100 bool flag = false;
101 for (int i = num; i < num + 3; i++)
102 {
103 for (int j = num2; j < num2 + 4; j++)
104 {
105 Tile tile = Main.tile[i, j];
106 if (!tile.active() || tile.type != 597)
107 {
108 flag = true;
109 }
110 }
111 }
112 if (!WorldGen.SolidTileAllowBottomSlope(num, num2 + 4) || !WorldGen.SolidTileAllowBottomSlope(num + 1, num2 + 4) || !WorldGen.SolidTileAllowBottomSlope(num + 2, num2 + 4))
113 {
114 flag = true;
115 }
116 if (!flag)
117 {
118 return;
119 }
120 Kill(num, num2);
121 int pylonItemTypeFromTileStyle = GetPylonItemTypeFromTileStyle(pylonStyleFromTile);
122 Item.NewItem(new EntitySource_TileBreak(num, num2), num * 16, num2 * 16, 48, 64, pylonItemTypeFromTileStyle);
123 WorldGen.destroyObject = true;
124 for (int k = num; k < num + 3; k++)
125 {
126 for (int l = num2; l < num2 + 4; l++)
127 {
128 if (Main.tile[k, l].active() && Main.tile[k, l].type == 597)
129 {
130 WorldGen.KillTile(k, l);
131 }
132 }
133 }
134 WorldGen.destroyObject = false;
135 }

References Terraria.Tile.active(), Terraria.WorldGen.destroyObject, Terraria.GameContent.Tile_Entities.TETeleportationPylon.GetPylonItemTypeFromTileStyle(), Terraria.GameContent.Tile_Entities.TETeleportationPylon.GetPylonStyleFromTile(), Terraria.Framing.GetTileSafely(), Terraria.GameContent.Tile_Entities.TETeleportationPylon.Kill(), Terraria.WorldGen.KillTile(), Terraria.Item.NewItem(), Terraria.WorldGen.SolidTileAllowBottomSlope(), Terraria.Main.tile, and Terraria.Tile.type.

Referenced by Terraria.WorldGen.TileFrame().